-
Notifications
You must be signed in to change notification settings - Fork 33
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
portMapperTable.read(localInputStream); needs to have a configurable timeout. #129
Comments
@glassfishrobot Commented |
@glassfishrobot Commented Sandeep. |
@glassfishrobot Commented Nigel |
@glassfishrobot Commented We saw this problem couple of times and both cases were a result of a n/w outage. Around 5% of the client thread to cluster got stuck at this point show above in the logs. Sandeep. |
@glassfishrobot Commented When you got into this state could other clients connect to the same broker? If you see this again, please take a thread dump of the broker as well and keep the broker logs. This bug will be reviewed before the next major release. Unfortunately I can't be more specific at the moment. |
@glassfishrobot Commented Exactly which version of MQ? (from the broker log) Open Message Queue 4.4 When you got into this state could other clients connect to the same broker? If you see this again, please take a thread dump of the broker as well and keep the broker logs. Yes. and we saw this after the brokers were restarted. we restarted it again to see if that helps but that didn't resolve it either. |
@glassfishrobot Commented |
@glassfishrobot Commented |
@glassfishrobot Commented |
|
after a n/w outage we had a situation where the jms client was stuck at this point in PortMapperClient.java while creating a new connection.
it was stuck indefinitely.
i think we need a configurable timeout for this operation.
Full stacktrace:
daemon prio=5 Thread id=14 RUNNABLE
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:129)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
at java.io.BufferedInputStream.read(BufferedInputStream.java:237)
at com.sun.messaging.jmq.io.PortMapperTable.readLine(PortMapperTable.java:310)
at com.sun.messaging.jmq.io.PortMapperTable.read(PortMapperTable.java:266)
at com.sun.messaging.jmq.jmsclient.PortMapperClient.readBrokerPorts(PortMapperClient.java:235)
at com.sun.messaging.jmq.jmsclient.PortMapperClient.init(PortMapperClient.java:150)
at com.sun.messaging.jmq.jmsclient.PortMapperClient.(PortMapperClient.java:92)
at com.sun.messaging.jmq.jmsclient.protocol.tcp.TCPConnectionHandler.(TCPConnectionHandler.java:164)
at com.sun.messaging.jmq.jmsclient.protocol.tcp.TCPStreamHandler.openConnection(TCPStreamHandler.java:135)
at com.sun.messaging.jmq.jmsclient.ConnectionInitiator.createConnection(ConnectionInitiator.java:778)
at com.sun.messaging.jmq.jmsclient.ConnectionInitiator.createConnectionNew(ConnectionInitiator.java:254)
at com.sun.messaging.jmq.jmsclient.ConnectionInitiator.createConnection(ConnectionInitiator.java:208)
at com.sun.messaging.jmq.jmsclient.ConnectionInitiator.createConnection(ConnectionInitiator.java:158)
at com.sun.messaging.jmq.jmsclient.ProtocolHandler.init(ProtocolHandler.java:816)
at com.sun.messaging.jmq.jmsclient.ProtocolHandler.(ProtocolHandler.java:1529)
at com.sun.messaging.jmq.jmsclient.ConnectionImpl.openConnection(ConnectionImpl.java:2327)
at com.sun.messaging.jmq.jmsclient.ConnectionImpl.init(ConnectionImpl.java:1024)
at com.sun.messaging.jmq.jmsclient.ConnectionImpl.(ConnectionImpl.java:418)
at com.sun.messaging.jmq.jmsclient.UnifiedConnectionImpl.(UnifiedConnectionImpl.java:60)
at com.sun.messaging.BasicConnectionFactory.createConnection(BasicConnectionFactory.java:147)
at com.sun.messaging.BasicConnectionFactory.createConnection(BasicConnectionFactory.java:132)
Affected Versions
[4.3]
The text was updated successfully, but these errors were encountered: