On 20/03/18 11:37, Rob Godfrey wrote:
How do we treat transactions which have transactionally enqueued a message
on the (now deleted) queue - do we allow them to commit successfully, or do
we force a rollback? Similarly when a message has been sent from the queue
and accepted as part of a transaction?
It seems the c++ broker allows the transaction to commit at present. I
don't think that was a conscious choice though. I suspect the scenario
wasn't explicitly planned for.
I think the ideal behaviour would be for a transaction error to be
signaled regardless of whether the client initiates a commit or rollback
in both the publish and consume case where a queue involved has since
been deleted.
From the spec:
"If the coordinator is unable to complete the discharge, the coordinator
MUST convey the error to the controller as a transaction-error."
To me if the queue is deleted, the transaction can't really be properly
completed, therefore and error would be clearest.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]