activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From <Sheetal.Kulka...@sungard.com>
Subject RE: [jira] Commented: (AMQ-2256) Unnecessary TcpTransportFactory NumberFormatException and warning
Date Thu, 06 Aug 2009 08:43:33 GMT
ActiveMQ on Linux gives error something like this on ActiveMQ console:

DEBUG log                            - EXCEPTION
java.io.IOException: Connection reset by peer
        at sun.nio.ch.FileDispatcher.read0(Native Method)
        at sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:21)
        at sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:233)
        at sun.nio.ch.IOUtil.read(IOUtil.java:206)
        at sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:207)
        at org.mortbay.io.nio.ChannelEndPoint.fill(ChannelEndPoint.java:128)
        at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:282)
        at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:205)
        at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
        at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395)
        at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450)
DEBUG log                            - EOF
DEBUG WireFormatNegotiator           - Sending: WireFormatInfo { version=3, properties={TightEncodingEnabled=true,
CacheSize=1024, TcpNoDelayEnabled=true, SizePrefixDisabled=false, StackTraceEnabled=true,
MaxInactivityDurationInitalDelay=10000, MaxInactivityDuration=30000, CacheEnabled=true}, magic=[A,c,t,i,v,e,M,Q]}
DEBUG Connection:6                   - SENDING: WireFormatInfo { version=3, properties={TightEncodingEnabled=true,
CacheSize=1024, TcpNoDelayEnabled=true, SizePrefixDisabled=false, StackTraceEnabled=true,
MaxInactivityDurationInitalDelay=10000, MaxInactivityDuration=30000, CacheEnabled=true}, magic=[A,c,t,i,v,e,M,Q]}
DEBUG TransportConnection            - stop() called in the middle of start(). Delaying...
DEBUG TransportConnection            - Calling the delayed stop()
DEBUG Connection:6                   - RECEIVED Exception: 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:50)
        at org.apache.activemq.transport.tcp.TcpBufferedInputStream.read(TcpBufferedInputStream.java:58)
        at java.io.DataInputStream.readInt(DataInputStream.java:353)
        at org.apache.activemq.openwire.OpenWireFormat.unmarshal(OpenWireFormat.java:269)
        at org.apache.activemq.transport.tcp.TcpTransport.readCommand(TcpTransport.java:210)
        at org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:202)
        at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:185)
        at java.lang.Thread.run(Thread.java:595)
DEBUG TransportConnection            - Stopping connection: /10.254.81.51:36717
DEBUG TcpTransport                   - Stopping transport tcp:///10.254.81.51:36717
DEBUG TransportConnection            - Stopped transport: /10.254.81.51:36717
DEBUG TransportConnection            - Connection Stopped: /10.254.81.51:36717
ERROR TransportConnector             - Could not accept connection : Connection reset
DEBUG TransportConnector             - Reason: Connection reset
java.net.SocketException: Connection reset
        at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:96)
        at java.net.SocketOutputStream.write(SocketOutputStream.java:136)
        at org.apache.activemq.transport.tcp.TcpBufferedOutputStream.flush(TcpBufferedOutputStream.java:115)
        at java.io.DataOutputStream.flush(DataOutputStream.java:106)
        at org.apache.activemq.transport.tcp.TcpTransport.oneway(TcpTransport.java:167)
        at org.apache.activemq.transport.TransportLogger.oneway(TransportLogger.java:104)
        at org.apache.activemq.transport.InactivityMonitor.oneway(InactivityMonitor.java:233)
        at org.apache.activemq.transport.WireFormatNegotiator.sendWireFormat(WireFormatNegotiator.java:160)
        at org.apache.activemq.transport.WireFormatNegotiator.start(WireFormatNegotiator.java:79)
        at org.apache.activemq.transport.TransportFilter.start(TransportFilter.java:57)
        at org.apache.activemq.broker.TransportConnection.start(TransportConnection.java:873)
        at org.apache.activemq.broker.TransportConnector$1$1.run(TransportConnector.java:213)
