[ 
https://issues.apache.org/jira/browse/AMQ-7217?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17288384#comment-17288384
 ] 

Nauman Hameed commented on AMQ-7217:
------------------------------------

[~piotrciruk] : I am facing a similar issue using ActiveMQ 5.13.2. I have 2 
ActiveMQ nodes where one acts as publisher and other is subscriber. Subscriber 
is attempting to make a connection with publisher after publisher re-start but 
it is failing with error mentioned in this cases.

{code}
2021-02-16 19:31:26,837 | DEBUG | Setting up new connection id: 
AON-CUAC01-AMS1->AON-CUAC01-LON1-49164-1611665757700-28:1, address: 
vm://AON-CUAC01-AMS1#76, info: ConnectionInfo {commandId = 1, responseRequired 
= true, connectionId = 
AON-CUAC01-AMS1->AON-CUAC01-LON1-49164-1611665757700-28:1, clientId = 
Broker12Bridge_AON-CUAC01-LON1_inbound_AON-CUAC01-AMS1, clientIp = null, 
userName = amqsystem, password = *****, brokerPath = null, 
brokerMasterConnector = false, manageable = false, clientMaster = true, 
faultTolerant = false, failoverReconnect = false} | 
org.apache.activemq.broker.TransportConnection | 
triggerStartAsyncNetworkBridgeCreation: 
remoteBroker=tcp://AON-CUAC01-LON1/10.250.242.29:61616@58562, localBroker= 
vm://AON-CUAC01-AMS1#76
2021-02-16 19:31:26,837 | INFO  | Adding Connection: ConnectionInfo {commandId 
= 1, responseRequired = true, connectionId = 
AON-CUAC01-AMS1->AON-CUAC01-LON1-49164-1611665757700-28:1, clientId = 
Broker12Bridge_AON-CUAC01-LON1_inbound_AON-CUAC01-AMS1, clientIp = 
vm://AON-CUAC01-AMS1#76, userName = amqsystem, password = *****, brokerPath = 
null, brokerMasterConnector = false, manageable = false, clientMaster = true, 
faultTolerant = false, failoverReconnect = false} | 
org.apache.activemq.broker.util.LoggingBrokerPlugin | 
triggerStartAsyncNetworkBridgeCreation: 
remoteBroker=tcp://AON-CUAC01-LON1/10.250.242.29:61616@58562, localBroker= 
vm://AON-CUAC01-AMS1#76
2021-02-16 19:31:26,838 | WARN  | Failed to add Connection 
AON-CUAC01-AMS1->AON-CUAC01-LON1-49164-1611665757700-28:1 due to 
javax.jms.InvalidClientIDException: Broker: AON-CUAC01-AMS1 - Client: 
Broker12Bridge_AON-CUAC01-LON1_inbound_AON-CUAC01-AMS1 already connected from 
vm://AON-CUAC01-AMS1#60 | org.apache.activemq.broker.TransportConnection | 
triggerStartAsyncNetworkBridgeCreation: 
remoteBroker=tcp://AON-CUAC01-LON1/10.250.242.29:61616@58562, localBroker= 
vm://AON-CUAC01-AMS1#76
2021-02-16 19:31:26,838 | DEBUG | Error occured while processing sync command: 
ConnectionInfo {commandId = 1, responseRequired = true, connectionId = 
AON-CUAC01-AMS1->AON-CUAC01-LON1-49164-1611665757700-28:1, clientId = 
Broker12Bridge_AON-CUAC01-LON1_inbound_AON-CUAC01-AMS1, clientIp = 
vm://AON-CUAC01-AMS1#76, userName = amqsystem, password = *****, brokerPath = 
null, brokerMasterConnector = false, manageable = false, clientMaster = true, 
faultTolerant = false, failoverReconnect = false}, exception: 
javax.jms.InvalidClientIDException: Broker: AON-CUAC01-AMS1 - Client: 
Broker12Bridge_AON-CUAC01-LON1_inbound_AON-CUAC01-AMS1 already connected from 
vm://AON-CUAC01-AMS1#60 | 
org.apache.activemq.broker.TransportConnection.Service | 
triggerStartAsyncNetworkBridgeCreation: 
remoteBroker=tcp://AON-CUAC01-LON1/10.250.242.29:61616@58562, localBroker= 
vm://AON-CUAC01-AMS1#76
javax.jms.InvalidClientIDException: Broker: AON-CUAC01-AMS1 - Client: 
Broker12Bridge_AON-CUAC01-LON1_inbound_AON-CUAC01-AMS1 already connected from 
vm://AON-CUAC01-AMS1#60
        at 
