Bugzilla – Bug 3813
race condition in container creation/shutdown
Last modified: 2005-10-14 14:15:04
You need to
before you can comment on or make changes to this bug.
ServiceContainer.createContainer can return a container that is being shut
The following sequence of events can occur:
1. In arbitrary order, from two different threads:
(with the assumption that the porperties used to create the new container match
the one that is being stopped)
createContainer: container = containers.get(properties)
createContainer: return container
That will cause a shut down container to be returned. The practical result for
my case is that GRAM will think that it started the notification listener, but
the client will never get any notifications.
One solution may be to consistently synchronize on the same object when using
the container map. Currently createContainer(), being static, synchronizes on
ServiceContainer.class, while stop and close syhchronize on the specific
Are you working with globus_4_0_branch or trunk?
The release (4.0.1).
Fixes committed to globus_4_0_branch and trunk. Thanks for finding it.