Skip to content

Commit e4f8f87

Browse files
committed
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` **Auto-cherry-pick to `3.2.x`**
1 parent b94d273 commit e4f8f87

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
@@ -1218,11 +1218,11 @@ public void afterPropertiesSet() {
12181218
+ "transactional channel. Either use a different AcknowledgeMode or make sure " +
12191219
"channelTransacted=false");
12201220
validateConfiguration();
1221-
initialize();
12221221
checkMicrometer();
1223-
if (this.isAsyncReplies() && !AcknowledgeMode.MANUAL.equals(this.acknowledgeMode)) {
1222+
if (isAsyncReplies() && !AcknowledgeMode.MANUAL.equals(this.acknowledgeMode)) {
12241223
this.acknowledgeMode = AcknowledgeMode.MANUAL;
12251224
}
1225+
initialize();
12261226
}
12271227

12281228
@Override

0 commit comments

Comments
 (0)