org.apache.activemq.broker.region.RegionBroker.addConnection(RegionBroker.java:255)
        at 
org.apache.activemq.broker.BrokerFilter.addConnection(BrokerFilter.java:98)
        at 
org.apache.activemq.advisory.AdvisoryBroker.addConnection(AdvisoryBroker.java:116)
        at 
org.apache.activemq.broker.BrokerFilter.addConnection(BrokerFilter.java:98)
        at 
org.apache.activemq.broker.BrokerFilter.addConnection(BrokerFilter.java:98)
        at 
org.apache.activemq.broker.BrokerFilter.addConnection(BrokerFilter.java:98)
        at 
org.apache.activemq.broker.MutableBrokerFilter.addConnection(MutableBrokerFilter.java:103)
        at 
org.apache.activemq.broker.util.LoggingBrokerPlugin.addConnection(LoggingBrokerPlugin.java:178)
        at 
org.apache.activemq.broker.BrokerFilter.addConnection(BrokerFilter.java:98)
        at 
org.apache.activemq.security.SimpleAuthenticationBroker.addConnection(SimpleAuthenticationBroker.java:77)
        at 
org.apache.activemq.broker.MutableBrokerFilter.addConnection(MutableBrokerFilter.java:103)
        at 
org.apache.activemq.broker.TransportConnection.processAddConnection(TransportConnection.java:817)
        at 
org.apache.activemq.command.ConnectionInfo.visit(ConnectionInfo.java:139)
        at 
org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:338)
        at 
org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:188)
        at 
org.apache.activemq.transport.ResponseCorrelator.onCommand(ResponseCorrelator.java:116)
        at 
org.apache.activemq.transport.MutexTransport.onCommand(MutexTransport.java:50)
        at 
org.apache.activemq.transport.vm.VMTransport.doDispatch(VMTransport.java:162)
        at 
org.apache.activemq.transport.vm.VMTransport.dispatch(VMTransport.java:154)
        at 
org.apache.activemq.transport.vm.VMTransport.oneway(VMTransport.java:131)
        at 
org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:68)
        at 
org.apache.activemq.transport.ResponseCorrelator.asyncRequest(ResponseCorrelator.java:81)
        at 
org.apache.activemq.transport.ResponseCorrelator.request(ResponseCorrelator.java:86)
        at 
org.apache.activemq.network.DemandForwardingBridgeSupport.startLocalBridge(DemandForwardingBridgeSupport.java:468)
        at 
org.apache.activemq.network.DemandForwardingBridgeSupport.doStartLocalAndRemoteBridges(DemandForwardingBridgeSupport.java:421)
        at 
org.apache.activemq.network.DemandForwardingBridgeSupport.access$500(DemandForwardingBridgeSupport.java:105)
        at 
org.apache.activemq.network.DemandForwardingBridgeSupport$5.run(DemandForwardingBridgeSupport.java:336)
        at java.lang.Thread.run(Thread.java:748)
2021-02-16 19:31:26,838 | INFO  | Network connection between 
vm://AON-CUAC01-AMS1#76 and tcp://AON-CUAC01-LON1/10.250.242.29:61616@58562 
shutdown due to a local error: javax.jms.InvalidClientIDException: Broker: 
AON-CUAC01-AMS1 - Client: 
Broker12Bridge_AON-CUAC01-LON1_inbound_AON-CUAC01-AMS1 already connected from 
vm://AON-CUAC01-AMS1#60 | 
org.apache.activemq.network.DemandForwardingBridgeSupport | 
triggerStartAsyncNetworkBridgeCreation: 
remoteBroker=tcp://AON-CUAC01-LON1/10.250.242.29:61616@58562, localBroker= 
vm://AON-CUAC01-AMS1#76
2021-02-16 19:31:26,838 | DEBUG | The local Exception was: 
javax.jms.InvalidClientIDException: Broker: AON-CUAC01-AMS1 - Client: 
Broker12Bridge_AON-CUAC01-LON1_inbound_AON-CUAC01-AMS1 already connected from 
vm://AON-CUAC01-AMS1#60 | 
org.apache.activemq.network.DemandForwardingBridgeSupport | 
triggerStartAsyncNetworkBridgeCreation: 
remoteBroker=tcp://AON-CUAC01-LON1/10.250.242.29:61616@58562, localBroker= 
vm://AON-CUAC01-AMS1#76
javax.jms.InvalidClientIDException: Broker: AON-CUAC01-AMS1 - Client: 
Broker12Bridge_AON-CUAC01-LON1_inbound_AON-CUAC01-AMS1 already connected from 
vm://AON-CUAC01-AMS1#60
        at 
