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:16:53 UTC

[hbase] branch branch-2.4 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-2.4
in repository https://gitbox.apache.org/repos/asf/hbase.git


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

commit 9a2994a5a3d889cc6ea469d331006de6a10acaa2
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  | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/hbase-zookeeper/src/main/java/org/apache/hadoop/hbase/zookeeper/HQuorumPeer.java b/hbase-zookeeper/src/main/java/org/apache/hadoop/hbase/zookeeper/HQuorumPeer.java
index 193b7c8..86f9451 100644
--- a/hbase-zookeeper/src/main/java/org/apache/hadoop/hbase/zookeeper/HQuorumPeer.java
+++ b/hbase-zookeeper/src/main/java/org/apache/hadoop/hbase/zookeeper/HQuorumPeer.java
@@ -44,6 +44,9 @@ import org.apache.zookeeper.server.ZooKeeperServerMain;
 import org.apache.zookeeper.server.admin.AdminServer;
 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;
 
 /**
  * HBase's version of ZooKeeper's QuorumPeer. When HBase is set to manage
@@ -84,6 +87,20 @@ public final class HQuorumPeer {
 
   private static void runZKServer(QuorumPeerConfig zkConfig)
           throws IOException, AdminServer.AdminServerException {
+
+    /**
+     *  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);