You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Rob Godfrey (JIRA)" <ji...@apache.org> on 2014/10/10 18:19:34 UTC

[jira] [Commented] (QPID-6146) Sending large persistent message to a DerbyVH caused the Broker to fail

    [ https://issues.apache.org/jira/browse/QPID-6146?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14167060#comment-14167060 ] 

Rob Godfrey commented on QPID-6146:
-----------------------------------

Don't suppose you have the derby.log from when this occurred?  A bit of Googling suggests that this tends to occur when there has been a prior error in Derby.

As an aside to that we should look at trying to redirect the derby logs into the standard Qpid logs...  Not sure if there is a better mechanism than setting a system property: http://db.apache.org/derby/docs/10.3/tuning/rtunproper35028.html#rtunproper35028



> Sending large persistent message to a DerbyVH caused the Broker to fail
> -----------------------------------------------------------------------
>
>                 Key: QPID-6146
>                 URL: https://issues.apache.org/jira/browse/QPID-6146
>             Project: Qpid
>          Issue Type: Bug
>          Components: Java Broker
>         Environment: Mac OS X
> Darwin13.3.0 Darwin Kernel Version 13.3.0: Tue Jun  3 21:27:35 PDT 2014; root:xnu-2422.110.17~1/RELEASE_X86_64 x86_64
> 1.7.0_45
>            Reporter: Keith Wall
>
> I was able to cause the Broker by sending large persistent messages to the Broker (using a DerbyVH).  My Java Client was non-transactional and there was no consumer attached to the queue.  The message size was ~10MB.  The client may have timed-out.
> I have been unable to reproduce again.
> {noformat}
> #
> # Exiting
> #
> ########################################################################
> org.apache.qpid.server.store.StoreException: Error aborting transaction: No current connection.
>         at org.apache.qpid.server.store.AbstractJDBCMessageStore.abortTran(AbstractJDBCMessageStore.java:863)
>         at org.apache.qpid.server.store.AbstractJDBCMessageStore.access$900(AbstractJDBCMessageStore.java:49)
>         at org.apache.qpid.server.store.AbstractJDBCMessageStore$JDBCTransaction.abortTran(AbstractJDBCMessageStore.java:1267)
>         at org.apache.qpid.server.txn.AsyncAutoCommitTransaction.rollbackIfNecessary(AsyncAutoCommitTransaction.java:315)
>         at org.apache.qpid.server.txn.AsyncAutoCommitTransaction.enqueue(AsyncAutoCommitTransaction.java:274)
>         at org.apache.qpid.server.exchange.AbstractExchange.send(AbstractExchange.java:545)
>         at org.apache.qpid.server.protocol.v0_8.AMQChannel.deliverCurrentMessageIfComplete(AMQChannel.java:408)
>         at org.apache.qpid.server.protocol.v0_8.AMQChannel.publishContentBody(AMQChannel.java:518)
>         at org.apache.qpid.server.protocol.v0_8.AMQProtocolEngine.contentBodyReceived(AMQProtocolEngine.java:692)
>         at org.apache.qpid.framing.ContentBody.handle(ContentBody.java:72)
>         at org.apache.qpid.server.protocol.v0_8.AMQProtocolEngine.frameReceived(AMQProtocolEngine.java:477)
>         at org.apache.qpid.server.protocol.v0_8.AMQProtocolEngine.dataBlockReceived(AMQProtocolEngine.java:412)
>         at org.apache.qpid.server.protocol.v0_8.AMQProtocolEngine.access$1100(AMQProtocolEngine.java:89)
>         at org.apache.qpid.server.protocol.v0_8.AMQProtocolEngine$2.run(AMQProtocolEngine.java:311)
>         at org.apache.qpid.server.protocol.v0_8.AMQProtocolEngine$2.run(AMQProtocolEngine.java:283)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at javax.security.auth.Subject.doAs(Subject.java:356)
>         at org.apache.qpid.server.protocol.v0_8.AMQProtocolEngine.received(AMQProtocolEngine.java:282)
>         at org.apache.qpid.server.protocol.v0_8.AMQProtocolEngine.received(AMQProtocolEngine.java:89)
>         at org.apache.qpid.server.protocol.MultiVersionProtocolEngine.received(MultiVersionProtocolEngine.java:133)
>         at org.apache.qpid.server.protocol.MultiVersionProtocolEngine.received(MultiVersionProtocolEngine.java:49)
>         at org.apache.qpid.transport.network.io.IoReceiver.run(IoReceiver.java:161)
>         at java.lang.Thread.run(Thread.java:744)
> Caused by: java.sql.SQLNonTransientConnectionException: No current connection.
>         at org.apache.derby.impl.jdbc.SQLExceptionFactory40.getSQLException(Unknown Source)
>         at org.apache.derby.impl.jdbc.Util.newEmbedSQLException(Unknown Source)
>         at org.apache.derby.impl.jdbc.Util.newEmbedSQLException(Unknown Source)
>         at org.apache.derby.impl.jdbc.Util.noCurrentConnection(Unknown Source)
>         at org.apache.derby.impl.jdbc.EmbedConnection.checkIfClosed(Unknown Source)
>         at org.apache.derby.impl.jdbc.EmbedConnection.setupContextStack(Unknown Source)
>         at org.apache.derby.impl.jdbc.EmbedConnection.rollback(Unknown Source)
>         at org.apache.qpid.server.store.AbstractJDBCMessageStore.abortTran(AbstractJDBCMessageStore.java:858)
>         ... 22 more
> Caused by: java.sql.SQLException: No current connection.
>         at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown Source)
>         at org.apache.derby.impl.jdbc.SQLExceptionFactory40.wrapArgsForTransportAcrossDRDA(Unknown Source)
>         ... 30 more
> Process finished with exit code 1
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org