Description of problem: Sometimes, you may see that connectors never start if you use the WAIT_FOR_BEFORE_START property. This is because of a timing issue allowed by the concurrency of WebConnectorService.start and WebVirtualHostService.start. If the host hasn't started by the WebConnectorService.start time, it doesn't get the WAIT_FOR_BEFORE_START listener, and so we end up missing notifications on the app start up and then the connector can never start. Version-Release number of selected component (if applicable): JBossWeb 7.4 How reproducible: Somewhat difficult to reproduce the timing issue. Steps to Reproduce: 1. Use attached bz1164391.btm. Add it to your JVM options: -javaagent:/path/to/byteman/lib/byteman.jar=script:/path/to/bz1164391.btm,sys:/path/to/byteman/lib/byteman.jar 2. ./standalone.sh -Dorg.apache.catalina.connector.WAIT_FOR_BEFORE_START=/app w/ app.war and app.war.dodeploy in deployments 3. Check for the connectors not starting when /app deploys. The issue can be reproduced 100% of the time if you somehow force a a delay of a few seconds at the start of org.apache.catalina.core.StandardEngine.addChild(). Actual results: Connectors may not start with WAIT_FOR_BEFORE_START. Expected results: Connectors always start with WAIT_FOR_BEFORE_START when required apps are deployed. Additional info:
Created attachment 959199 [details] bz1164391.btm PR: https://github.com/jbossas/jboss-eap/pull/1994
Verified in EAP 6.3.3.CP.CR1