activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Li, Fan" <fa...@amazon.com>
Subject InstanceAlreadyExistsException when creating Connections without start them
Date Thu, 06 Apr 2006 02:56:42 GMT
Hi:

I am doing a test where I am creating a number of TopicConnections on different TCP port on
my machine, in particular I am using the TransportConnector URIs: "tcp://localhost:61616",
"tcp://localhost:61626", "tcp://localhost:61636" and "tcp://localhost:61646". I have started
a BrokerService with these four TransportConnectors and I have created four TCP TopicConnections
without starting any of them, as a result I am getting InstanceAlreadyExistsException from
the registerMBean() method of ManagedTransportConnection class, with the stack trace similar
to:

2006-04-05 18:35:53,474 [127.0.0.1:61616] WARN  ActiveMQConnection             - Async exception
with no exception listener: java.net.SocketException: Connection reset
java.net.SocketException: Connection reset
	at java.net.SocketInputStream.read(SocketInputStream.java:168)
	at org.apache.activemq.transport.tcp.TcpBufferedInputStream.fill(TcpBufferedInputStream.java:48)
	at org.apache.activemq.transport.tcp.TcpBufferedInputStream.read(TcpBufferedInputStream.java:55)
	at java.io.DataInputStream.readInt(DataInputStream.java:353)
	at org.apache.activemq.openwire.OpenWireFormat.unmarshal(OpenWireFormat.java:270)
	at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:135)
	at java.lang.Thread.run(Thread.java:595)
2006-04-05 18:35:53,477 [mazon.com:61616] ERROR TransportConnector             - Could not
accept connection: java.io.IOException: org.apache.activemq:BrokerName=localhost,Type=Connection,Connection=1
java.io.IOException: org.apache.activemq:BrokerName=localhost,Type=Connection,Connection=1
	at org.apache.activemq.util.IOExceptionSupport.create(IOExceptionSupport.java:36)
	at org.apache.activemq.broker.jmx.ManagedTransportConnection.registerMBean(ManagedTransportConnection.java:98)
	at org.apache.activemq.broker.jmx.ManagedTransportConnection.setConnectionId(ManagedTransportConnection.java:78)
	at org.apache.activemq.broker.jmx.ManagedTransportConnection.<init>(ManagedTransportConnection.java:57)
	at org.apache.activemq.broker.jmx.ManagedTransportConnector.createConnection(ManagedTransportConnector.java:60)
	at org.apache.activemq.broker.TransportConnector$1.onAccept(TransportConnector.java:135)
	at org.apache.activemq.transport.tcp.TcpTransportServer.run(TcpTransportServer.java:137)
	at java.lang.Thread.run(Thread.java:595)
Caused by: javax.management.InstanceAlreadyExistsException: org.apache.activemq:BrokerName=localhost,Type=Connection,Connection=1
	at com.sun.jmx.mbeanserver.RepositorySupport.addMBean(RepositorySupport.java:452)
	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.internal_addObject(DefaultMBeanServerInterceptor.java:1410)
	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject(DefaultMBeanServerInterceptor.java:936)
	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:337)
	at com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:497)
	at org.apache.activemq.broker.jmx.ManagedTransportConnection.registerMBean(ManagedTransportConnection.java:95)
	... 6 more

Is it required in ActiveMQ to start a Connection right after its creation? It seems all instances
of ManagedTransportConnector for a particular BrokerService share the same MBeanServer. When
I run debugger on the registerMBean() method that throws the exception, the objects it tries
to register with the MBeanServer appears to be different, but the name it tries to register
them under seems to be the same "org.apache.activemq:BrokerName=localhost,Connection=1,Type=Connection".
Do anyone know what might be the cause of this?

Thanks
Fan



Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message