activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Timothy Bish (Closed) (JIRA)" <jira+amq...@apache.org>
Subject [jira] [Closed] (AMQNET-350) Clients using the NMS library sometimes hijacks (binds) to the port that ActiveMQ is listening to
Date Tue, 22 Nov 2011 21:00:40 GMT

     [ https://issues.apache.org/jira/browse/AMQNET-350?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Timothy Bish closed AMQNET-350.
-------------------------------

    Resolution: Cannot Reproduce

I can't reproduce this.  If you can create a test case that shows the problem please reopen
and attach.
                
> Clients using the NMS library sometimes hijacks (binds) to the port that ActiveMQ is
listening to
> -------------------------------------------------------------------------------------------------
>
>                 Key: AMQNET-350
>                 URL: https://issues.apache.org/jira/browse/AMQNET-350
>             Project: ActiveMQ .Net
>          Issue Type: Bug
>    Affects Versions: 1.5.0, 1.5.1, 1.5.2
>            Reporter: Frank Gynnild
>            Assignee: Timothy Bish
>
> If we stop ActiveMQ service first, we've sometimes seen that various clients (using the
NMS library) binds to the same port as ActiveMQ uses for listening (61616).
> This causes the ActiveMQ service to fail to start since its listening port is occupied.
> Doing a "netstat -a -b" we can see the problem:
> ---
> TCP [fe80::c591:4e66:8992:debb%11]:61616 Gelado:61616 ESTABLISHED
> TestClient.exe]
> ---
> When trying to start ActiveMQ we get this:
> ---
> 2011-11-16 10:27:38,223 | ERROR | Failed to start ActiveMQ JMS Message Broker. Reason:
java.io.IOException: Transport Connector could not be registered in JMX: Failed to bind to
server socket: tcp://0.0.0.0:61616?keepAlive=true&wireFormat.tightEncodingEnabled=false&wireFormat.cacheEnabled=false&wireFormat.maxInactivityDuration=300000
due to: java.net.SocketException: Unrecognized Windows Sockets error: 0: JVM_Bind | org.apache.activemq.broker.BrokerService
| main
> java.io.IOException: Transport Connector could not be registered in JMX: Failed to bind
to server socket: tcp://0.0.0.0:61616?keepAlive=true&wireFormat.tightEncodingEnabled=false&wireFormat.cacheEnabled=false&wireFormat.maxInactivityDuration=300000
due to: java.net.SocketException: Unrecognized Windows Sockets error: 0: JVM_Bind
> at org.apache.activemq.util.IOExceptionSupport.create(IOExceptionSupport.java:27)
> at org.apache.activemq.broker.BrokerService.registerConnectorMBean(BrokerService.java:1678)
> at org.apache.activemq.broker.BrokerService.startTransportConnector(BrokerService.java:2166)
> at org.apache.activemq.broker.BrokerService.startAllConnectors(BrokerService.java:2082)
> at org.apache.activemq.broker.BrokerService.start(BrokerService.java:516)
> ---
> When exiting the client process, the ActiveMQ service is able to start up again.
> I had a look at the source code, and I think the bug is inside the TcpTransportFactory.cs:
> {code}
> if(!String.IsNullOrEmpty(location.AbsolutePath) && !location.AbsolutePath.Equals("/"))
> 			{
> 				int index = location.AbsolutePath.IndexOf(':');
> 				try
> 				{
> 					localPort = Int16.Parse(location.AbsolutePath.Substring(index + 1));					
> 					localAddress = location.AbsolutePath.Substring(1, index - 1);
> 					Tracer.DebugFormat("Binding Socket to {0} on port: {1}", localAddress, localPort);
> 				}
> 				catch
> 				{
>             		Tracer.Warn("Invalid Port value on URI for local bind option, ignoring.");
> 				}
> 			}
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message