]
Rob Stryker resolved JBIDE-9650.
--------------------------------
Resolution: Done
committed to 3.3.0.m3 branch
[Regression] - Servers under 7 (6 and below) do not suspend
deployment scanner before publishing
------------------------------------------------------------------------------------------------
Key: JBIDE-9650
URL:
https://issues.jboss.org/browse/JBIDE-9650
Project: Tools (JBoss Tools)
Issue Type: Bug
Components: JBossAS/Servers
Affects Versions: 3.3.0.M3
Reporter: Rob Stryker
Assignee: Rob Stryker
Priority: Blocker
Fix For: 3.3.0.M3, 3.3.0.M4
Attachments: JBIDE-9650.patch
A critical regression has been discovered while investigating the ability to delay the
popup of the web browser until the server is finished deploying.
A commit was pushed in on July 7th, 59 days ago, reversing the logic that was used to
determine if the deployment scanner should be stopped or not. The original (and intended)
behaviour was that if the server is started, and a JMX extension is provided, to disable
the scanner during publish events.
The offending commit is here:
http://source.jboss.org/changelog/JBossTools?cs=32709
You can see that the logic was removed from one class to another.
LocalJBossBehaviorDelegate had the following code:
protected boolean shouldSuspendScanner() {
return getActualBehavior().shouldSuspendScanner() &&
ExtensionManager.getDefault().getJMXRunner() != null;
}
The code in the "actual behaviour" had the following:
if( getServer().getServerState() != IServer.STATE_STARTED)
return false;
The code in LocalJBossBehaviourDelegate was replaced with:
protected boolean shouldSuspendScanner() {
return getServer().getServerState() != IServer.STATE_STARTED
&& ExtensionManager.getDefault().getJMXRunner() != null;
}
You can see that the original code ensured that if the server state was NOT started, it
would NOT suspend JMX... ie, that the server being started is a requirement to suspend JMX
deployment scanner. In the new code, you can see that it will TRY to suspend if the server
is NOT started, and that if the server *IS* started, it *WILL NOT* try to suspend.
It is extremely obvious that no testing for this usecase was performed during the time
period around this patch.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: