rocketmq/patch038-backport-SlaveActingMaster-Timer-Message-retry-without-escape-logic.patch

32 lines
1.4 KiB
Diff

From e955e4399ceed5b5a1fbadc400883cfc5f99e726 Mon Sep 17 00:00:00 2001
From: AYue <40812847+AYue-94@users.noreply.github.com>
Date: Fri, 24 Nov 2023 10:47:08 +0800
Subject: [PATCH] [ISSUE #7577] SlaveActingMaster Timer Message retry without
escape logic (#7578)
Co-authored-by: ayue <ericyu0421@163.com>
---
.../org/apache/rocketmq/store/timer/TimerMessageStore.java | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/store/src/main/java/org/apache/rocketmq/store/timer/TimerMessageStore.java b/store/src/main/java/org/apache/rocketmq/store/timer/TimerMessageStore.java
index 3ab51a26d..d796e4467 100644
--- a/store/src/main/java/org/apache/rocketmq/store/timer/TimerMessageStore.java
+++ b/store/src/main/java/org/apache/rocketmq/store/timer/TimerMessageStore.java
@@ -1105,7 +1105,11 @@ public class TimerMessageStore {
}
}
Thread.sleep(50);
- putMessageResult = messageStore.putMessage(message);
+ if (escapeBridgeHook != null) {
+ putMessageResult = escapeBridgeHook.apply(message);
+ } else {
+ putMessageResult = messageStore.putMessage(message);
+ }
LOGGER.warn("Retrying to do put timer msg retryNum:{} putRes:{} msg:{}", retryNum, putMessageResult, message);
}
return PUT_NO_RETRY;
--
2.32.0.windows.2