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 07d0b622 Fix the deserialization of empty bloom filters (#360)
07d0b622 is described below
commit 07d0b6228e8d46298dc4f14108989455cec8b8eb
Author: Jiang Tian <[email protected]>
AuthorDate: Fri Jan 3 19:20:28 2025 +0800
Fix the deserialization of empty bloom filters (#360)
---
.../main/java/org/apache/tsfile/file/metadata/TsFileMetadata.java | 6 +++++-
.../java/org/apache/tsfile/file/metadata/TsFileMetadataTest.java | 4 ++++
.../src/test/java/org/apache/tsfile/file/metadata/utils/Utils.java | 6 +++++-
3 files changed, 14 insertions(+), 2 deletions(-)
diff --git
a/java/tsfile/src/main/java/org/apache/tsfile/file/metadata/TsFileMetadata.java
b/java/tsfile/src/main/java/org/apache/tsfile/file/metadata/TsFileMetadata.java
index 379a9036..16f1da5d 100644
---
a/java/tsfile/src/main/java/org/apache/tsfile/file/metadata/TsFileMetadata.java
+++
b/java/tsfile/src/main/java/org/apache/tsfile/file/metadata/TsFileMetadata.java
@@ -221,7 +221,7 @@ public class TsFileMetadata {
if (bloomFilter != null) {
byteLen += serializeBloomFilter(outputStream, bloomFilter);
} else {
- byteLen += ReadWriteIOUtils.write(0, outputStream);
+ byteLen += ReadWriteForEncodingUtils.writeUnsignedVarInt(0,
outputStream);
}
byteLen +=
@@ -284,4 +284,8 @@ public class TsFileMetadata {
public Map<String, TableSchema> getTableSchemaMap() {
return tableSchemaMap;
}
+
+ public Map<String, String> getTsFileProperties() {
+ return tsFileProperties;
+ }
}
diff --git
a/java/tsfile/src/test/java/org/apache/tsfile/file/metadata/TsFileMetadataTest.java
b/java/tsfile/src/test/java/org/apache/tsfile/file/metadata/TsFileMetadataTest.java
index cfac37e8..03e22e27 100644
---
a/java/tsfile/src/test/java/org/apache/tsfile/file/metadata/TsFileMetadataTest.java
+++
b/java/tsfile/src/test/java/org/apache/tsfile/file/metadata/TsFileMetadataTest.java
@@ -53,6 +53,10 @@ public class TsFileMetadataTest {
@Test
public void testWriteFileMetaData() {
TsFileMetadata tsfMetaData = TestHelper.createSimpleFileMetaData();
+ tsfMetaData.addProperty("encryptLevel", "0");
+ tsfMetaData.addProperty("encryptType",
"org.apache.tsfile.encrypt.UNENCRYPTED");
+ tsfMetaData.addProperty("encryptKey", "");
+ tsfMetaData.addProperty("d", "1");
serialized(tsfMetaData);
TsFileMetadata readMetaData = deSerialized();
Assert.assertTrue(Utils.isFileMetaDataEqual(tsfMetaData, readMetaData));
diff --git
a/java/tsfile/src/test/java/org/apache/tsfile/file/metadata/utils/Utils.java
b/java/tsfile/src/test/java/org/apache/tsfile/file/metadata/utils/Utils.java
index 91c2cbf2..dc37e00f 100644
--- a/java/tsfile/src/test/java/org/apache/tsfile/file/metadata/utils/Utils.java
+++ b/java/tsfile/src/test/java/org/apache/tsfile/file/metadata/utils/Utils.java
@@ -25,6 +25,8 @@ import
org.apache.tsfile.file.metadata.statistics.BooleanStatistics;
import org.apache.tsfile.file.metadata.statistics.IntegerStatistics;
import org.apache.tsfile.file.metadata.statistics.Statistics;
+import java.util.Objects;
+
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.fail;
@@ -58,7 +60,9 @@ public class Utils {
metadata1.getTableMetadataIndexNode(TestHelper.TEST_TABLE_NAME);
MetadataIndexNode metaDataIndex2 =
metadata2.getTableMetadataIndexNode(TestHelper.TEST_TABLE_NAME);
- return metaDataIndex1.getChildren().size() ==
metaDataIndex2.getChildren().size();
+
+ return Objects.equals(metadata1.getTsFileProperties(),
metadata2.getTsFileProperties())
+ && metaDataIndex1.getChildren().size() ==
metaDataIndex2.getChildren().size();
}
}
return false;