You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@bookkeeper.apache.org by eo...@apache.org on 2022/07/19 07:11:19 UTC

[bookkeeper] branch master updated: stage 10: bugfix indexDirs for ConvertToInterleavedStorageCommand (#3409)

This is an automated email from the ASF dual-hosted git repository.

eolivelli pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/bookkeeper.git


The following commit(s) were added to refs/heads/master by this push:
     new c687524cae stage 10: bugfix indexDirs for ConvertToInterleavedStorageCommand (#3409)
c687524cae is described below

commit c687524cae97ad9266391ee59c45e61572f39da3
Author: StevenLuMT <42...@users.noreply.github.com>
AuthorDate: Tue Jul 19 15:11:14 2022 +0800

    stage 10: bugfix indexDirs for ConvertToInterleavedStorageCommand (#3409)
    
    Co-authored-by: lushiji <lu...@didiglobal.com>
---
 .../commands/bookie/ConvertToInterleavedStorageCommand.java | 13 +++++++------
 .../bookie/ConvertToInterleavedStorageCommandTest.java      |  3 ++-
 2 files changed, 9 insertions(+), 7 deletions(-)

diff --git a/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/cli/commands/bookie/ConvertToInterleavedStorageCommand.java b/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/cli/commands/bookie/ConvertToInterleavedStorageCommand.java
index 1f3315291e..0ffe9066df 100644
--- a/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/cli/commands/bookie/ConvertToInterleavedStorageCommand.java
+++ b/bookkeeper-server/src/main/java/org/apache/bookkeeper/tools/cli/commands/bookie/ConvertToInterleavedStorageCommand.java
@@ -26,6 +26,7 @@ import java.nio.file.Files;
 import lombok.Setter;
 import lombok.experimental.Accessors;
 import org.apache.bookkeeper.bookie.Bookie;
+import org.apache.bookkeeper.bookie.BookieResources;
 import org.apache.bookkeeper.bookie.CheckpointSource;
 import org.apache.bookkeeper.bookie.Checkpointer;
 import org.apache.bookkeeper.bookie.InterleavedLedgerStorage;
@@ -88,10 +89,10 @@ public class ConvertToInterleavedStorageCommand extends BookieCommand<ConvertToI
     private boolean handle(ServerConfiguration bkConf) throws Exception {
         LOG.info("=== Converting DbLedgerStorage ===");
         ServerConfiguration conf = new ServerConfiguration(bkConf);
-        LedgerDirsManager ledgerDirsManager = new LedgerDirsManager(bkConf, bkConf.getLedgerDirs(),
-            new DiskChecker(bkConf.getDiskUsageThreshold(), bkConf.getDiskUsageWarnThreshold()));
-        LedgerDirsManager ledgerIndexManager = new LedgerDirsManager(bkConf, bkConf.getLedgerDirs(),
-            new DiskChecker(bkConf.getDiskUsageThreshold(), bkConf.getDiskUsageWarnThreshold()));
+        DiskChecker diskChecker = new DiskChecker(bkConf.getDiskUsageThreshold(), bkConf.getDiskUsageWarnThreshold());
+        LedgerDirsManager ledgerDirsManager = new LedgerDirsManager(bkConf, bkConf.getLedgerDirs(), diskChecker);
+        LedgerDirsManager indexDirsManager = BookieResources.createIndexDirsManager(
+                conf, diskChecker, NullStatsLogger.INSTANCE, ledgerDirsManager);
 
         DbLedgerStorage dbStorage = new DbLedgerStorage();
         InterleavedLedgerStorage interleavedStorage = new InterleavedLedgerStorage();
@@ -117,11 +118,11 @@ public class ConvertToInterleavedStorageCommand extends BookieCommand<ConvertToI
             }
         };
 
-        dbStorage.initialize(conf, null, ledgerDirsManager, ledgerIndexManager,
+        dbStorage.initialize(conf, null, ledgerDirsManager, indexDirsManager,
                              NullStatsLogger.INSTANCE, PooledByteBufAllocator.DEFAULT);
         dbStorage.setCheckpointSource(checkpointSource);
         dbStorage.setCheckpointer(checkpointer);
-        interleavedStorage.initialize(conf, null, ledgerDirsManager, ledgerIndexManager,
+        interleavedStorage.initialize(conf, null, ledgerDirsManager, indexDirsManager,
                                       NullStatsLogger.INSTANCE, PooledByteBufAllocator.DEFAULT);
         interleavedStorage.setCheckpointSource(checkpointSource);
         interleavedStorage.setCheckpointer(checkpointer);
diff --git a/tools/ledger/src/test/java/org/apache/bookkeeper/tools/cli/commands/bookie/ConvertToInterleavedStorageCommandTest.java b/tools/ledger/src/test/java/org/apache/bookkeeper/tools/cli/commands/bookie/ConvertToInterleavedStorageCommandTest.java
index 57fc63c657..8c29b0caac 100644
--- a/tools/ledger/src/test/java/org/apache/bookkeeper/tools/cli/commands/bookie/ConvertToInterleavedStorageCommandTest.java
+++ b/tools/ledger/src/test/java/org/apache/bookkeeper/tools/cli/commands/bookie/ConvertToInterleavedStorageCommandTest.java
@@ -56,8 +56,9 @@ public class ConvertToInterleavedStorageCommandTest extends BookieCommandTestBas
     private LedgerCache interleavedLedgerCache;
 
 
+    // create multi ledger dirs and multi index dirs
     public ConvertToInterleavedStorageCommandTest() {
-        super(3, 0);
+        super(3, 3);
     }
 
     @Override