[esb-issues] [JBoss JIRA] Created: (JBESB-638) Transient registry errors caused by jUDDI race condition

Kevin Conner (JIRA) jira-events at lists.jboss.org
Tue Jun 19 08:50:29 EDT 2007


Transient registry errors caused by jUDDI race condition
--------------------------------------------------------

                 Key: JBESB-638
                 URL: http://jira.jboss.com/jira/browse/JBESB-638
             Project: JBoss ESB
          Issue Type: Bug
      Security Level: Public (Everyone can see)
          Components: Registry and Repository
            Reporter: Kevin Conner
         Assigned To: Kurt Stam
             Fix For: 4.2


Kurt, can you raise the following with jUDDI and have it fixed?

Thanks.

There is a race condition in the jUDDI codebase which causes transient registry failures.

The symptom of the race condition is the following error message
  E_busy (10400) The request cannot be processed at the current time. The Registry is currently unavailable.

The class containing the race condition is org.apache.juddi.registry.local.Registry

Every call to Registry.getRegistry() results in the recreation and initialisation of a global variable (registry).  As the assignment of the global variable is made *before* the initialisation method is called there exists a window of opportunity whereby a caller can obtain a reference to an uninitialised registry.  The consequence of this is that calls to RegistryEngine.isAvailable() can return false.

I'm not sure why the RegistryEngine is being recreated on every call but the current code is unsafe (even if ignoring multiprocessor memory models).  There should be not be a global reference to the registry if it is a requirement  to recreate it on every invocation.  If it is not a requirement then the initialisation should really be occurring within a static block.


-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the esb-issues mailing list