Bug 1165859 - [GSS] (6.3.z) Timing issues with WAIT_FOR_BEFORE_START can result in connectors never starting
Summary: [GSS] (6.3.z) Timing issues with WAIT_FOR_BEFORE_START can result in connecto...
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: JBoss Enterprise Application Platform 6
Classification: JBoss
Component: Web
Version: 6.3.3
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: CR1
: EAP 6.3.3
Assignee: Aaron Ogburn
QA Contact: Michael Cada
URL:
Whiteboard:
Depends On: 1164391
Blocks: eap633-payload 1166308
TreeView+ depends on / blocked
 
Reported: 2014-11-19 21:31 UTC by Aaron Ogburn
Modified: 2019-08-02 07:27 UTC (History)
3 users (show)

Fixed In Version:
Clone Of:
: 1166308 (view as bug list)
Environment:
Last Closed: 2019-08-02 07:27:05 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
bz1164391.btm (1.04 KB, text/plain)
2014-11-19 22:26 UTC, Aaron Ogburn
no flags Details

Description Aaron Ogburn 2014-11-19 21:31:47 UTC
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:

Comment 2 Radim Hatlapatka 2015-01-19 16:36:21 UTC
Verified in EAP 6.3.3.CP.CR1


Note You need to log in before you can comment on or make changes to this bug.