This is an automated email from the ASF dual-hosted git repository. jiangtian pushed a commit to branch fix_close_last_reader in repository https://gitbox.apache.org/repos/asf/tsfile.git
commit 3e26aa039874a6c73f3d8d0538293c4aa07713c0 Author: Tian Jiang <[email protected]> AuthorDate: Mon Jun 16 10:28:28 2025 +0800 fix npe when closing a last reader that have not been used --- .../main/java/org/apache/tsfile/read/reader/TsFileLastReader.java | 2 +- .../java/org/apache/tsfile/read/reader/TsFileLastReaderTest.java | 7 +++++++ 2 files changed, 8 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..ade6d70e 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,11 @@ public class TsFileLastReaderTest { } file.delete(); } + + @Test + public void testCreateButNotRead() throws Exception { + createFile(10, 10, 10); + try (TsFileLastReader ignored = new TsFileLastReader(filePath)) { + } + } }
