This is an automated email from the ASF dual-hosted git repository.
jiangtian pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/tsfile.git
The following commit(s) were added to refs/heads/develop by this push:
new 2995362e Fix npe when closing a last reader that have not been used
(#513)
2995362e is described below
commit 2995362e424afba83e98676901e88abacc27b610
Author: Jiang Tian <[email protected]>
AuthorDate: Mon Jun 16 11:40:53 2025 +0800
Fix npe when closing a last reader that have not been used (#513)
* fix npe when closing a last reader that have not been used
* spotless
---
.../main/java/org/apache/tsfile/read/reader/TsFileLastReader.java | 2 +-
.../java/org/apache/tsfile/read/reader/TsFileLastReaderTest.java | 6 ++++++
2 files changed, 7 insertions(+), 1 deletion(-)
diff --git
a/java/tsfile/src/main/java/org/apache/tsfile/read/reader/TsFileLastReader.java
b/java/tsfile/src/main/java/org/apache/tsfile/read/reader/TsFileLastReader.java
index f89b30df..312b73dd 100644
---
a/java/tsfile/src/main/java/org/apache/tsfile/read/reader/TsFileLastReader.java
+++
b/java/tsfile/src/main/java/org/apache/tsfile/read/reader/TsFileLastReader.java
@@ -305,7 +305,7 @@ public class TsFileLastReader
@Override
public void close() throws Exception {
- if (asyncIO) {
+ if (asyncIO && asyncTask != null) {
asyncTask.cancel(true);
}
sequenceReader.close();
diff --git
a/java/tsfile/src/test/java/org/apache/tsfile/read/reader/TsFileLastReaderTest.java
b/java/tsfile/src/test/java/org/apache/tsfile/read/reader/TsFileLastReaderTest.java
index 40b1cc8f..f04aeefb 100644
---
a/java/tsfile/src/test/java/org/apache/tsfile/read/reader/TsFileLastReaderTest.java
+++
b/java/tsfile/src/test/java/org/apache/tsfile/read/reader/TsFileLastReaderTest.java
@@ -358,4 +358,10 @@ public class TsFileLastReaderTest {
}
file.delete();
}
+
+ @Test
+ public void testCreateButNotRead() throws Exception {
+ createFile(10, 10, 10);
+ try (TsFileLastReader ignored = new TsFileLastReader(filePath)) {}
+ }
}