This is an automated email from the ASF dual-hosted git repository.
jiangtian pushed a commit to branch iotdb
in repository https://gitbox.apache.org/repos/asf/tsfile.git
The following commit(s) were added to refs/heads/iotdb by this push:
new 27c0da26 Fix getValue method in Tablet doesn't support Date and
Timestamp type (#243)
27c0da26 is described below
commit 27c0da26bd46878465b58ecc198dc22386b3ea84
Author: Haonan <[email protected]>
AuthorDate: Fri Sep 20 10:27:14 2024 +0800
Fix getValue method in Tablet doesn't support Date and Timestamp type (#243)
* Fix getValue method in Tablet doesn't support Date and Timestamp type
* add UT
(cherry picked from commit d9c7a2b93dbc2cfb9ef479ea05691e5f40bf7466)
---
.../main/java/org/apache/tsfile/write/record/Tablet.java | 3 +++
.../java/org/apache/tsfile/write/record/TabletTest.java | 14 ++++++++++++--
2 files changed, 15 insertions(+), 2 deletions(-)
diff --git
a/java/tsfile/src/main/java/org/apache/tsfile/write/record/Tablet.java
b/java/tsfile/src/main/java/org/apache/tsfile/write/record/Tablet.java
index e0213197..253d99b6 100644
--- a/java/tsfile/src/main/java/org/apache/tsfile/write/record/Tablet.java
+++ b/java/tsfile/src/main/java/org/apache/tsfile/write/record/Tablet.java
@@ -946,7 +946,10 @@ public class Tablet {
case BOOLEAN:
return ((boolean[]) values[j])[i];
case INT64:
+ case TIMESTAMP:
return ((long[]) values[j])[i];
+ case DATE:
+ return ((LocalDate[]) values[j])[i];
default:
throw new IllegalArgumentException("Unsupported type: " +
schemas.get(j).getType());
}
diff --git
a/java/tsfile/src/test/java/org/apache/tsfile/write/record/TabletTest.java
b/java/tsfile/src/test/java/org/apache/tsfile/write/record/TabletTest.java
index b5dcd3b0..325fb301 100644
--- a/java/tsfile/src/test/java/org/apache/tsfile/write/record/TabletTest.java
+++ b/java/tsfile/src/test/java/org/apache/tsfile/write/record/TabletTest.java
@@ -68,7 +68,12 @@ public class TabletTest {
try {
final ByteBuffer byteBuffer = tablet.serialize();
final Tablet newTablet = Tablet.deserialize(byteBuffer);
- assertEquals(newTablet, tablet);
+ assertEquals(tablet, newTablet);
+ for (int i = 0; i < rowSize; i++) {
+ for (int j = 0; j < tablet.getSchemas().size(); j++) {
+ assertEquals(tablet.getValue(i, j), newTablet.getValue(i, j));
+ }
+ }
} catch (final Exception e) {
e.printStackTrace();
fail();
@@ -132,7 +137,12 @@ public class TabletTest {
try {
final ByteBuffer byteBuffer = tablet.serialize();
final Tablet newTablet = Tablet.deserialize(byteBuffer);
- assertEquals(newTablet, tablet);
+ assertEquals(tablet, newTablet);
+ for (int i = 0; i < rowSize; i++) {
+ for (int j = 0; j < tablet.getSchemas().size(); j++) {
+ assertEquals(tablet.getValue(i, j), newTablet.getValue(i, j));
+ }
+ }
} catch (final Exception e) {
e.printStackTrace();
fail();