You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by lh...@apache.org on 2024/06/10 19:46:18 UTC
(pulsar) 03/04: [fix][cli] Fix Pulsar standalone "--wipe-data" (#22885)
This is an automated email from the ASF dual-hosted git repository.
lhotari pushed a commit to branch branch-3.2
in repository https://gitbox.apache.org/repos/asf/pulsar.git
commit 9b2b437ffb3f0b7546d8b32c1de6c875b3d3db55
Author: Lari Hotari <lh...@users.noreply.github.com>
AuthorDate: Mon Jun 10 19:30:24 2024 +0300
[fix][cli] Fix Pulsar standalone "--wipe-data" (#22885)
(cherry picked from commit f6eceedbded53cded4dd751206ebb51d2867e978)
---
.../src/main/java/org/apache/pulsar/PulsarStandalone.java | 9 ++++++++-
.../org/apache/pulsar/zookeeper/LocalBookkeeperEnsemble.java | 2 ++
.../java/org/apache/pulsar/metadata/bookkeeper/BKCluster.java | 1 +
3 files changed, 11 insertions(+), 1 deletion(-)
diff --git a/pulsar-broker/src/main/java/org/apache/pulsar/PulsarStandalone.java b/pulsar-broker/src/main/java/org/apache/pulsar/PulsarStandalone.java
index a2a101fe394..360f8caeba6 100644
--- a/pulsar-broker/src/main/java/org/apache/pulsar/PulsarStandalone.java
+++ b/pulsar-broker/src/main/java/org/apache/pulsar/PulsarStandalone.java
@@ -18,6 +18,7 @@
*/
package org.apache.pulsar;
+import static org.apache.commons.io.FileUtils.cleanDirectory;
import static org.apache.pulsar.common.naming.NamespaceName.SYSTEM_NAMESPACE;
import static org.apache.pulsar.common.naming.SystemTopicNames.TRANSACTION_COORDINATOR_ASSIGN;
import com.beust.jcommander.Parameter;
@@ -25,6 +26,7 @@ import com.google.common.annotations.VisibleForTesting;
import com.google.common.collect.Sets;
import io.netty.util.internal.PlatformDependent;
import java.io.File;
+import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.List;
@@ -443,7 +445,12 @@ public class PulsarStandalone implements AutoCloseable {
void startBookieWithMetadataStore() throws Exception {
if (StringUtils.isBlank(metadataStoreUrl)){
log.info("Starting BK with RocksDb metadata store");
- metadataStoreUrl = "rocksdb://" + Paths.get(metadataDir).toAbsolutePath();
+ Path metadataDirPath = Paths.get(metadataDir);
+ metadataStoreUrl = "rocksdb://" + metadataDirPath.toAbsolutePath();
+ if (wipeData && Files.exists(metadataDirPath)) {
+ log.info("Wiping RocksDb metadata store at {}", metadataStoreUrl);
+ cleanDirectory(metadataDirPath.toFile());
+ }
} else {
log.info("Starting BK with metadata store: {}", metadataStoreUrl);
}
diff --git a/pulsar-broker/src/main/java/org/apache/pulsar/zookeeper/LocalBookkeeperEnsemble.java b/pulsar-broker/src/main/java/org/apache/pulsar/zookeeper/LocalBookkeeperEnsemble.java
index 63d146a3a15..4c8d2dbbfa7 100644
--- a/pulsar-broker/src/main/java/org/apache/pulsar/zookeeper/LocalBookkeeperEnsemble.java
+++ b/pulsar-broker/src/main/java/org/apache/pulsar/zookeeper/LocalBookkeeperEnsemble.java
@@ -194,6 +194,7 @@ public class LocalBookkeeperEnsemble {
: createTempDirectory("zktest");
if (this.clearOldData) {
+ LOG.info("Wiping Zookeeper data directory at {}", zkDataDir.getAbsolutePath());
cleanDirectory(zkDataDir);
}
@@ -291,6 +292,7 @@ public class LocalBookkeeperEnsemble {
: createTempDirectory("bk" + i + "test");
if (this.clearOldData) {
+ LOG.info("Wiping Bookie data directory at {}", bkDataDir.getAbsolutePath());
cleanDirectory(bkDataDir);
}
diff --git a/pulsar-metadata/src/main/java/org/apache/pulsar/metadata/bookkeeper/BKCluster.java b/pulsar-metadata/src/main/java/org/apache/pulsar/metadata/bookkeeper/BKCluster.java
index 8d3a90239ef..fe2b981ffe9 100644
--- a/pulsar-metadata/src/main/java/org/apache/pulsar/metadata/bookkeeper/BKCluster.java
+++ b/pulsar-metadata/src/main/java/org/apache/pulsar/metadata/bookkeeper/BKCluster.java
@@ -232,6 +232,7 @@ public class BKCluster implements AutoCloseable {
}
if (clusterConf.clearOldData && dataDir.exists()) {
+ log.info("Wiping Bookie data directory at {}", dataDir.getAbsolutePath());
cleanDirectory(dataDir);
}