| Summary | ORB.init() throws org.omg.CORBA.INITIALIZE when invoked concurrently within domain that uses configuration repository. |
|---|---|
| Article Number | 14671 |
| Environment | Orbix 6.x All Supported Operating Systems Orbix Java Runtime |
| Question/Problem Description | ORB.init() throws org.omg.CORBA.INITIALIZE when invoked concurrently within domain that uses configuration repository. org.omg.CORBA.INITIALIZE: Failed to create boot ORB. org.omg.CORBA.NO_PERMISSION: orb with this id already exists |
| Clarifying Information | |
| Error Message | |
| Defect/Enhancement Number | |
| Cause | ORB.init(String apps,Properties props) will create a “java-art-boot-orb” used to communicate with the configuration repository before instantiating the ORB that is returned to the application. Invoking ORB.init(String apps,Properties props) concurrently in two separate thread creates two boot orbs with the same ORB id “java-art-boot-orb”, which results in the exception "org.omg.CORBA.NO_PERMISSION: orb with this id already exists" |
| Resolution | Apply Orbix 6.3.4 patch_010 to resolve this issue. If upgrading is not an option, synchronize access to ORB.init(String apps,Properties props) within the application code. |
| Workaround | |
| Notes | |
| Attachment |
| Created date: | 06 September 2011 |
|---|---|
| Last Modified: | 13 February 2013 |
| Last Published: | 23 June 2012 |
| First Published date: | 10 September 2011 |
#KnowledgeDocs
#Orbix