tomcat-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
Subject DO NOT REPLY [Bug 46384] Due to missing synchronization, a member may disappear permanent.
Date Sun, 13 Sep 2009 18:14:44 GMT

Mark Thomas <> changed:

           What    |Removed                     |Added
  Attachment #23501|0                           |1
        is obsolete|                            |

--- Comment #5 from Mark Thomas <> 2009-09-13 19:14:42 BST ---
Created an attachment (id=24253)
 --> (
Updated patch for this issue

I found the time to take another look at this.

Whilst Filip's comment about threads locking up is correct - and Tomcat 6 does
have a fix for that - threads locking up is not at the root of this issue. At
the root of this issue is there there are two lists of cluster members. One in
McastServiceImpl.membership and one in

Whilst checkExpire() does update both lists with the sync on expiredMutex, the
receiver thread updates the McastServiceImpl.membership outside of this mutex.
That leads to the problem that the OP is describing here.

Whilst Tomcat 6 does contain a fix for this, the code bases have diverged
sufficiently that the fix would be invasive. Therefore I am proposing a patch
for Tomcat that is similar to my earlier patch but has a slightly wider sync
block based on my better understanding of this issue.

I have tested the patch and whilst I can force this issue using a debugger
without the patch, I can not force it with the patch in place.

Configure bugmail:
------- You are receiving this mail because: -------
You are the assignee for the bug.

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message