OBJECT_NOT_EXIST during recovery (Phorum)
marklittle Mar 14, 2006 8:02 AMAuthor: burdeasa2
Date: 09-28-04 20:23
I already had JBoss 3.2.6 RC1 installed on my PC and working with our internal resource adapter. I added a sleep to our resource adapter code at the point where the Application Server should have logged that the transaction is prepared, but where we have not sent out the commit order to the remote system yet. I attempted two-phase commit transactions and killed the JBoss process. Then I restarted JBoss to test recovery.
Since The default JBoss TM does not do logging, this test failed.
So I installed Arjuna+JBoss 1.1.2 and repeated the same test.
Now when I restart JBoss, I see the following in the server.log:
2004-09-28 13:47:51,573 WARN [jacorb.poa] POA RootPOA rid: 2 opname: _is_a _invoke: object key not previously generated!
2004-09-28 13:47:51,573 DEBUG [org.jboss.mx.modelmbean.ModelMBeanInvoker] No persistence-manager descriptor found, null persistence will be used
2004-09-28 13:47:51,573 DEBUG [org.jboss.jmx.adaptor.snmp.agent.SnmpAgentService] It's for me: javax.management.MBeanServerNotification: notificationType=JMX.mbean.registered source=JMImplementation:type=MBeanServerDelegate seq-no=183 time=1096393671573 message=null objectName=jboss.j2ee:jndiName=clustering/HTTPSession,plugin=pool,service=EJB userData=null, handback:2147483647
2004-09-28 13:47:51,573 ERROR [jacorb] org.omg.CORBA.OBJECT_NOT_EXIST: unknown oid vmcid: 0x0 minor code: 0 completed: No
at org.jacorb.orb.giop.ServerRequestListener.deliverRequest(Unknown Source)
at org.jacorb.orb.giop.ServerRequestListener.requestReceived(Unknown Source)
at org.jacorb.orb.giop.GIOPConnection.receiveMessages(Unknown Source)
at org.jacorb.orb.giop.MessageReceptor.doWork(Unknown Source)
at org.jacorb.util.threadpool.ConsumerTie.run(Unknown Source)
at java.lang.Thread.run(Thread.java:536)
2004-09-28 13:47:51,573 DEBUG [org.jboss.system.ServiceController] Creating service jboss.j2ee:jndiName=clustering/HTTPSession,plugin=pool,service=EJB
2004-09-28 13:47:51,573 DEBUG [org.jboss.ejb.plugins.EntityInstancePool] Creating jboss.j2ee:jndiName=clustering/HTTPSession,plugin=pool,service=EJB
2004-09-28 13:47:51,573 DEBUG [org.jboss.ejb.plugins.EntityInstancePool] Created jboss.j2ee:jndiName=clustering/HTTPSession,plugin=pool,service=EJB
2004-09-28 13:47:51,573 DEBUG [org.jboss.management.j2ee.LocalJBossServerDomain] handleNotification: javax.management.Notification[source=jboss.system:service=ServiceController,type= org.jboss.system.ServiceMBean.create,sequenceNumber=127,timeStamp=1096393671573,message=null,userData=jboss.j2ee:jndiName=clustering/HTTPSession,plugin=pool,service=EJB]
2004-09-28 13:47:51,573 DEBUG [org.jboss.management.j2ee.factory.DefaultManagedObjectFactoryMap] Failed to find factory for event: javax.management.Notification[source=jboss.system:service=ServiceController,type= org.jboss.system.ServiceMBean.create,sequenceNumber=127,timeStamp=1096393671573,message=null,userData=jboss.j2ee:jndiName=clustering/HTTPSession,plugin=pool,service=EJB]
2004-09-28 13:47:51,573 DEBUG [org.jboss.system.ServiceController] Creating dependent components for: jboss.j2ee:jndiName=clustering/HTTPSession,plugin=pool,service=EJB dependents are: []
2004-09-28 13:47:51,589 DEBUG [org.jboss.proxy.ejb.ProxyFactory] Proxy Factory for clustering/HTTPSession initialized
2004-09-28 13:47:51,620 WARN [jacorb.poa] POA RootPOA rid: 0 opname: getCurrentStatus _invoke: object key not previously generated!
2004-09-28 13:47:51,620 DEBUG [org.jboss.mx.modelmbean.ModelMBeanInvoker] No persistence-manager descriptor found, null persistence will be used
2004-09-28 13:47:51,620 ERROR [jacorb] org.omg.CORBA.OBJECT_NOT_EXIST: unknown oid vmcid: 0x0 minor code: 0 completed: No
at org.jacorb.orb.giop.ServerRequestListener.deliverRequest(Unknown Source)
at org.jacorb.orb.giop.ServerRequestListener.requestReceived(Unknown Source)
at org.jacorb.orb.giop.GIOPConnection.receiveMessages(Unknown Source)
at org.jacorb.orb.giop.MessageReceptor.doWork(Unknown Source)
at org.jacorb.util.threadpool.ConsumerTie.run(Unknown Source)
at java.lang.Thread.run(Thread.java:536)
Is there something I should be configuring? I?m just using the default configuration setup by the installer.
I looked through the documentation but did not see anything that solved my problem.
In the Failure Recovery Guide, I saw the following but I don?t know if this is something I need to configure:
Lifespan policy - specifies the lifespan of the objects implemented in the POA. The
lifespan policy can have the following values:
* TRANSIENT (Default) Objects implemented in the POA cannot outlive the
process in which they are first created. Once the POA is deactivated, an
OBJECT_NOT_EXIST exception occurs when attempting to use any object
references generated by the POA.
*PERSISTENT Objects implemented in the POA can outlive the process in which
they are first created.
I have attached the complete server.log if that helps.