org.apache.activemq.broker.region.RegionBroker.addConnection(RegionBroker.java:255)
        at 
org.apache.activemq.broker.BrokerFilter.addConnection(BrokerFilter.java:98)
        at 
org.apache.activemq.advisory.AdvisoryBroker.addConnection(AdvisoryBroker.java:116)
        at 
org.apache.activemq.broker.BrokerFilter.addConnection(BrokerFilter.java:98)
        at 
org.apache.activemq.broker.BrokerFilter.addConnection(BrokerFilter.java:98)
        at 
org.apache.activemq.broker.BrokerFilter.addConnection(BrokerFilter.java:98)
        at 
org.apache.activemq.broker.MutableBrokerFilter.addConnection(MutableBrokerFilter.java:103)
        at 
org.apache.activemq.broker.util.LoggingBrokerPlugin.addConnection(LoggingBrokerPlugin.java:178)
        at 
org.apache.activemq.broker.BrokerFilter.addConnection(BrokerFilter.java:98)
        at 
org.apache.activemq.security.SimpleAuthenticationBroker.addConnection(SimpleAuthenticationBroker.java:77)
        at 
org.apache.activemq.broker.MutableBrokerFilter.addConnection(MutableBrokerFilter.java:103)
        at 
org.apache.activemq.broker.TransportConnection.processAddConnection(TransportConnection.java:817)
        at 
org.apache.activemq.command.ConnectionInfo.visit(ConnectionInfo.java:139)
        at 
org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:338)
        at 
org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:188)
        at 
org.apache.activemq.transport.ResponseCorrelator.onCommand(ResponseCorrelator.java:116)
        at 
org.apache.activemq.transport.MutexTransport.onCommand(MutexTransport.java:50)
        at 
org.apache.activemq.transport.vm.VMTransport.doDispatch(VMTransport.java:162)
        at 
org.apache.activemq.transport.vm.VMTransport.dispatch(VMTransport.java:154)
        at 
org.apache.activemq.transport.vm.VMTransport.oneway(VMTransport.java:131)
        at 
org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:68)
        at 
org.apache.activemq.transport.ResponseCorrelator.asyncRequest(ResponseCorrelator.java:81)
        at 
org.apache.activemq.transport.ResponseCorrelator.request(ResponseCorrelator.java:86)
        at 
org.apache.activemq.network.DemandForwardingBridgeSupport.startLocalBridge(DemandForwardingBridgeSupport.java:468)
        at 
org.apache.activemq.network.DemandForwardingBridgeSupport.doStartLocalAndRemoteBridges(DemandForwardingBridgeSupport.java:421)
        at 
org.apache.activemq.network.DemandForwardingBridgeSupport.access$500(DemandForwardingBridgeSupport.java:105)
        at 
org.apache.activemq.network.DemandForwardingBridgeSupport$5.run(DemandForwardingBridgeSupport.java:336)
        at java.lang.Thread.run(Thread.java:748)
