activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Bruce Snyder (JIRA)" <j...@apache.org>
Subject [jira] Commented: (AMQ-2730) Transport failed: java.io.EOFException
Date Tue, 30 Nov 2010 05:32:13 GMT

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

Bruce Snyder commented on AMQ-2730:
-----------------------------------

@Sergey, A transport listener can be set on the ActiveMQ connection factory to monitor the
status of the failover transport from the client side, not from the broker side. Using this
method, every connection that is created via this connection factory will have the transport
listener enabled. Below is an example using a Spring XML config: 

{code:xml}
<bean class="org.apache.activemq.ActiveMQConnectionFactory">
  <property name="brokerURL" value="failover:(tcp://localhost:61616)" />
  <property name="transportListener">
    <bean class="com.mycompany.MyTransportListener" />
  </property>
</bean>
{code} 

A transport listener can also be set on the ActiveMQ connection directly, but this is usually
done programmatically. Below is an example using Java code: 

{code:java}
...
Connection conn = connectionFactory.createConnection();
conn.addTransportListener(new MyTransportListener() {
  public void onCommand(Object o) {
    System.out.println("onCommand invoked"); 
  }

  public void onException(IOException error) {
    System.out.println("onException invoked"); 
  }
});
...
{code} 

A transport listener can also be added directly to a [Transport|http://activemq.apache.org/maven/5.3.1/activemq-core/apidocs/org/apache/activemq/transport/Transport.html],
but this is only done when working directly with a [Transport|http://activemq.apache.org/maven/5.3.1/activemq-core/apidocs/org/apache/activemq/transport/Transport.html].
Below is an example of doing this using Java code: 

{code:java}
...
transport.setTransportListener(new DefaultTransportListener() {
  public void onCommand(Object o) {
    System.out.println("onCommand invoked"); 
  }

  public void onException(IOException error) {
    System.out.println("onException invoked"); 
  }
});
...
{code} 

I hope these examples help answer your questions. 

> Transport failed: java.io.EOFException
> --------------------------------------
>
>                 Key: AMQ-2730
>                 URL: https://issues.apache.org/jira/browse/AMQ-2730
>             Project: ActiveMQ
>          Issue Type: Bug
>    Affects Versions: 5.3.1
>         Environment: Red hat enterprise
>            Reporter: Dennis Klinkott
>             Fix For: 5.4.2
>
>         Attachments: TCP Dump.jpg
>
>
> We see many Exceptions of this type in the broker logs: 
> 2010-05-12 14:10:03,490 | DEBUG | Transport failed: java.io.EOFException | org.apache.activemq.broker.TransportConnection.Transport
| ActiveMQ Transport: tcp:///10.231.233.55:50809
> java.io.EOFException
>         at java.io.DataInputStream.readInt(DataInputStream.java:375)
>         at org.apache.activemq.openwire.OpenWireFormat.unmarshal(OpenWireFormat.java:269)
>         at org.apache.activemq.transport.tcp.TcpTransport.readCommand(TcpTransport.java:211)
>         at org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:203)
>         at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:186)
>         at java.lang.Thread.run(Thread.java:619)
> This exception occurs with a lot of clients that run on different machines.
> One case where we almost always see this exception is when shutting down a bridge. We
did a tcp dump on the broker and on the client machine: there a no packets lost.
> LOG ON BRIDGE:
> 2010-05-12 14:10:02,634 INFO  org.apache.activemq.broker.BrokerService - ActiveMQ Message
Broker (solr-2073bridge, ID:solr-2073-50804-
> 1273665033782-0:0) is shutting down
> 2010-05-12 14:10:02,799 INFO  org.apache.activemq.network.jms.JmsConnector - JMS Connector
Connector:0 Stopped
> 2010-05-12 14:10:02,819 INFO  org.apache.activemq.broker.BrokerService - ActiveMQ JMS
Message Broker (solr-2073bridge, ID:solr-2073-50
> 804-1273665033782-0:0) stopped
> LOG ON BROKER:
> 2010-05-12 14:10:03,490 | DEBUG | Transport failed: java.io.EOFException | org.apache.activemq.broker.TransportConnection.Transport
| ActiveMQ Transport: tcp:///10.231.233.55:50809
> java.io.EOFException
>         at java.io.DataInputStream.readInt(DataInputStream.java:375)
>         at org.apache.activemq.openwire.OpenWireFormat.unmarshal(OpenWireFormat.java:269)
>         at org.apache.activemq.transport.tcp.TcpTransport.readCommand(TcpTransport.java:211)
>         at org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:203)
>         at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:186)
>         at java.lang.Thread.run(Thread.java:619)
> 2010-05-12 14:10:03,492 | DEBUG | Stopping connection: /10.231.233.55:50809 | org.apache.activemq.broker.TransportConnection
| ActiveMQ Task
> 2010-05-12 14:10:03,492 | DEBUG | Stopping transport tcp:///10.231.233.55:50809 | org.apache.activemq.transport.tcp.TcpTransport
| ActiveMQ Task
> 2010-05-12 14:10:03,493 | DEBUG | Stopped transport: /10.231.233.55:50809 | org.apache.activemq.broker.TransportConnection
| ActiveMQ Task
> 2010-05-12 14:10:03,493 | DEBUG | Cleaning up connection resources: /10.231.233.55:50809
| org.apache.activemq.broker.TransportConnection | ActiveMQ Task
> 2010-05-12 14:10:03,493 | DEBUG | remove connection id: ID:solr-2073-50804-1273665033782-2:0
| org.apache.activemq.broker.TransportConnection | ActiveMQ Task
> 2010-05-12 14:10:03,493 | DEBUG | jms1 removing consumer: ID:solr-2073-50804-1273665033782-2:0:225:1
for destination: temp-queue://ID:solr-2073-50804-1273665033782-2:0:105 | org.apache.activemq.broker.region.AbstractRegion
| ActiveMQ Task
> 2010-05-12 14:10:03,493 | DEBUG | remove sub: QueueSubscription: consumer=ID:solr-2073-50804-1273665033782-2:0:225:1,
destinations=1, dispatched=0, delivered=0, pending=0, lastDeliveredSeqId: 0, dequeues: 0,
dispatched: 0, inflight: 0 | org.apache.activemq.broker.region.Queue | ActiveMQ Task

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message