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

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


The following commit(s) were added to refs/heads/master by this push:
     new 57d66137fa HDDS-8323. [Snapshot] cancelAllBackgroundWork and close 
listeners in RDBStore#close (#4498)
57d66137fa is described below

commit 57d66137fa54d566752f2787e853deecda9d194b
Author: Siyao Meng <[email protected]>
AuthorDate: Thu Mar 30 20:40:42 2023 -0700

    HDDS-8323. [Snapshot] cancelAllBackgroundWork and close listeners in 
RDBStore#close (#4498)
---
 .../main/java/org/apache/hadoop/hdds/utils/db/RocksDatabase.java    | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git 
a/hadoop-hdds/framework/src/main/java/org/apache/hadoop/hdds/utils/db/RocksDatabase.java
 
b/hadoop-hdds/framework/src/main/java/org/apache/hadoop/hdds/utils/db/RocksDatabase.java
index 8979ebbd2a..cc44361908 100644
--- 
a/hadoop-hdds/framework/src/main/java/org/apache/hadoop/hdds/utils/db/RocksDatabase.java
+++ 
b/hadoop-hdds/framework/src/main/java/org/apache/hadoop/hdds/utils/db/RocksDatabase.java
@@ -355,6 +355,12 @@ public final class RocksDatabase {
 
   public void close() {
     if (isClosed.compareAndSet(false, true)) {
+      // Wait for all background work to be cancelled first. e.g. RDB 
compaction
+      db.get().cancelAllBackgroundWork(true);
+
+      // Then close all attached listeners
+      dbOptions.listeners().forEach(listener -> listener.close());
+
       if (columnFamilies != null) {
         columnFamilies.values().stream().forEach(f -> f.markClosed());
       }


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to