From e148e328b6bde8c2091c3e5bc6a9928ae5b3e723 Mon Sep 17 00:00:00 2001 From: biningo Date: Tue, 23 Apr 2024 22:55:51 +0800 Subject: [PATCH] Return SYSTEM_BUSY if PutMessageStatus is OS_PAGE_CACHE_BUSY --- .../apache/rocketmq/broker/processor/SendMessageProcessor.java | 2 +- .../rocketmq/broker/processor/SendMessageProcessorTest.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/broker/src/main/java/org/apache/rocketmq/broker/processor/SendMessageProcessor.java b/broker/src/main/java/org/apache/rocketmq/broker/processor/SendMessageProcessor.java index 912d502eab2..db5b22888dc 100644 --- a/broker/src/main/java/org/apache/rocketmq/broker/processor/SendMessageProcessor.java +++ b/broker/src/main/java/org/apache/rocketmq/broker/processor/SendMessageProcessor.java @@ -430,7 +430,7 @@ private RemotingCommand handlePutMessageResult(PutMessageResult putMessageResult "the broker's disk is full [" + diskUtil() + "], messages are put to the slave, message store has been shut down, etc."); break; case OS_PAGE_CACHE_BUSY: - response.setCode(ResponseCode.SYSTEM_ERROR); + response.setCode(ResponseCode.SYSTEM_BUSY); response.setRemark("[PC_SYNCHRONIZED]broker busy, start flow control for a while"); break; case LMQ_CONSUME_QUEUE_NUM_EXCEEDED: diff --git a/broker/src/test/java/org/apache/rocketmq/broker/processor/SendMessageProcessorTest.java b/broker/src/test/java/org/apache/rocketmq/broker/processor/SendMessageProcessorTest.java index e046c888438..442794dcd26 100644 --- a/broker/src/test/java/org/apache/rocketmq/broker/processor/SendMessageProcessorTest.java +++ b/broker/src/test/java/org/apache/rocketmq/broker/processor/SendMessageProcessorTest.java @@ -174,7 +174,7 @@ public void testProcessRequest_FlushSlaveTimeout() throws Exception { public void testProcessRequest_PageCacheBusy() throws Exception { when(messageStore.asyncPutMessage(any(MessageExtBrokerInner.class))). thenReturn(CompletableFuture.completedFuture(new PutMessageResult(PutMessageStatus.OS_PAGE_CACHE_BUSY, new AppendMessageResult(AppendMessageStatus.UNKNOWN_ERROR)))); - assertPutResult(ResponseCode.SYSTEM_ERROR); + assertPutResult(ResponseCode.SYSTEM_BUSY); } @Test