You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@druid.apache.org by fj...@apache.org on 2019/04/20 03:39:57 UTC

[incubator-druid] branch master updated: Fix too many dentry cache slab objs#7508. (#7509)

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

fjy pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-druid.git


The following commit(s) were added to refs/heads/master by this push:
     new b59b9ef  Fix too many dentry cache slab objs#7508. (#7509)
b59b9ef is described below

commit b59b9ef8c7950f5c522b61e963979012d0cebccc
Author: Qi Chen <ka...@gmail.com>
AuthorDate: Sat Apr 20 11:39:50 2019 +0800

    Fix too many dentry cache slab objs#7508. (#7509)
---
 .../druid/query/groupby/epinephelinae/LimitedTemporaryStorage.java | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/processing/src/main/java/org/apache/druid/query/groupby/epinephelinae/LimitedTemporaryStorage.java b/processing/src/main/java/org/apache/druid/query/groupby/epinephelinae/LimitedTemporaryStorage.java
index d9f5d1d..3269d47 100644
--- a/processing/src/main/java/org/apache/druid/query/groupby/epinephelinae/LimitedTemporaryStorage.java
+++ b/processing/src/main/java/org/apache/druid/query/groupby/epinephelinae/LimitedTemporaryStorage.java
@@ -54,6 +54,8 @@ public class LimitedTemporaryStorage implements Closeable
 
   private volatile boolean closed = false;
 
+  private boolean createdStorageDirectory = false;
+
   public LimitedTemporaryStorage(File storageDirectory, long maxBytesUsed)
   {
     this.storageDirectory = storageDirectory;
@@ -81,6 +83,9 @@ public class LimitedTemporaryStorage implements Closeable
       }
 
       FileUtils.forceMkdir(storageDirectory);
+      if (!createdStorageDirectory) {
+        createdStorageDirectory = true;
+      }
 
       final File theFile = new File(storageDirectory, StringUtils.format("%08d.tmp", files.size()));
       final EnumSet<StandardOpenOption> openOptions = EnumSet.of(
@@ -126,7 +131,7 @@ public class LimitedTemporaryStorage implements Closeable
         delete(file);
       }
       files.clear();
-      if (storageDirectory.exists() && !storageDirectory.delete()) {
+      if (createdStorageDirectory && storageDirectory.exists() && !storageDirectory.delete()) {
         log.warn("Cannot delete storageDirectory: %s", storageDirectory);
       }
     }


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@druid.apache.org
For additional commands, e-mail: commits-help@druid.apache.org