2021-02-16 19:31:26,838 | DEBUG |  stopping AON-CUAC01-AMS1 bridge to 
AON-CUAC01-LON1 | org.apache.activemq.network.DemandForwardingBridgeSupport | 
ActiveMQ BrokerService[AON-CUAC01-AMS1] Task-112
2021-02-16 19:31:26,839 | DEBUG | Failure occurred soon after the discovery 
event was generated.  It will be classified as a connection failure: 
[tcp://AON-CUAC01-LON1:61616, failed:true, connectionFailures:2] | 
org.apache.activemq.transport.discovery.simple.SimpleDiscoveryAgent | Simple 
Discovery Agent-20
2021-02-16 19:31:26,839 | DEBUG | Waiting 4000 ms before attempting to 
reconnect. | 
org.apache.activemq.transport.discovery.simple.SimpleDiscoveryAgent | Simple 
Discovery Agent-20
2021-02-16 19:31:26,839 | DEBUG | Stopping connection: vm://AON-CUAC01-AMS1#76 
| org.apache.activemq.broker.TransportConnection | ActiveMQ 
BrokerService[AON-CUAC01-AMS1] Task-114
2021-02-16 19:31:26,839 | DEBUG | Stopped transport: vm://AON-CUAC01-AMS1#76 | 
org.apache.activemq.broker.TransportConnection | ActiveMQ 
BrokerService[AON-CUAC01-AMS1] Task-114
2021-02-16 19:31:26,839 | DEBUG | Stopping transport 
tcp://AON-CUAC01-LON1/10.250.242.29:61616@58562 | 
org.apache.activemq.transport.tcp.TcpTransport | ActiveMQ 
BrokerService[AON-CUAC01-AMS1] Task-112
2021-02-16 19:31:26,840 | DEBUG | Connection Stopped: vm://AON-CUAC01-AMS1#76 | 
org.apache.activemq.broker.TransportConnection | ActiveMQ 
BrokerService[AON-CUAC01-AMS1] Task-114
2021-02-16 19:31:26,840 | DEBUG | Initialized TaskRunnerFactory[ActiveMQ Task] 
using ExecutorService: null | org.apache.activemq.thread.TaskRunnerFactory | 
ActiveMQ BrokerService[AON-CUAC01-AMS1] Task-112
2021-02-16 19:31:26,840 | DEBUG | Closed socket 
Socket[addr=AON-CUAC01-LON1/10.250.242.29,port=61616,localport=58562] | 
org.apache.activemq.transport.tcp.TcpTransport | ActiveMQ Task-1
2021-02-16 19:31:26,840 | DEBUG | Shutting down VM connectors for broker: 
AON-CUAC01-AMS1 | org.apache.activemq.transport.vm.VMTransportFactory | 
ActiveMQ BrokerService[AON-CUAC01-AMS1] Task-112
2021-02-16 19:31:26,841 | DEBUG | Stopping connection: vm://AON-CUAC01-AMS1#78 
| org.apache.activemq.broker.TransportConnection | ActiveMQ 
BrokerService[AON-CUAC01-AMS1] Task-115
2021-02-16 19:31:26,841 | DEBUG | Stopped transport: vm://AON-CUAC01-AMS1#78 | 
org.apache.activemq.broker.TransportConnection | ActiveMQ 
BrokerService[AON-CUAC01-AMS1] Task-115
2021-02-16 19:31:26,841 | DEBUG | Connection Stopped: vm://AON-CUAC01-AMS1#78 | 
org.apache.activemq.broker.TransportConnection | ActiveMQ 
BrokerService[AON-CUAC01-AMS1] Task-115
2021-02-16 19:31:26,841 | INFO  | Connector vm://AON-CUAC01-AMS1 stopped | 
org.apache.activemq.broker.TransportConnector | ActiveMQ 
BrokerService[AON-CUAC01-AMS1] Task-112
2021-02-16 19:31:26,841 | INFO  | AON-CUAC01-AMS1 bridge to AON-CUAC01-LON1 
stopped | org.apache.activemq.network.DemandForwardingBridgeSupport | ActiveMQ 
BrokerService[AON-CUAC01-AMS1] Task-112
{code}

I am not sure if this is exactly same issue as yours. Can you please comment?

> Already connected client makes it impossible to reuse client id after 
> disconnection
> -----------------------------------------------------------------------------------
>
>                 Key: AMQ-7217
>                 URL: https://issues.apache.org/jira/browse/AMQ-7217
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 5.14.4, 5.15.9
>            Reporter: Piotr
>            Priority: Major
>
> Embedded single-node broker
> Single client {{A}} with id={{CLIENT_ID_1}} connects using failover transport.
> Another client {{B}} with id={{CLIENT_ID_1}} tries to connect.
> It receives the following errors, but keeps running:
> {noformat}
> javax.jms.InvalidClientIDException: Broker: MyBroker - Client: CLIENT_ID_1 
> already connected from tcp://127.0.0.1:60576
>         at 
> org.apache.activemq.broker.region.RegionBroker.addConnection(RegionBroker.java:256)
>         at 
> org.apache.activemq.broker.jmx.ManagedRegionBroker.addConnection(ManagedRegionBroker.java:227)
>         at 
> org.apache.activemq.broker.BrokerFilter.addConnection(BrokerFilter.java:98)
>         at 
> org.apache.activemq.advisory.AdvisoryBroker.addConnection(AdvisoryBroker.java:116)
>         at 
> org.apache.activemq.broker.BrokerFilter.addConnection(BrokerFilter.java:98)
>         at 
> org.apache.activemq.broker.BrokerFilter.addConnection(BrokerFilter.java:98)
>         at 
> org.apache.activemq.broker.BrokerFilter.addConnection(BrokerFilter.java:98)
>         at 
> org.apache.activemq.broker.MutableBrokerFilter.addConnection(MutableBrokerFilter.java:103)
>         at 
> org.apache.activemq.broker.TransportConnection.processAddConnection(TransportConnection.java:852)
>         at 
> org.apache.activemq.broker.jmx.ManagedTransportConnection.processAddConnection(ManagedTransportConnection.java:77)
>         at 
> org.apache.activemq.command.ConnectionInfo.visit(ConnectionInfo.java:139)
>         at 
> org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:336)
>         at 
> org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:200)
>         at 
> org.apache.activemq.transport.MutexTransport.onCommand(MutexTransport.java:50)
>         at 
> org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:125)
>         at 
> org.apache.activemq.transport.AbstractInactivityMonitor.onCommand(AbstractInactivityMonitor.java:301)
>         at 
> org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:83)
>         at 
> org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:233)
>         at 
> org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:215)
>         at java.lang.Thread.run(Thread.java:745)
> 16:44:41.744 [ActiveMQ Transport: tcp://localhost/127.0.0.1:1234@60584] DEBUG 
> org.apache.activemq.util.ThreadPoolUtils - Shutdown of ExecutorService: 
> java.util.concurrent.ThreadPoolExecutor@44f132b9[Terminated, pool size = 0, 
> active threads = 0, queued tasks = 0, completed tasks = 0] is shutdown: true 
> and terminated: true took: 0.000 seconds.
> 16:44:41.745 [ActiveMQ Transport: tcp://localhost/127.0.0.1:1234@60584] DEBUG 
> org.apache.activemq.transport.tcp.TcpTransport - Stopping transport 
> tcp://localhost/127.0.0.1:1234@60584
> 16:44:41.745 [ActiveMQ Transport: tcp://localhost/127.0.0.1:1234@60584] DEBUG 
> org.apache.activemq.thread.TaskRunnerFactory - Initialized 
> TaskRunnerFactory[ActiveMQ Task] using ExecutorService: 
> java.util.concurrent.ThreadPoolExecutor@5b83c04c[Running, pool size = 0, 
> active threads = 0, queued tasks = 0, completed tasks = 0]
> 16:44:41.746 [ActiveMQ Task-1] DEBUG 
> org.apache.activemq.transport.tcp.TcpTransport - Closed socket 
> Socket[addr=localhost/127.0.0.1,port=1234,localport=60584]
> 16:44:41.746 [ActiveMQ Transport: tcp://localhost/127.0.0.1:1234@60584] DEBUG 
> org.apache.activemq.util.ThreadPoolUtils - Forcing shutdown of 
> ExecutorService: java.util.concurrent.ThreadPoolExecutor@5b83c04c[Running, 
> pool size = 1, active threads = 0, queued tasks = 0, completed tasks = 1]
> 16:44:41.746 [ActiveMQ Transport: tcp://localhost/127.0.0.1:1234@60584] WARN 
> org.apache.activemq.transport.failover.FailoverTransport - Transport 
> (tcp://localhost:1234) failed , attempting to automatically reconnect: {}
> java.io.EOFException: null
>         at java.base/java.io.DataInputStream.readInt(DataInputStream.java:397)
>         at 
> org.apache.activemq.openwire.OpenWireFormat.unmarshal(OpenWireFormat.java:268)
>         at 
> org.apache.activemq.transport.tcp.TcpTransport.readCommand(TcpTransport.java:240)
>         at 
> org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:232)
>         at 
> org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:215)
>         at java.base/java.lang.Thread.run(Thread.java:834)
> {noformat}
> Client A disconnects.
>  
> Client B still receives the same errors.
> Client B disconnects.
> No client is able to connect using id={{CLIENT_ID_1}}
> Problem can be observed in version 5.14.4 and later but not in 5.4.13 and 
> earlier. 
> Probably caused by: https://issues.apache.org/jira/browse/AMQ-6561
> When I run broker in debug mode and force exit from the following call from 
> TransportConnection.processAddConnection(ConnectionInfo info):
> {code}
> this.delayedStop(2000, "Failed with SecurityException: " + 
> var8.getLocalizedMessage(), var8);
> {code}
> the issue cannot be observed.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to