This is an automated email from the ASF dual-hosted git repository.
rong pushed a commit to branch dev/1.3
in repository https://gitbox.apache.org/repos/asf/iotdb.git
The following commit(s) were added to refs/heads/dev/1.3 by this push:
new 52adf9a2837 Load: fix data loss when loading different files with same
name in the same directory (#15527) (#15543)
52adf9a2837 is described below
commit 52adf9a28373c3dddc023c6f06ea91bba2bca7fd
Author: Zikun Ma <[email protected]>
AuthorDate: Tue May 20 16:50:41 2025 +0800
Load: fix data loss when loading different files with same name in the same
directory (#15527) (#15543)
---
.../iotdb/db/queryengine/plan/analyze/LoadTsFileAnalyzer.java | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/analyze/LoadTsFileAnalyzer.java
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/analyze/LoadTsFileAnalyzer.java
index 2b16de9dd80..cb504aee9c5 100644
---
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/analyze/LoadTsFileAnalyzer.java
+++
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/analyze/LoadTsFileAnalyzer.java
@@ -455,10 +455,10 @@ public class LoadTsFileAnalyzer implements AutoCloseable {
while (timeseriesMetadataIterator.hasNext()) {
final Map<IDeviceID, List<TimeseriesMetadata>> device2TimeseriesMetadata
=
timeseriesMetadataIterator.next();
- if (!tsFileResource.resourceFileExists()) {
- TsFileResourceUtils.updateTsFileResource(device2TimeseriesMetadata,
tsFileResource);
-
schemaAutoCreatorAndVerifier.setCurrentTimeIndex(tsFileResource.getTimeIndex());
- }
+ // Update time index no matter if resource file exists or not, because
resource file may be
+ // untrusted
+ TsFileResourceUtils.updateTsFileResource(device2TimeseriesMetadata,
tsFileResource);
+
schemaAutoCreatorAndVerifier.setCurrentTimeIndex(tsFileResource.getTimeIndex());
if (isAutoCreateSchemaOrVerifySchemaEnabled) {
schemaAutoCreatorAndVerifier.autoCreateAndVerify(reader,
device2TimeseriesMetadata);