This is an automated email from the ASF dual-hosted git repository.
jinrongtong pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/rocketmq.git
The following commit(s) were added to refs/heads/develop by this push:
new 3877dcd134 [ISSUE #7853] Fix the manualDeleteFileSeveralTimes count
3877dcd134 is described below
commit 3877dcd134d516c3dc547a72daa12964a125d41e
Author: ChineseTony <[email protected]>
AuthorDate: Thu Feb 29 10:48:31 2024 +0800
[ISSUE #7853] Fix the manualDeleteFileSeveralTimes count
---
.../org/apache/rocketmq/store/DefaultMessageStore.java | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
diff --git
a/store/src/main/java/org/apache/rocketmq/store/DefaultMessageStore.java
b/store/src/main/java/org/apache/rocketmq/store/DefaultMessageStore.java
index 48a3adcc08..1392d64e34 100644
--- a/store/src/main/java/org/apache/rocketmq/store/DefaultMessageStore.java
+++ b/store/src/main/java/org/apache/rocketmq/store/DefaultMessageStore.java
@@ -2183,7 +2183,7 @@ public class DefaultMessageStore implements MessageStore {
System.getProperty("rocketmq.broker.diskSpaceCleanForciblyRatio",
"");
private long lastRedeleteTimestamp = 0;
- private volatile int manualDeleteFileSeveralTimes = 0;
+ private final AtomicInteger manualDeleteFileSeveralTimes = new
AtomicInteger();
private volatile boolean cleanImmediately = false;
@@ -2226,7 +2226,7 @@ public class DefaultMessageStore implements MessageStore {
}
public void executeDeleteFilesManually() {
- this.manualDeleteFileSeveralTimes = MAX_MANUAL_DELETE_FILE_TIMES;
+
this.manualDeleteFileSeveralTimes.set(MAX_MANUAL_DELETE_FILE_TIMES);
DefaultMessageStore.LOGGER.info("executeDeleteFilesManually was
invoked");
}
@@ -2248,12 +2248,12 @@ public class DefaultMessageStore implements
MessageStore {
boolean isTimeUp = this.isTimeToDelete();
boolean isUsageExceedsThreshold = this.isSpaceToDelete();
- boolean isManualDelete = this.manualDeleteFileSeveralTimes > 0;
+ boolean isManualDelete = this.manualDeleteFileSeveralTimes.get() >
0;
if (isTimeUp || isUsageExceedsThreshold || isManualDelete) {
if (isManualDelete) {
- this.manualDeleteFileSeveralTimes--;
+ this.manualDeleteFileSeveralTimes.decrementAndGet();
}
boolean cleanAtOnce =
DefaultMessageStore.this.getMessageStoreConfig().isCleanFileForciblyEnable() &&
this.cleanImmediately;
@@ -2262,7 +2262,7 @@ public class DefaultMessageStore implements MessageStore {
fileReservedTime,
isTimeUp,
isUsageExceedsThreshold,
- manualDeleteFileSeveralTimes,
+ manualDeleteFileSeveralTimes.get(),
cleanAtOnce,
deleteFileBatchMax);
@@ -2407,11 +2407,11 @@ public class DefaultMessageStore implements
MessageStore {
}
public int getManualDeleteFileSeveralTimes() {
- return manualDeleteFileSeveralTimes;
+ return manualDeleteFileSeveralTimes.get();
}
public void setManualDeleteFileSeveralTimes(int
manualDeleteFileSeveralTimes) {
- this.manualDeleteFileSeveralTimes = manualDeleteFileSeveralTimes;
+
this.manualDeleteFileSeveralTimes.set(manualDeleteFileSeveralTimes);
}
public double calcStorePathPhysicRatio() {