1717package org .apache .rocketmq .controller .impl ;
1818
1919import io .openmessaging .storage .dledger .entry .DLedgerEntry ;
20+ import io .openmessaging .storage .dledger .exception .DLedgerException ;
2021import io .openmessaging .storage .dledger .snapshot .SnapshotReader ;
2122import io .openmessaging .storage .dledger .snapshot .SnapshotWriter ;
2223import io .openmessaging .storage .dledger .statemachine .CommittedEntryIterator ;
2829import org .apache .rocketmq .logging .org .slf4j .Logger ;
2930import 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
0 commit comments