RFR: 7056731: Race condition in CORBA code causes re-use of ABORTed connections
Lance Andersen - Oracle
Lance.Andersen at oracle.com
Wed Aug 15 14:03:21 UTC 2012
Hi Sean,
This looks good.
Best
Lance
On Aug 14, 2012, at 12:38 PM, Seán Coffey wrote:
> I'm looking to forward port this corba fix from 6u34 to jdk8 (and eventually port to 7u)
>
> d.macdonald at auckland.ac.nz originally reported this issue and I'll be marking the fix as contributed by him. He's already signed the OCA. There's a good description in bug report. We have a race like condition if the corba server is shut down while there are still workers/client threads in a waiting queue waiting for server. The issue arises when the purgeCalls method marks a socket state as ABORTed or CLOSE_RECVD but fails to remove that socket from the socket connectionCache. Fix is to wrap the removal of the socket in a finally block.
>
> The CorbaResponseWaitingRoomImpl changes are more focused on ensuring that the Map holding these clients is better synchronized.
>
> webrev : http://cr.openjdk.java.net/~coffeys/webrev.7056731.jdk8/ <http://cr.openjdk.java.net/%7Ecoffeys/webrev.7056731.jdk8/>
> bug report : http://bugs.sun.com/view_bug.do?bug_id=7056731
>
> Regards,
> Sean.
Lance Andersen| Principal Member of Technical Staff | +1.781.442.2037
Oracle Java Engineering
1 Network Drive
Burlington, MA 01803
Lance.Andersen at oracle.com
More information about the core-libs-dev
mailing list