geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Aman Nanner (JIRA)" <j...@apache.org>
Subject [jira] Commented: (GERONIMO-2880) TransportDisposedIOException occurs when trying to close ActiveMQ queue
Date Tue, 04 Sep 2007 21:46:45 GMT

    [ https://issues.apache.org/jira/browse/GERONIMO-2880?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12524886
] 

Aman Nanner commented on GERONIMO-2880:
---------------------------------------

Ok, it turns out that the peer was disposed because of an exception during the transport process.
 The real problem was the following IOException:

{{java.io.IOException: Cannot set AUTOCOMMIT ON when in an XA connection.}}

This problem caused the peer to be disposed which resulted in the error discussed in this
JIRA issue.  However, this source problem was not logged as an ERROR to the console.  It seems
that the error is only logged in DEBUG mode in the following code in the {{org.apache.activemq.broker.TransportConnection}}
class:

{code}
    public void serviceTransportException(IOException e) {
        if( !disposed.get() ) {
            transportException.set(e); 
            if( transportLog.isDebugEnabled() )
                transportLog.debug("Transport failed: "+e,e);
            ServiceSupport.dispose(this);
        }
    }
{code}

I would think that this should probably be logged at a higher debug level, such as WARN or
ERROR.

> TransportDisposedIOException occurs when trying to close ActiveMQ queue
> -----------------------------------------------------------------------
>
>                 Key: GERONIMO-2880
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-2880
>             Project: Geronimo
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>          Components: ActiveMQ
>    Affects Versions: 2.0.x
>         Environment: Windows XP SP2
>            Reporter: Aman Nanner
>            Priority: Critical
>             Fix For: 2.0.x, 2.1
>
>
> I have discovered some problems with queues while running unittest in our own J2EE app.
> After sending a message on a queue, when we try to call the close() method on the queue,
we get the following exception:
> ----
> org.apache.activemq.transport.TransportDisposedIOException: Peer (vm://localhost#69)
disposed.
> ----
> where the number after "localhost" is different every time.
> We do not experience this problem with topics.  We are using ActiveMQ as part of an "embedded"
configuration with Geronimo.
> I've done some debugging and the problem occurs at this line in the ActiveMQMessageProducer.close()
method:
> ----
> this.session.asyncSendPacket(info.createRemoveCommand());
> ----
> The queue itself is disposed properly in the dispose() method that is called in the line
before, but this sending of the asynchronous packet fails.

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