DEBUG AMQPersistenceAdapter          - dataFilesInProgress.values: (0) []
DEBUG AMQPersistenceAdapter          - lastDataFile: 1
DEBUG AsyncDataManager               - lastFileId=0, purgeList: (0) []
DEBUG AMQPersistenceAdapter          - Checkpoint started.
DEBUG AMQPersistenceAdapter          - Checkpoint done.
DEBUG AMQPersistenceAdapter          - dataFilesInProgress.values: (0) []
DEBUG AMQPersistenceAdapter          - lastDataFile: 1
DEBUG AsyncDataManager               - lastFileId=0, purgeList: (0) []
DEBUG AMQPersistenceAdapter          - Checkpoint started.
DEBUG AMQPersistenceAdapter          - Checkpoint done.
DEBUG AMQPersistenceAdapter          - Checkpoint started.
DEBUG AMQPersistenceAdapter          - Checkpoint done.
DEBUG AMQPersistenceAdapter          - dataFilesInProgress.values: (0) []


Can anyone comment on this?
Why activeMQ is trying to send messages and to whom does it send?


P Think before you print
-----Original Message-----
From: Scott Lewis (JIRA) [mailto:jira@apache.org] 
Sent: Thursday, August 06, 2009 4:11 AM
To: dev@activemq.apache.org
Subject: [jira] Commented: (AMQ-2256) Unnecessary TcpTransportFactory NumberFormatException
and warning


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

Scott Lewis commented on AMQ-2256:
----------------------------------

Is there any way to shut off the presentation of this NumberFormatException in 5.2.0.  Short
of having it fixed, it would be very nice to at least prevent the spurious NumberFormatException
and stack trace from appearing when using the tcp protocol in this manner

> Unnecessary TcpTransportFactory NumberFormatException and warning
> -----------------------------------------------------------------
>
>                 Key: AMQ-2256
>                 URL: https://issues.apache.org/activemq/browse/AMQ-2256
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Transport
>    Affects Versions: 5.2.0
>         Environment: Windows XP
>            Reporter: Scott Lewis
>
> When executing TcpTransportFactory.createTransport(URI location, WireFormat wf) the following
warning is incorrectly generated:
> WARNING: path isn't a valid local location for TcpTransport to use
> java.lang.NumberFormatException: For input string: "/exampleTopic"
> 	at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
> 	at java.lang.Integer.parseInt(Integer.java:447)
> 	at java.lang.Integer.parseInt(Integer.java:497)
> 	at org.apache.activemq.transport.tcp.TcpTransportFactory.createTransport(TcpTransportFactory.java:125)
> 	at org.apache.activemq.transport.TransportFactory.doConnect(TransportFactory.java:141)
> 	at org.apache.activemq.transport.TransportFactory.doConnect(TransportFactory.java:51)
> 	at org.apache.activemq.transport.TransportFactory.connect(TransportFactory.java:80)
> 	at org.apache.activemq.ActiveMQConnectionFactory.createTransport(ActiveMQConnectionFactory.java:237)
> 	at org.apache.activemq.ActiveMQConnectionFactory.createActiveMQConnection(ActiveMQConnectionFactory.java:252)
> 	at org.apache.activemq.ActiveMQConnectionFactory.createActiveMQConnection(ActiveMQConnectionFactory.java:224)
> 	at org.apache.activemq.ActiveMQConnectionFactory.createConnection(ActiveMQConnectionFactory.java:172)
> ...
> With the topic name set to "/exampleTopic"
> The code responsible for this looks like:
>         URI localLocation = null;
>         String path = location.getPath();
>         // see if the path is a local URI location
>         if (path != null && path.length() > 0) {
>             int localPortIndex = path.indexOf(':');
>             try {
>                 Integer.parseInt(path.substring(localPortIndex + 1, path.length()));
>                 String localString = location.getScheme() + ":/" + path;
>                 localLocation = new URI(localString);
>             } catch (Exception e) {
>                 LOG.warn("path isn't a valid local location for TcpTransport to use",
e);
>             }
>         }
>         SocketFactory socketFactory = createSocketFactory();
>         return createTcpTransport(wf, socketFactory, location, localLocation);
>     }
> The problem seems to be that for the path="/exampleTopic", the following line:
>            int localPortIndex = path.indexOf(':');
> returns -1 (no colon and no port specified in path
> and the subsequent line:
>              Integer.parseInt(path.substring(localPortIndex + 1, path.length()));
>   
> generates the NumberFormatException (because the path does not have any integer).
> It seems that perhaps there should be some test like:
> if (localPortIndex != -1) {
> ...
> }
> I will create a patch if desired.  Just LMK.

-- 
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