[ISSUE #6473] Fix multi dispatch error when enableMultiDispatch=true and enableLmq=true (#6476)

* typo int readme[ecosystem]

* remove multi_dispatch to avoid building cq again

* if topic starts with %RETRY%, do not process INNER_MULTI_DISPATCH

* quickstart consumer test revert
This commit is contained in:
fujian-zfj
2023-03-29 14:05:07 +08:00
committed by GitHub
parent cbd1d38199
commit 0d516ba708
2 changed files with 3 additions and 3 deletions
@@ -723,7 +723,7 @@ public class ConsumeQueue implements ConsumeQueueInterface, FileQueueLifeCycle {
}
private boolean checkMultiDispatchQueue(DispatchRequest dispatchRequest) {
if (!this.messageStore.getMessageStoreConfig().isEnableMultiDispatch()) {
if (!this.messageStore.getMessageStoreConfig().isEnableMultiDispatch() || dispatchRequest.getTopic().startsWith(MixAll.RETRY_GROUP_TOPIC_PREFIX)) {
return false;
}
Map<String, String> prop = dispatchRequest.getPropertiesMap();
@@ -791,7 +791,7 @@ public class ConsumeQueue implements ConsumeQueueInterface, FileQueueLifeCycle {
long queueOffset = queueOffsetAssigner.assignQueueOffset(topicQueueKey, messageNum);
msg.setQueueOffset(queueOffset);
// For LMQ
if (!messageStore.getMessageStoreConfig().isEnableMultiDispatch()) {
if (!messageStore.getMessageStoreConfig().isEnableMultiDispatch() || msg.getTopic().startsWith(MixAll.RETRY_GROUP_TOPIC_PREFIX)) {
return;
}
String multiDispatchQueue = msg.getProperty(MessageConst.PROPERTY_INNER_MULTI_DISPATCH);
@@ -2812,7 +2812,7 @@ public class DefaultMessageStore implements MessageStore {
private void notifyMessageArrive4MultiQueue(DispatchRequest dispatchRequest) {
Map<String, String> prop = dispatchRequest.getPropertiesMap();
if (prop == null) {
if (prop == null || dispatchRequest.getTopic().startsWith(MixAll.RETRY_GROUP_TOPIC_PREFIX)) {
return;
}
String multiDispatchQueue = prop.get(MessageConst.PROPERTY_INNER_MULTI_DISPATCH);