This is an automated email from the ASF dual-hosted git repository.
tanxinyu pushed a commit to branch rel_0.12_debug_compaction_stop
in repository https://gitbox.apache.org/repos/asf/iotdb.git
The following commit(s) were added to refs/heads/rel_0.12_debug_compaction_stop
by this push:
new 049554c add tsfileresource log
049554c is described below
commit 049554c042f5667ac6027e75a949ab0ea61901ad
Author: LebronAl <[email protected]>
AuthorDate: Thu Nov 11 12:22:22 2021 +0800
add tsfileresource log
---
.../db/engine/storagegroup/TsFileResource.java | 37 +++++++++++++++++++---
.../iotdb/db/query/control/FileReaderManager.java | 4 +--
2 files changed, 35 insertions(+), 6 deletions(-)
diff --git
a/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/TsFileResource.java
b/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/TsFileResource.java
index 14fb1fa..766cddc 100644
---
a/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/TsFileResource.java
+++
b/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/TsFileResource.java
@@ -450,8 +450,22 @@ public class TsFileResource {
originTsFileResource.readLock(holder);
}
readLockHolders.add(holder);
- logger.warn("read lock stack of {}", holder, new
RuntimeException("readLock"));
- logger.info("{} get the read lock of {}", holder, this.file);
+ logger.warn("read lock stack of {}, {}", holder, this.file, new
RuntimeException("readLock"));
+ }
+
+ public void readLockQueryId(String holder, long queryId) {
+ if (originTsFileResource == null) {
+ tsFileLock.readLock();
+ } else {
+ originTsFileResource.readLockQueryId(holder, queryId);
+ }
+ readLockHolders.add(holder);
+ logger.warn(
+ "read lock stack of {},{},{},",
+ holder,
+ queryId,
+ this.file,
+ new RuntimeException("readLock"));
}
public void readUnlock(String holder) {
@@ -461,8 +475,23 @@ public class TsFileResource {
originTsFileResource.readUnlock(holder);
}
readLockHolders.remove(holder);
- logger.warn("read unlock stack of {}", holder, new
RuntimeException("readLock"));
- logger.info("{} release the read lock of {}", holder, this.file);
+ logger.warn(
+ "read unlock stack of {}, {}", holder, this.file, new
RuntimeException("readUnLock"));
+ }
+
+ public void readUnlockQueryId(String holder, long queryId) {
+ if (originTsFileResource == null) {
+ tsFileLock.readUnlock();
+ } else {
+ originTsFileResource.readUnlockQueryId(holder, queryId);
+ }
+ readLockHolders.remove(holder);
+ logger.warn(
+ "read unlock stack of {},{},{},",
+ holder,
+ queryId,
+ this.file,
+ new RuntimeException("readUnLock"));
}
public boolean tryWriteLock(String holder) {
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 15463e3..1a42fff 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
@@ -193,7 +193,7 @@ public class FileReaderManager implements IService {
* of a reader equals zero, the reader can be closed and removed.
*/
void increaseFileReaderReference(TsFileResource tsFile, boolean isClosed,
long queryId) {
- tsFile.readLock("fileReaderReference");
+ tsFile.readLockQueryId("fileReaderReference", queryId);
synchronized (this) {
if (!isClosed) {
unclosedReferenceMap
@@ -219,7 +219,7 @@ public class FileReaderManager implements IService {
closedReferenceMap.get(tsFile.getTsFilePath()).remove(queryId);
}
}
- tsFile.readUnlock("fileReaderReference");
+ tsFile.readUnlockQueryId("fileReaderReference", queryId);
}
/**