[
https://issues.apache.org/jira/browse/QPID-1262?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12625694#action_12625694
]
Martin Ritchie commented on QPID-1262:
--------------------------------------
pool-2-thread-2 2008-08-26 11:17:58,253 INFO
[qpid.server.store.SlowMessageStore] Done sleep for:2002:2000
pool-2-thread-2 2008-08-26 11:17:58,253 DEBUG
[qpid.server.txn.LocalTransactionalContext] Performing post commit delivery
pool-2-thread-2 2008-08-26 11:17:58,254 DEBUG
[qpid.server.protocol.AMQProtocolSession] Frame Received: Frame channelId: 1,
bodyFrame: [ExchangeDeclareBodyImpl: ticket=0, exchange=amq.direct,
type=direct, passive=false, durable=false, autoDelete=false, internal=false,
nowait=true, arguments=null]
pool-2-thread-2 2008-08-26 11:17:58,255 DEBUG
[server.security.access.ACLManager] Allowing user:guest for :CREATE on
ExchangeDeclareBodyImpl
pool-2-thread-2 2008-08-26 11:17:58,255 DEBUG
[qpid.server.handler.ExchangeDeclareHandler] Request to declare exchange of
type direct with name amq.direct
pool-2-thread-2 2008-08-26 11:17:58,255 DEBUG
[apache.qpid.framing.AMQDataBlockEncoder] Encoded frame byte-buffer is
'0x01000100000004005a0015ce'
pool-2-thread-2 2008-08-26 11:17:58,256 DEBUG
[qpid.server.protocol.AMQPFastProtocolHandler] Message sent: DirectBuffer[pos=0
lim=12 cap=16: 01 00 01 00 00 00 04 00 5A 00 15 CE]
pool-2-thread-2 2008-08-26 11:17:58,256 DEBUG
[qpid.server.protocol.AMQPFastProtocolHandler] Message sent: Frame channelId:
1, bodyFrame: [TxCommitOkBodyImpl: ]
pool-2-thread-3 2008-08-26 11:17:58,257 INFO [qpid.protocol] RECV: [EMAIL
PROTECTED] Frame channelId: 1, bodyFrame: [TxCommitOkBodyImpl: ]
pool-2-thread-3 2008-08-26 11:17:58,257 DEBUG
[qpid.client.protocol.AMQProtocolHandler] (22667604)Method frame received:
[TxCommitOkBodyImpl: ]
The above log was generated with s slightly modified test:
POST_COMMIT_DELAY = 2000L;
SYNC_WRITE_TIMEOUT = 1000L;
loop the test() method
warn "START" // at the start of the test loop
Sleep 1s // at the end of the test loop
AMQProtocolHandler added logging to print Blocking time and expected frame
SlowMessageStore augmented to print the duration and requested sleep times
> [AMQP-0-8/9] Client can incorrectly report CommitOK if previous commit timed
> out.
> ---------------------------------------------------------------------------------
>
> Key: QPID-1262
> URL: https://issues.apache.org/jira/browse/QPID-1262
> Project: Qpid
> Issue Type: Bug
> Components: Java Broker
> Affects Versions: M2.1, M3
> Reporter: Martin Ritchie
>
> Summary:
> As shown by the new SyncWaitTimeoutDelayTest there is a bug in AMQP. The
> TxCommitOk bodies do not have a correlation id so it is impossible to tell if
> the TxCommitOk received is for the last TxCommit sent if you have timed out a
> previous commit.
> Attached is a log for this behaviour. As this is an AMQP bug it is unlikely
> we can resolve it in Qpid.
> Question is does 0-10 also exhibit this behaviour.
> Work around is to close the session after a commit timeout this will ensure
> that the TxCommitOk does not spuriously arrive on the client. It does however
> leave you unsure of the commit state, but presumably there was a reason you
> gave up waiting for the TxCommitOk and are prepared for the operation
> actually succeeding but never being notified about it.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.