Java (org.apache.qpid.client) XAResourceImpl always returns false for isSameRM ------------------------------------------------------------------------------
Key: QPID-3263 URL: https://issues.apache.org/jira/browse/QPID-3263 Project: Qpid Issue Type: Bug Components: Java Client Affects Versions: 0.11 Environment: All OS/hardware platforms as well as current brokers. Reporter: Weston M. Price Fix For: 0.11 The isSameRM method of org.apache.qpid.client.XAResourceImpl always returns false. The javadoc for isSameRM says .. "This method is called to determine if the resource manager instance represented by the target object is the same as the resource manager instance represented by the parameter xares ." which means isSameRM has to return true when invoked with identical objects (Java identity). Clearly, these two XA resources are backed by the same resource manager. //xaResource1 == xaResource2 XAResource xaResource1 = jmsXAResource; XAResource xaResource2 = jmsXAResource; // xaResource1.isSameRM(xaResource2) should be true Because the Qpid implementation always returns false, it affects resource enlistment/delistment. The source code (lines 213 - 217) of org.apache.qpid.client.XAResourceImpl suggests that this method has not been fully completed. public boolean isSameRM(XAResource xaResource) throws XAException { // TODO : get the server identity of xaResource and compare it with our own one return false; } -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira --------------------------------------------------------------------- Apache Qpid - AMQP Messaging Implementation Project: http://qpid.apache.org Use/Interact: mailto:dev-subscr...@qpid.apache.org