Github user michaelandrepearce commented on a diff in the pull request: https://github.com/apache/activemq-artemis/pull/2187#discussion_r206769179 --- Diff: artemis-core-client/src/main/java/org/apache/activemq/artemis/core/protocol/core/impl/ActiveMQSessionContext.java --- @@ -189,16 +185,24 @@ public void kill() { this.killed = true; } + private void setHandlers() { + sessionChannel.setCommandConfirmationHandler(commandConfirmationHandler); --- End diff -- I have concern why the handler is getting invoked twice. It shouldnt be possible if its always invoked via the response cache. Interestingly if i take just the changes justin made in the large message method, then the original failing tests pass. So the other changes seem to be not needed but introduce either issue causing the dupe issue that justin encounters and needs the atomic. I think it needs more discussion and development still. The answer is probably somewhere inbetween
---