Skip to content

Commit f6956fa

Browse files
artembilanspring-builds
authored andcommitted
GH-3201: Fix AbsMessageLC for ack in async mode
Fixes: #3201 The `AbstractMessageListenerContainer` does set `this.acknowledgeMode = AcknowledgeMode.MANUAL` for async mode, but only after `this.acknowledgeMode` is propagated down to the `messageListener`. Such a misconfiguration leads into unnecessary warning regarding wrong ack mode. * Change the order how `this.acknowledgeMode` is modified in the `AbstractMessageListenerContainer` before it is propagated down to the `messageListener` (cherry picked from commit e4f8f87)
1 parent 6c21628 commit f6956fa

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

spring-rabbit/src/main/java/org/springframework/amqp/rabbit/listener/AbstractMessageListenerContainer.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1213,11 +1213,11 @@ public void afterPropertiesSet() {
12131213
+ "transactional channel. Either use a different AcknowledgeMode or make sure " +
12141214
"channelTransacted=false");
12151215
validateConfiguration();
1216-
initialize();
12171216
checkMicrometer();
1218-
if (this.isAsyncReplies() && !AcknowledgeMode.MANUAL.equals(this.acknowledgeMode)) {
1217+
if (isAsyncReplies() && !AcknowledgeMode.MANUAL.equals(this.acknowledgeMode)) {
12191218
this.acknowledgeMode = AcknowledgeMode.MANUAL;
12201219
}
1220+
initialize();
12211221
}
12221222

12231223
@Override

0 commit comments

Comments
 (0)