You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by vj...@apache.org on 2020/12/03 09:30:49 UTC

[hbase] branch branch-1 updated: HBASE-25230 Embedded zookeeper server not clean up the old data

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

vjasani pushed a commit to branch branch-1
in repository https://gitbox.apache.org/repos/asf/hbase.git


The following commit(s) were added to refs/heads/branch-1 by this push:
     new 23ef0cb  HBASE-25230 Embedded zookeeper server not clean up the old data
23ef0cb is described below

commit 23ef0cb36a62869b2904ff0f20f282b3ed49e2ac
Author: Laxman Goswami <fr...@gmail.com>
AuthorDate: Thu Dec 3 14:31:49 2020 +0530

    HBASE-25230 Embedded zookeeper server not clean up the old data
    
    Closes #2732
    
    Signed-off-by: maoling <ma...@sina.com>
    Signed-off-by: Viraj Jasani <vj...@apache.org>
---
 .../org/apache/hadoop/hbase/zookeeper/HQuorumPeer.java   | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/zookeeper/HQuorumPeer.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/zookeeper/HQuorumPeer.java
index a2b2711..9288855 100644
--- a/hbase-client/src/main/java/org/apache/hadoop/hbase/zookeeper/HQuorumPeer.java
+++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/zookeeper/HQuorumPeer.java
@@ -34,6 +34,9 @@ import org.apache.zookeeper.server.ServerConfig;
 import org.apache.zookeeper.server.ZooKeeperServerMain;
 import org.apache.zookeeper.server.quorum.QuorumPeerConfig;
 import org.apache.zookeeper.server.quorum.QuorumPeerMain;
+import org.apache.zookeeper.server.DatadirCleanupManager;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import java.io.File;
 import java.io.IOException;
@@ -86,6 +89,19 @@ public class HQuorumPeer {
 
   private static void runZKServer(QuorumPeerConfig zkConfig) throws UnknownHostException, IOException {
     try {
+      /**
+       *  Start and schedule the purge task
+       *  autopurge.purgeInterval is 0 by default,so in fact the DatadirCleanupManager task will not
+       *  be started to clean the logs by default. Config is recommended only for standalone server.
+       */
+
+      DatadirCleanupManager purgeMgr=new DatadirCleanupManager(
+        zkConfig.getDataDir(),
+        zkConfig.getDataLogDir(),
+        zkConfig.getSnapRetainCount(),
+        zkConfig.getPurgeInterval());
+      purgeMgr.start();
+
       if (zkConfig.isDistributed()) {
         QuorumPeerMain qp = new QuorumPeerMain();
         qp.runFromConfig(zkConfig);