Skip to content

Commit a7a9e5c

Browse files
committed
fix dledger mode expired message can not delete on jdk9+
1 parent e4170f5 commit a7a9e5c

File tree

3 files changed

+16
-5
lines changed

3 files changed

+16
-5
lines changed

WORKSPACE

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ maven_install(
5454
"commons-validator:commons-validator:1.7",
5555
"org.apache.commons:commons-lang3:3.12.0",
5656
"org.hamcrest:hamcrest-core:1.3",
57-
"io.openmessaging.storage:dledger:0.3.1",
57+
"io.openmessaging.storage:dledger:0.3.2",
5858
"net.java.dev.jna:jna:4.2.2",
5959
"ch.qos.logback:logback-classic:1.2.10",
6060
"ch.qos.logback:logback-core:1.2.10",

controller/src/main/java/org/apache/rocketmq/controller/impl/DLedgerControllerStateMachine.java

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
package org.apache.rocketmq.controller.impl;
1818

1919
import io.openmessaging.storage.dledger.entry.DLedgerEntry;
20+
import io.openmessaging.storage.dledger.exception.DLedgerException;
2021
import io.openmessaging.storage.dledger.snapshot.SnapshotReader;
2122
import io.openmessaging.storage.dledger.snapshot.SnapshotWriter;
2223
import io.openmessaging.storage.dledger.statemachine.CommittedEntryIterator;
@@ -28,8 +29,6 @@
2829
import org.apache.rocketmq.logging.org.slf4j.Logger;
2930
import org.apache.rocketmq.logging.org.slf4j.LoggerFactory;
3031

31-
import java.util.concurrent.CompletableFuture;
32-
3332
/**
3433
* The state machine implementation of the dledger controller
3534
*/
@@ -46,6 +45,11 @@ public DLedgerControllerStateMachine(final ReplicasInfoManager replicasInfoManag
4645
this.dLedgerId = generateDLedgerId(dLedgerGroupId, dLedgerSelfId);
4746
}
4847

48+
@Override
49+
public String generateDLedgerId(String dLedgerGroupId, String dLedgerSelfId) {
50+
return new StringBuilder(20).append(dLedgerGroupId).append("#").append(dLedgerSelfId).toString();
51+
}
52+
4953
@Override
5054
public void onApply(CommittedEntryIterator iterator) {
5155
int applyingSize = 0;
@@ -66,7 +70,8 @@ public void onApply(CommittedEntryIterator iterator) {
6670
}
6771

6872
@Override
69-
public void onSnapshotSave(SnapshotWriter writer, CompletableFuture<Boolean> future) {
73+
public boolean onSnapshotSave(SnapshotWriter writer) {
74+
return true;
7075
}
7176

7277
@Override
@@ -76,6 +81,12 @@ public boolean onSnapshotLoad(SnapshotReader reader) {
7681

7782
@Override
7883
public void onShutdown() {
84+
log.info("StateMachine {} onShutdown", this.dLedgerId);
85+
}
86+
87+
@Override
88+
public void onError(DLedgerException exception) {
89+
log.error("Encountered an error on StateMachine {}, dLedger may stop working since some error occurs, you should figure out the cause and repair or remove this node.", this.dLedgerId, exception);
7990
}
8091

8192
@Override

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,7 @@
123123
<lz4-java.version>1.8.0</lz4-java.version>
124124
<opentracing.version>0.33.0</opentracing.version>
125125
<jaeger.version>1.8.1</jaeger.version>
126-
<dleger.version>0.3.1.2</dleger.version>
126+
<dleger.version>0.3.2</dleger.version>
127127
<annotations-api.version>6.0.53</annotations-api.version>
128128
<extra-enforcer-rules.version>1.0-beta-4</extra-enforcer-rules.version>
129129
<concurrentlinkedhashmap-lru.version>1.4.2</concurrentlinkedhashmap-lru.version>

0 commit comments

Comments
 (0)