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

jackietien pushed a commit to branch WarningLog
in repository https://gitbox.apache.org/repos/asf/iotdb.git

commit 94db24685fae20e4aa8c03f6a95dfb8da8d1c030
Author: JackieTien97 <[email protected]>
AuthorDate: Wed Jan 19 09:45:43 2022 +0800

    When opening too many file handlers, reduce warning logs print
---
 .../org/apache/iotdb/db/query/control/FileReaderManager.java   | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git 
a/server/src/main/java/org/apache/iotdb/db/query/control/FileReaderManager.java 
b/server/src/main/java/org/apache/iotdb/db/query/control/FileReaderManager.java
index 0046bf0..c6418ce 100644
--- 
a/server/src/main/java/org/apache/iotdb/db/query/control/FileReaderManager.java
+++ 
b/server/src/main/java/org/apache/iotdb/db/query/control/FileReaderManager.java
@@ -46,6 +46,12 @@ public class FileReaderManager {
   private static final int MAX_CACHED_FILE_SIZE = 30000;
 
   /**
+   * When number of file streams reached MAX_CACHED_FILE_SIZE, then we will 
print a warning log each
+   * PRINT_INTERVAL
+   */
+  private static final int PRINT_INTERVAL = 10000;
+
+  /**
    * the key of closedFileReaderMap is the file path and the value of 
closedFileReaderMap is the
    * corresponding reader.
    */
@@ -108,8 +114,8 @@ public class FileReaderManager {
     Map<String, TsFileSequenceReader> readerMap =
         !isClosed ? unclosedFileReaderMap : closedFileReaderMap;
     if (!readerMap.containsKey(filePath)) {
-
-      if (readerMap.size() >= MAX_CACHED_FILE_SIZE) {
+      int currentOpenedReaderCount = readerMap.size();
+      if (currentOpenedReaderCount >= MAX_CACHED_FILE_SIZE && 
(currentOpenedReaderCount % PRINT_INTERVAL == 0)) {
         logger.warn("Query has opened {} files !", readerMap.size());
       }
 

Reply via email to