This is an automated email from the ASF dual-hosted git repository.
zyk pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/iotdb.git
The following commit(s) were added to refs/heads/master by this push:
new 76d66786814 Rename ViewType values to VIEW/BASE (#10191) (#10206)
76d66786814 is described below
commit 76d667868142905c84f15618b6694d3daaa3167c
Author: Chen YZ <[email protected]>
AuthorDate: Mon Jun 19 14:12:59 2023 +0800
Rename ViewType values to VIEW/BASE (#10191) (#10206)
---
.../iotdb/db/it/schema/IoTDBExtendTemplateIT.java | 32 ++++-----
.../iotdb/db/it/schema/IoTDBMetadataFetchIT.java | 56 ++++++++--------
.../it/schema/view/IoTDBCreateAndShowViewIT.java | 72 ++++++++++----------
.../iotdb/zeppelin/it/IoTDBInterpreterIT.java | 12 ++--
iotdb-client/client-py/tests/test_dataframe.py | 2 +-
.../iotdb/commons/schema/filter/SchemaFilter.java | 12 +++-
...FilterVisitor.java => SchemaFilterFactory.java} | 45 ++++++-------
.../commons/schema/filter/SchemaFilterType.java | 9 ++-
.../commons/schema/filter/SchemaFilterVisitor.java | 28 +++++---
.../impl/{DataTypeFilter.java => AndFilter.java} | 41 +++++++-----
.../commons/schema/filter/impl/DataTypeFilter.java | 6 +-
.../schema/filter/impl/PathContainsFilter.java | 8 +--
.../commons/schema/filter/impl/TagFilter.java | 6 +-
.../{DataTypeFilter.java => ViewTypeFilter.java} | 32 ++++-----
.../apache/iotdb/commons/schema/view/ViewType.java | 67 +++++++++++++++++++
.../impl/read/SchemaRegionReadPlanFactory.java | 9 ++-
.../db/metadata/visitor/DeviceFilterVisitor.java | 6 +-
.../metadata/visitor/TimeseriesFilterVisitor.java | 15 +++--
.../schema/source/LogicalViewSchemaSource.java | 77 ++++------------------
.../schema/source/TimeSeriesSchemaSource.java | 7 +-
.../iotdb/db/mpp/plan/parser/ASTVisitor.java | 14 ++--
.../schemaRegion/SchemaRegionBasicTest.java | 25 ++++---
22 files changed, 320 insertions(+), 261 deletions(-)
diff --git
a/integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBExtendTemplateIT.java
b/integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBExtendTemplateIT.java
index ec0823e85bc..859a7e6ee85 100644
---
a/integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBExtendTemplateIT.java
+++
b/integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBExtendTemplateIT.java
@@ -101,10 +101,10 @@ public class IoTDBExtendTemplateIT extends
AbstractSchemaIT {
new Set[] {
new HashSet<>(
Arrays.asList(
-
"root.db.d1.s1,null,root.db,INT64,PLAIN,SNAPPY,null,null,null,null,,",
-
"root.db.d1.s2,null,root.db,DOUBLE,RLE,SNAPPY,null,null,null,null,,",
-
"root.db.d1.s3,null,root.db,INT64,RLE,SNAPPY,null,null,null,null,,",
-
"root.db.d1.s4,null,root.db,DOUBLE,GORILLA,SNAPPY,null,null,null,null,,"))
+
"root.db.d1.s1,null,root.db,INT64,PLAIN,SNAPPY,null,null,null,null,BASE,",
+
"root.db.d1.s2,null,root.db,DOUBLE,RLE,SNAPPY,null,null,null,null,BASE,",
+
"root.db.d1.s3,null,root.db,INT64,RLE,SNAPPY,null,null,null,null,BASE,",
+
"root.db.d1.s4,null,root.db,DOUBLE,GORILLA,SNAPPY,null,null,null,null,BASE,"))
};
for (int n = 0; n < sqls.length; n++) {
String sql = sqls[n];
@@ -154,18 +154,18 @@ public class IoTDBExtendTemplateIT extends
AbstractSchemaIT {
new Set[] {
new HashSet<>(
Arrays.asList(
-
"root.db.d1.s1,null,root.db,INT64,PLAIN,SNAPPY,null,null,null,null,,",
-
"root.db.d1.s2,null,root.db,DOUBLE,RLE,SNAPPY,null,null,null,null,,",
-
"root.db.d1.s3,null,root.db,FLOAT,GORILLA,SNAPPY,null,null,null,null,,",
-
"root.db.d1.s4,null,root.db,FLOAT,GORILLA,SNAPPY,null,null,null,null,,",
-
"root.db.d1.s5,null,root.db,FLOAT,GORILLA,SNAPPY,null,null,null,null,,",
-
"root.db.d2.s1,null,root.db,INT64,PLAIN,SNAPPY,null,null,null,null,,",
-
"root.db.d2.s2,null,root.db,DOUBLE,RLE,SNAPPY,null,null,null,null,,",
-
"root.db.d2.s3,null,root.db,FLOAT,GORILLA,SNAPPY,null,null,null,null,,",
-
"root.db.d2.s4,null,root.db,FLOAT,GORILLA,SNAPPY,null,null,null,null,,",
-
"root.db.d2.s5,null,root.db,FLOAT,GORILLA,SNAPPY,null,null,null,null,,",
-
"root.db1.d1.s2,null,root.db1,FLOAT,GORILLA,SNAPPY,null,null,null,null,,",
-
"root.db1.d1.s3,null,root.db1,FLOAT,GORILLA,SNAPPY,null,null,null,null,,"))
+
"root.db.d1.s1,null,root.db,INT64,PLAIN,SNAPPY,null,null,null,null,BASE,",
+
"root.db.d1.s2,null,root.db,DOUBLE,RLE,SNAPPY,null,null,null,null,BASE,",
+
"root.db.d1.s3,null,root.db,FLOAT,GORILLA,SNAPPY,null,null,null,null,BASE,",
+
"root.db.d1.s4,null,root.db,FLOAT,GORILLA,SNAPPY,null,null,null,null,BASE,",
+
"root.db.d1.s5,null,root.db,FLOAT,GORILLA,SNAPPY,null,null,null,null,BASE,",
+
"root.db.d2.s1,null,root.db,INT64,PLAIN,SNAPPY,null,null,null,null,BASE,",
+
"root.db.d2.s2,null,root.db,DOUBLE,RLE,SNAPPY,null,null,null,null,BASE,",
+
"root.db.d2.s3,null,root.db,FLOAT,GORILLA,SNAPPY,null,null,null,null,BASE,",
+
"root.db.d2.s4,null,root.db,FLOAT,GORILLA,SNAPPY,null,null,null,null,BASE,",
+
"root.db.d2.s5,null,root.db,FLOAT,GORILLA,SNAPPY,null,null,null,null,BASE,",
+
"root.db1.d1.s2,null,root.db1,FLOAT,GORILLA,SNAPPY,null,null,null,null,BASE,",
+
"root.db1.d1.s3,null,root.db1,FLOAT,GORILLA,SNAPPY,null,null,null,null,BASE,"))
};
for (int n = 0; n < sqls.length; n++) {
String sql = sqls[n];
diff --git
a/integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBMetadataFetchIT.java
b/integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBMetadataFetchIT.java
index 552efcbeff6..cbd2e1f1045 100644
---
a/integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBMetadataFetchIT.java
+++
b/integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBMetadataFetchIT.java
@@ -126,40 +126,40 @@ public class IoTDBMetadataFetchIT extends
AbstractSchemaIT {
new Set[] {
new HashSet<>(
Collections.singletonList(
-
"root.ln.wf01.wt01.status,null,root.ln.wf01.wt01,BOOLEAN,PLAIN,SNAPPY,null,null,null,null,,")),
+
"root.ln.wf01.wt01.status,null,root.ln.wf01.wt01,BOOLEAN,PLAIN,SNAPPY,null,null,null,null,BASE,")),
new HashSet<>(
Arrays.asList(
-
"root.ln.wf01.wt01.status,null,root.ln.wf01.wt01,BOOLEAN,PLAIN,SNAPPY,null,null,null,null,,",
-
"root.ln.wf01.wt01.temperature,null,root.ln.wf01.wt01,FLOAT,RLE,SNAPPY,null,null,null,null,,",
-
"root.ln.wf01.wt02.s1,null,root.ln.wf01.wt02,INT32,RLE,SNAPPY,null,null,null,null,,",
-
"root.ln.wf01.wt02.s2,null,root.ln.wf01.wt02,DOUBLE,GORILLA,SNAPPY,null,null,null,null,,")),
+
"root.ln.wf01.wt01.status,null,root.ln.wf01.wt01,BOOLEAN,PLAIN,SNAPPY,null,null,null,null,BASE,",
+
"root.ln.wf01.wt01.temperature,null,root.ln.wf01.wt01,FLOAT,RLE,SNAPPY,null,null,null,null,BASE,",
+
"root.ln.wf01.wt02.s1,null,root.ln.wf01.wt02,INT32,RLE,SNAPPY,null,null,null,null,BASE,",
+
"root.ln.wf01.wt02.s2,null,root.ln.wf01.wt02,DOUBLE,GORILLA,SNAPPY,null,null,null,null,BASE,")),
new HashSet<>(
Arrays.asList(
-
"root.ln.wf01.wt01.status,null,root.ln.wf01.wt01,BOOLEAN,PLAIN,SNAPPY,null,null,null,null,,",
-
"root.ln.wf01.wt01.temperature,null,root.ln.wf01.wt01,FLOAT,RLE,SNAPPY,null,null,null,null,,")),
+
"root.ln.wf01.wt01.status,null,root.ln.wf01.wt01,BOOLEAN,PLAIN,SNAPPY,null,null,null,null,BASE,",
+
"root.ln.wf01.wt01.temperature,null,root.ln.wf01.wt01,FLOAT,RLE,SNAPPY,null,null,null,null,BASE,")),
new HashSet<>(
Arrays.asList(
-
"root.ln.wf01.wt01.status,null,root.ln.wf01.wt01,BOOLEAN,PLAIN,SNAPPY,null,null,null,null,,",
-
"root.ln.wf01.wt01.temperature,null,root.ln.wf01.wt01,FLOAT,RLE,SNAPPY,null,null,null,null,,",
-
"root.ln.wf01.wt02.s1,null,root.ln.wf01.wt02,INT32,RLE,SNAPPY,null,null,null,null,,",
-
"root.ln.wf01.wt02.s2,null,root.ln.wf01.wt02,DOUBLE,GORILLA,SNAPPY,null,null,null,null,,",
-
"root.ln1.wf01.wt01.status,null,root.ln1.wf01.wt01,BOOLEAN,PLAIN,SNAPPY,null,null,null,null,,",
-
"root.ln1.wf01.wt01.temperature,null,root.ln1.wf01.wt01,FLOAT,RLE,SNAPPY,null,null,null,null,,",
-
"root.ln2.wf01.wt01.status,null,root.ln2.wf01.wt01,BOOLEAN,PLAIN,SNAPPY,null,null,null,null,,",
-
"root.ln2.wf01.wt01.temperature,null,root.ln2.wf01.wt01,FLOAT,RLE,SNAPPY,null,null,null,null,,")),
+
"root.ln.wf01.wt01.status,null,root.ln.wf01.wt01,BOOLEAN,PLAIN,SNAPPY,null,null,null,null,BASE,",
+
"root.ln.wf01.wt01.temperature,null,root.ln.wf01.wt01,FLOAT,RLE,SNAPPY,null,null,null,null,BASE,",
+
"root.ln.wf01.wt02.s1,null,root.ln.wf01.wt02,INT32,RLE,SNAPPY,null,null,null,null,BASE,",
+
"root.ln.wf01.wt02.s2,null,root.ln.wf01.wt02,DOUBLE,GORILLA,SNAPPY,null,null,null,null,BASE,",
+
"root.ln1.wf01.wt01.status,null,root.ln1.wf01.wt01,BOOLEAN,PLAIN,SNAPPY,null,null,null,null,BASE,",
+
"root.ln1.wf01.wt01.temperature,null,root.ln1.wf01.wt01,FLOAT,RLE,SNAPPY,null,null,null,null,BASE,",
+
"root.ln2.wf01.wt01.status,null,root.ln2.wf01.wt01,BOOLEAN,PLAIN,SNAPPY,null,null,null,null,BASE,",
+
"root.ln2.wf01.wt01.temperature,null,root.ln2.wf01.wt01,FLOAT,RLE,SNAPPY,null,null,null,null,BASE,")),
new HashSet<>(),
new HashSet<>(
Arrays.asList(
-
"root.ln.wf01.wt01.status,null,root.ln.wf01.wt01,BOOLEAN,PLAIN,SNAPPY,null,null,null,null,,",
-
"root.ln1.wf01.wt01.status,null,root.ln1.wf01.wt01,BOOLEAN,PLAIN,SNAPPY,null,null,null,null,,",
-
"root.ln2.wf01.wt01.status,null,root.ln2.wf01.wt01,BOOLEAN,PLAIN,SNAPPY,null,null,null,null,,")),
+
"root.ln.wf01.wt01.status,null,root.ln.wf01.wt01,BOOLEAN,PLAIN,SNAPPY,null,null,null,null,BASE,",
+
"root.ln1.wf01.wt01.status,null,root.ln1.wf01.wt01,BOOLEAN,PLAIN,SNAPPY,null,null,null,null,BASE,",
+
"root.ln2.wf01.wt01.status,null,root.ln2.wf01.wt01,BOOLEAN,PLAIN,SNAPPY,null,null,null,null,BASE,")),
new HashSet<>(
Arrays.asList(
-
"root.ln.wf01.wt01.status,null,root.ln.wf01.wt01,BOOLEAN,PLAIN,SNAPPY,null,null,null,null,,",
-
"root.ln.wf01.wt01.temperature,null,root.ln.wf01.wt01,FLOAT,RLE,SNAPPY,null,null,null,null,,")),
+
"root.ln.wf01.wt01.status,null,root.ln.wf01.wt01,BOOLEAN,PLAIN,SNAPPY,null,null,null,null,BASE,",
+
"root.ln.wf01.wt01.temperature,null,root.ln.wf01.wt01,FLOAT,RLE,SNAPPY,null,null,null,null,BASE,")),
new HashSet<>(
Collections.singletonList(
-
"root.ln.wf01.wt01.status,null,root.ln.wf01.wt01,BOOLEAN,PLAIN,SNAPPY,null,null,null,null,,"))
+
"root.ln.wf01.wt01.status,null,root.ln.wf01.wt01,BOOLEAN,PLAIN,SNAPPY,null,null,null,null,BASE,"))
};
for (int n = 0; n < sqls.length; n++) {
String sql = sqls[n];
@@ -715,8 +715,8 @@ public class IoTDBMetadataFetchIT extends AbstractSchemaIT {
"create aligned timeseries root.sg.d(s1(alias1) int32
tags('tag1'='v1', 'tag2'='v2'), s2 double attributes('attr3'='v3'))");
String[] expected =
new String[] {
-
"root.sg.d.s1,alias1,root.sg,INT32,RLE,SNAPPY,{\"tag1\":\"v1\",\"tag2\":\"v2\"},null,null,null,,",
-
"root.sg.d.s2,null,root.sg,DOUBLE,GORILLA,SNAPPY,null,{\"attr3\":\"v3\"},null,null,,"
+
"root.sg.d.s1,alias1,root.sg,INT32,RLE,SNAPPY,{\"tag1\":\"v1\",\"tag2\":\"v2\"},null,null,null,BASE,",
+
"root.sg.d.s2,null,root.sg,DOUBLE,GORILLA,SNAPPY,null,{\"attr3\":\"v3\"},null,null,BASE,"
};
int num = 0;
@@ -745,8 +745,8 @@ public class IoTDBMetadataFetchIT extends AbstractSchemaIT {
Set<String> standard =
new HashSet<>(
Arrays.asList(
-
"root.ln.wf01.wt01.temperature,null,root.ln.wf01.wt01,FLOAT,RLE,SNAPPY,null,null,null,null,,",
-
"root.ln.wf01.wt01.status,null,root.ln.wf01.wt01,BOOLEAN,PLAIN,SNAPPY,null,null,null,null,,"));
+
"root.ln.wf01.wt01.temperature,null,root.ln.wf01.wt01,FLOAT,RLE,SNAPPY,null,null,null,null,BASE,",
+
"root.ln.wf01.wt01.status,null,root.ln.wf01.wt01,BOOLEAN,PLAIN,SNAPPY,null,null,null,null,BASE,"));
try (ResultSet resultSet = statement.executeQuery(sql)) {
ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
while (resultSet.next()) {
@@ -783,9 +783,9 @@ public class IoTDBMetadataFetchIT extends AbstractSchemaIT {
Set<String> standard =
new HashSet<>(
Arrays.asList(
-
"root.sg1.d0.s0,null,root.sg1,INT32,RLE,SNAPPY,null,null,null,null,,\n",
-
"root.sg1.d0.s1,null,root.sg1,INT32,PLAIN,SNAPPY,null,null,SDT,{compdev=2},,\n",
-
"root.sg1.d0.s2,null,root.sg1,INT32,PLAIN,SNAPPY,null,null,SDT,{compdev=0.01,
compmintime=2, compmaxtime=15},,\n"));
+
"root.sg1.d0.s0,null,root.sg1,INT32,RLE,SNAPPY,null,null,null,null,BASE,\n",
+
"root.sg1.d0.s1,null,root.sg1,INT32,PLAIN,SNAPPY,null,null,SDT,{compdev=2},BASE,\n",
+
"root.sg1.d0.s2,null,root.sg1,INT32,PLAIN,SNAPPY,null,null,SDT,{compdev=0.01,
compmintime=2, compmaxtime=15},BASE,\n"));
try (ResultSet resultSet = statement.executeQuery("SHOW TIMESERIES
root.sg1.d0.*")) {
ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
while (resultSet.next()) {
diff --git
a/integration-test/src/test/java/org/apache/iotdb/db/it/schema/view/IoTDBCreateAndShowViewIT.java
b/integration-test/src/test/java/org/apache/iotdb/db/it/schema/view/IoTDBCreateAndShowViewIT.java
index 758ffad2209..e86f26fd36b 100644
---
a/integration-test/src/test/java/org/apache/iotdb/db/it/schema/view/IoTDBCreateAndShowViewIT.java
+++
b/integration-test/src/test/java/org/apache/iotdb/db/it/schema/view/IoTDBCreateAndShowViewIT.java
@@ -101,10 +101,10 @@ public class IoTDBCreateAndShowViewIT {
Set<String> retSet =
new HashSet<>(
Arrays.asList(
- "root.db.d01.s01,null,root.db,INT32,RLE,SNAPPY,null,null,;",
- "root.db.d01.s02,null,root.db,INT32,RLE,SNAPPY,null,null,;",
- "root.db.d02.s01,null,root.db,INT32,RLE,SNAPPY,null,null,;",
- "root.db.d02.s02,null,root.db,INT32,RLE,SNAPPY,null,null,;"));
+
"root.db.d01.s01,null,root.db,INT32,RLE,SNAPPY,null,null,BASE;",
+
"root.db.d01.s02,null,root.db,INT32,RLE,SNAPPY,null,null,BASE;",
+
"root.db.d02.s01,null,root.db,INT32,RLE,SNAPPY,null,null,BASE;",
+
"root.db.d02.s02,null,root.db,INT32,RLE,SNAPPY,null,null,BASE;"));
try (Connection connection = EnvFactory.getEnv().getConnection();
Statement statement = connection.createStatement()) {
@@ -150,10 +150,10 @@ public class IoTDBCreateAndShowViewIT {
Set<String> retSet =
new HashSet<>(
Arrays.asList(
-
"root.view.myview.d01.s01,null,root.view,INT32,null,null,{\"tag1\":\"value1\",\"tag2\":\"value2\"},{\"attribute1\":\"value1\"},logical;",
-
"root.view.myview.d01.s02,null,root.view,INT32,null,null,null,null,logical;",
-
"root.view.myview.d02.s01,null,root.view,INT32,null,null,{\"tag1\":\"value2\",\"tag2\":\"value3\"},{\"attribute1\":\"value1\"},logical;",
-
"root.view.myview.d02.s02,null,root.view,INT32,null,null,null,null,logical;"));
+
"root.view.myview.d01.s01,null,root.view,INT32,null,null,{\"tag1\":\"value1\",\"tag2\":\"value2\"},{\"attribute1\":\"value1\"},VIEW;",
+
"root.view.myview.d01.s02,null,root.view,INT32,null,null,null,null,VIEW;",
+
"root.view.myview.d02.s01,null,root.view,INT32,null,null,{\"tag1\":\"value2\",\"tag2\":\"value3\"},{\"attribute1\":\"value1\"},VIEW;",
+
"root.view.myview.d02.s02,null,root.view,INT32,null,null,null,null,VIEW;"));
try (Connection connection = EnvFactory.getEnv().getConnection();
Statement statement = connection.createStatement()) {
@@ -199,10 +199,10 @@ public class IoTDBCreateAndShowViewIT {
Set<String> retSet =
new HashSet<>(
Arrays.asList(
-
"root.view.cal_view.avg,null,root.view,DOUBLE,null,null,null,null,logical;",
-
"root.view.cal_view.multiple,null,root.view,DOUBLE,null,null,null,null,logical;",
-
"root.view.cal_view.divide,null,root.view,DOUBLE,null,null,null,null,logical;",
-
"root.view.cal_view.cast_view,null,root.view,TEXT,null,null,null,null,logical;"));
+
"root.view.cal_view.avg,null,root.view,DOUBLE,null,null,null,null,VIEW;",
+
"root.view.cal_view.multiple,null,root.view,DOUBLE,null,null,null,null,VIEW;",
+
"root.view.cal_view.divide,null,root.view,DOUBLE,null,null,null,null,VIEW;",
+
"root.view.cal_view.cast_view,null,root.view,TEXT,null,null,null,null,VIEW;"));
try (Connection connection = EnvFactory.getEnv().getConnection();
Statement statement = connection.createStatement()) {
@@ -248,10 +248,10 @@ public class IoTDBCreateAndShowViewIT {
Set<String> retSet =
new HashSet<>(
Arrays.asList(
-
"root.view.multi_view.all_in_one.d01_s01,null,root.view,INT32,null,null,null,null,logical;",
-
"root.view.multi_view.all_in_one.d01_s02,null,root.view,INT32,null,null,null,null,logical;",
-
"root.view.multi_view.all_in_one.d02_s01,null,root.view,INT32,null,null,null,null,logical;",
-
"root.view.multi_view.all_in_one.d02_s02,null,root.view,INT32,null,null,null,null,logical;"));
+
"root.view.multi_view.all_in_one.d01_s01,null,root.view,INT32,null,null,null,null,VIEW;",
+
"root.view.multi_view.all_in_one.d01_s02,null,root.view,INT32,null,null,null,null,VIEW;",
+
"root.view.multi_view.all_in_one.d02_s01,null,root.view,INT32,null,null,null,null,VIEW;",
+
"root.view.multi_view.all_in_one.d02_s02,null,root.view,INT32,null,null,null,null,VIEW;"));
try (Connection connection = EnvFactory.getEnv().getConnection();
Statement statement = connection.createStatement()) {
@@ -297,10 +297,10 @@ public class IoTDBCreateAndShowViewIT {
Set<String> retSet =
new HashSet<>(
Arrays.asList(
-
"root.view.copy_view.d01.s01,null,root.view,INT32,null,null,null,null,logical;",
-
"root.view.copy_view.d01.s02,null,root.view,INT32,null,null,null,null,logical;",
-
"root.view.copy_view.d02.s01,null,root.view,INT32,null,null,null,null,logical;",
-
"root.view.copy_view.d02.s02,null,root.view,INT32,null,null,null,null,logical;"));
+
"root.view.copy_view.d01.s01,null,root.view,INT32,null,null,null,null,VIEW;",
+
"root.view.copy_view.d01.s02,null,root.view,INT32,null,null,null,null,VIEW;",
+
"root.view.copy_view.d02.s01,null,root.view,INT32,null,null,null,null,VIEW;",
+
"root.view.copy_view.d02.s02,null,root.view,INT32,null,null,null,null,VIEW;"));
try (Connection connection = EnvFactory.getEnv().getConnection();
Statement statement = connection.createStatement()) {
@@ -348,22 +348,22 @@ public class IoTDBCreateAndShowViewIT {
Set<String> retSet =
new HashSet<>(
Arrays.asList(
-
"root.view.myview.d01.s01,root.view,INT32,{\"tag1\":\"value1\",\"tag2\":\"value2\"},{\"attribute1\":\"value1\"},logical,root.db.d01.s01;",
-
"root.view.myview.d01.s02,root.view,INT32,null,null,logical,root.db.d01.s02;",
-
"root.view.myview.d02.s01,root.view,INT32,{\"tag1\":\"value2\",\"tag2\":\"value3\"},{\"attribute1\":\"value1\"},logical,root.db.d02.s01;",
-
"root.view.myview.d02.s02,root.view,INT32,null,null,logical,root.db.d02.s02;",
-
"root.view.cal_view.avg,root.view,DOUBLE,null,null,logical,(root.db.d01.s01 +
root.db.d01.s02) / 2;",
-
"root.view.cal_view.multiple,root.view,DOUBLE,null,null,logical,root.db.d02.s01
* root.db.d02.s02;",
-
"root.view.cal_view.divide,root.view,DOUBLE,null,null,logical,root.db.d02.s01 /
root.db.d02.s02;",
-
"root.view.cal_view.cast_view,root.view,TEXT,null,null,logical,cast(type=TEXT)(root.db.d01.s01);",
-
"root.view.multi_view.all_in_one.d01_s01,root.view,INT32,null,null,logical,root.db.d01.s01;",
-
"root.view.multi_view.all_in_one.d01_s02,root.view,INT32,null,null,logical,root.db.d01.s02;",
-
"root.view.multi_view.all_in_one.d02_s01,root.view,INT32,null,null,logical,root.db.d02.s01;",
-
"root.view.multi_view.all_in_one.d02_s02,root.view,INT32,null,null,logical,root.db.d02.s02;",
-
"root.view.copy_view.d01.s01,root.view,INT32,null,null,logical,root.db.d01.s01;",
-
"root.view.copy_view.d01.s02,root.view,INT32,null,null,logical,root.db.d01.s02;",
-
"root.view.copy_view.d02.s01,root.view,INT32,null,null,logical,root.db.d02.s01;",
-
"root.view.copy_view.d02.s02,root.view,INT32,null,null,logical,root.db.d02.s02;"));
+
"root.view.myview.d01.s01,root.view,INT32,{\"tag1\":\"value1\",\"tag2\":\"value2\"},{\"attribute1\":\"value1\"},VIEW,root.db.d01.s01;",
+
"root.view.myview.d01.s02,root.view,INT32,null,null,VIEW,root.db.d01.s02;",
+
"root.view.myview.d02.s01,root.view,INT32,{\"tag1\":\"value2\",\"tag2\":\"value3\"},{\"attribute1\":\"value1\"},VIEW,root.db.d02.s01;",
+
"root.view.myview.d02.s02,root.view,INT32,null,null,VIEW,root.db.d02.s02;",
+
"root.view.cal_view.avg,root.view,DOUBLE,null,null,VIEW,(root.db.d01.s01 +
root.db.d01.s02) / 2;",
+
"root.view.cal_view.multiple,root.view,DOUBLE,null,null,VIEW,root.db.d02.s01 *
root.db.d02.s02;",
+
"root.view.cal_view.divide,root.view,DOUBLE,null,null,VIEW,root.db.d02.s01 /
root.db.d02.s02;",
+
"root.view.cal_view.cast_view,root.view,TEXT,null,null,VIEW,cast(type=TEXT)(root.db.d01.s01);",
+
"root.view.multi_view.all_in_one.d01_s01,root.view,INT32,null,null,VIEW,root.db.d01.s01;",
+
"root.view.multi_view.all_in_one.d01_s02,root.view,INT32,null,null,VIEW,root.db.d01.s02;",
+
"root.view.multi_view.all_in_one.d02_s01,root.view,INT32,null,null,VIEW,root.db.d02.s01;",
+
"root.view.multi_view.all_in_one.d02_s02,root.view,INT32,null,null,VIEW,root.db.d02.s02;",
+
"root.view.copy_view.d01.s01,root.view,INT32,null,null,VIEW,root.db.d01.s01;",
+
"root.view.copy_view.d01.s02,root.view,INT32,null,null,VIEW,root.db.d01.s02;",
+
"root.view.copy_view.d02.s01,root.view,INT32,null,null,VIEW,root.db.d02.s01;",
+
"root.view.copy_view.d02.s02,root.view,INT32,null,null,VIEW,root.db.d02.s02;"));
try (Connection connection = EnvFactory.getEnv().getConnection();
Statement statement = connection.createStatement()) {
diff --git
a/integration-test/src/test/java/org/apache/iotdb/zeppelin/it/IoTDBInterpreterIT.java
b/integration-test/src/test/java/org/apache/iotdb/zeppelin/it/IoTDBInterpreterIT.java
index 514b66c13e9..f88537b2b9b 100644
---
a/integration-test/src/test/java/org/apache/iotdb/zeppelin/it/IoTDBInterpreterIT.java
+++
b/integration-test/src/test/java/org/apache/iotdb/zeppelin/it/IoTDBInterpreterIT.java
@@ -308,12 +308,12 @@ public class IoTDBInterpreterIT {
InterpreterResult actual = interpreter.internalInterpret("show
timeseries", null);
String gt =
"Timeseries\tAlias\tDatabase\tDataType\tEncoding\tCompression\tTags\tAttributes\tDeadband\tDeadbandParameters\tViewType\n"
- +
"root.test.wf01.wt01.temperature\tnull\troot.test.wf01\tFLOAT\tGORILLA\tSNAPPY\tnull\tnull\tnull\tnull\t\n"
- +
"root.test.wf01.wt01.status\tnull\troot.test.wf01\tBOOLEAN\tRLE\tSNAPPY\tnull\tnull\tnull\tnull\t\n"
- +
"root.test.wf01.wt01.hardware\tnull\troot.test.wf01\tFLOAT\tGORILLA\tSNAPPY\tnull\tnull\tnull\tnull\t\n"
- +
"root.test.wf02.wt02.temperature\tnull\troot.test.wf02\tFLOAT\tGORILLA\tSNAPPY\tnull\tnull\tnull\tnull\t\n"
- +
"root.test.wf02.wt02.status\tnull\troot.test.wf02\tBOOLEAN\tRLE\tSNAPPY\tnull\tnull\tnull\tnull\t\n"
- +
"root.test.wf02.wt02.hardware\tnull\troot.test.wf02\tFLOAT\tGORILLA\tSNAPPY\tnull\tnull\tnull\tnull\t";
+ +
"root.test.wf01.wt01.temperature\tnull\troot.test.wf01\tFLOAT\tGORILLA\tSNAPPY\tnull\tnull\tnull\tnull\tBASE\n"
+ +
"root.test.wf01.wt01.status\tnull\troot.test.wf01\tBOOLEAN\tRLE\tSNAPPY\tnull\tnull\tnull\tnull\tBASE\n"
+ +
"root.test.wf01.wt01.hardware\tnull\troot.test.wf01\tFLOAT\tGORILLA\tSNAPPY\tnull\tnull\tnull\tnull\tBASE\n"
+ +
"root.test.wf02.wt02.temperature\tnull\troot.test.wf02\tFLOAT\tGORILLA\tSNAPPY\tnull\tnull\tnull\tnull\tBASE\n"
+ +
"root.test.wf02.wt02.status\tnull\troot.test.wf02\tBOOLEAN\tRLE\tSNAPPY\tnull\tnull\tnull\tnull\tBASE\n"
+ +
"root.test.wf02.wt02.hardware\tnull\troot.test.wf02\tFLOAT\tGORILLA\tSNAPPY\tnull\tnull\tnull\tnull\tBASE";
Assert.assertNotNull(actual);
Assert.assertEquals(Code.SUCCESS, actual.code());
Assert.assertEquals(gt, actual.message().get(0).getData());
diff --git a/iotdb-client/client-py/tests/test_dataframe.py
b/iotdb-client/client-py/tests/test_dataframe.py
index 7cdabac6e00..d7dfcf78f2d 100644
--- a/iotdb-client/client-py/tests/test_dataframe.py
+++ b/iotdb-client/client-py/tests/test_dataframe.py
@@ -87,7 +87,7 @@ def test_non_time_query():
None,
None,
None,
- "",
+ "BASE",
]
],
)
diff --git
a/node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/SchemaFilter.java
b/node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/SchemaFilter.java
index ccf9708c66b..21189924030 100644
---
a/node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/SchemaFilter.java
+++
b/node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/SchemaFilter.java
@@ -18,9 +18,11 @@
*/
package org.apache.iotdb.commons.schema.filter;
+import org.apache.iotdb.commons.schema.filter.impl.AndFilter;
import org.apache.iotdb.commons.schema.filter.impl.DataTypeFilter;
import org.apache.iotdb.commons.schema.filter.impl.PathContainsFilter;
import org.apache.iotdb.commons.schema.filter.impl.TagFilter;
+import org.apache.iotdb.commons.schema.filter.impl.ViewTypeFilter;
import org.apache.iotdb.tsfile.utils.ReadWriteIOUtils;
import java.io.DataOutputStream;
@@ -60,16 +62,20 @@ public abstract class SchemaFilter {
return new PathContainsFilter(byteBuffer);
case DATA_TYPE:
return new DataTypeFilter(byteBuffer);
+ case VIEW_TYPE:
+ return new ViewTypeFilter(byteBuffer);
+ case AND:
+ return new AndFilter(byteBuffer);
default:
throw new IllegalArgumentException("Unsupported schema filter type: "
+ type);
}
}
- public abstract <R, C> R accept(SchemaFilterVisitor<R, C> visitor, C node);
+ public abstract <C> boolean accept(SchemaFilterVisitor<C> visitor, C node);
public abstract SchemaFilterType getSchemaFilterType();
- protected abstract void serialize(ByteBuffer byteBuffer);
+ public abstract void serialize(ByteBuffer byteBuffer);
- protected abstract void serialize(DataOutputStream stream) throws
IOException;
+ public abstract void serialize(DataOutputStream stream) throws IOException;
}
diff --git
a/node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/SchemaFilterVisitor.java
b/node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/SchemaFilterFactory.java
similarity index 52%
copy from
node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/SchemaFilterVisitor.java
copy to
node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/SchemaFilterFactory.java
index 2c32e8a7129..84dcc5b8a2a 100644
---
a/node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/SchemaFilterVisitor.java
+++
b/node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/SchemaFilterFactory.java
@@ -18,42 +18,39 @@
*/
package org.apache.iotdb.commons.schema.filter;
+import org.apache.iotdb.commons.schema.filter.impl.AndFilter;
import org.apache.iotdb.commons.schema.filter.impl.DataTypeFilter;
import org.apache.iotdb.commons.schema.filter.impl.PathContainsFilter;
import org.apache.iotdb.commons.schema.filter.impl.TagFilter;
+import org.apache.iotdb.commons.schema.filter.impl.ViewTypeFilter;
+import org.apache.iotdb.commons.schema.view.ViewType;
+import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-/**
- * This class provides a visitor of {@link SchemaFilter}, which can be
extended to create a visitor
- * which only needs to handle a subset of the available methods.
- *
- * @param <R> The return type of the visit operation.
- */
-public abstract class SchemaFilterVisitor<R, C> {
+public class SchemaFilterFactory {
- public R process(SchemaFilter filter, C context) {
- if (filter == null) {
- return visitNode(null, context);
- } else {
- return filter.accept(this, context);
- }
+ public static SchemaFilter createTagFilter(String key, String value, boolean
isContains) {
+ return new TagFilter(key, value, isContains);
}
- /** Top Level Description */
- protected abstract R visitNode(SchemaFilter filter, C context);
-
- public R visitFilter(SchemaFilter filter, C context) {
- return visitNode(filter, context);
+ public static SchemaFilter createPathContainsFilter(String containString) {
+ return new PathContainsFilter(containString);
}
- public R visitTagFilter(TagFilter tagFilter, C context) {
- return visitFilter(tagFilter, context);
+ public static SchemaFilter createDataTypeFilter(TSDataType dataType) {
+ return new DataTypeFilter(dataType);
}
- public R visitPathContainsFilter(PathContainsFilter pathContainsFilter, C
context) {
- return visitFilter(pathContainsFilter, context);
+ public static SchemaFilter createViewTypeFilter(ViewType viewType) {
+ return new ViewTypeFilter(viewType);
}
- public R visitDataTypeFilter(DataTypeFilter dataTypeFilter, C context) {
- return visitFilter(dataTypeFilter, context);
+ public static SchemaFilter and(SchemaFilter left, SchemaFilter right) {
+ if (left == null) {
+ return right;
+ } else if (right == null) {
+ return left;
+ } else {
+ return new AndFilter(left, right);
+ }
}
}
diff --git
a/node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/SchemaFilterType.java
b/node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/SchemaFilterType.java
index fc02cd99525..cf7abdca63a 100644
---
a/node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/SchemaFilterType.java
+++
b/node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/SchemaFilterType.java
@@ -22,7 +22,10 @@ public enum SchemaFilterType {
NULL((short) -1),
TAGS_FILTER((short) 1),
PATH_CONTAINS((short) 2),
- DATA_TYPE((short) 3);
+ DATA_TYPE((short) 3),
+ VIEW_TYPE((short) 4),
+ AND((short) 5),
+ ;
private final short code;
@@ -44,6 +47,10 @@ public enum SchemaFilterType {
return PATH_CONTAINS;
case 3:
return DATA_TYPE;
+ case 4:
+ return VIEW_TYPE;
+ case 5:
+ return AND;
default:
throw new IllegalArgumentException("Invalid input: " + code);
}
diff --git
a/node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/SchemaFilterVisitor.java
b/node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/SchemaFilterVisitor.java
index 2c32e8a7129..56084dd377f 100644
---
a/node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/SchemaFilterVisitor.java
+++
b/node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/SchemaFilterVisitor.java
@@ -11,26 +11,26 @@
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * "AS IS" BASIS, WITHOUT WARRANTIES Oboolean CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
package org.apache.iotdb.commons.schema.filter;
+import org.apache.iotdb.commons.schema.filter.impl.AndFilter;
import org.apache.iotdb.commons.schema.filter.impl.DataTypeFilter;
import org.apache.iotdb.commons.schema.filter.impl.PathContainsFilter;
import org.apache.iotdb.commons.schema.filter.impl.TagFilter;
+import org.apache.iotdb.commons.schema.filter.impl.ViewTypeFilter;
/**
* This class provides a visitor of {@link SchemaFilter}, which can be
extended to create a visitor
* which only needs to handle a subset of the available methods.
- *
- * @param <R> The return type of the visit operation.
*/
-public abstract class SchemaFilterVisitor<R, C> {
+public abstract class SchemaFilterVisitor<C> {
- public R process(SchemaFilter filter, C context) {
+ public boolean process(SchemaFilter filter, C context) {
if (filter == null) {
return visitNode(null, context);
} else {
@@ -39,21 +39,29 @@ public abstract class SchemaFilterVisitor<R, C> {
}
/** Top Level Description */
- protected abstract R visitNode(SchemaFilter filter, C context);
+ protected abstract boolean visitNode(SchemaFilter filter, C context);
- public R visitFilter(SchemaFilter filter, C context) {
+ public boolean visitFilter(SchemaFilter filter, C context) {
return visitNode(filter, context);
}
- public R visitTagFilter(TagFilter tagFilter, C context) {
+ public boolean visitTagFilter(TagFilter tagFilter, C context) {
return visitFilter(tagFilter, context);
}
- public R visitPathContainsFilter(PathContainsFilter pathContainsFilter, C
context) {
+ public boolean visitPathContainsFilter(PathContainsFilter
pathContainsFilter, C context) {
return visitFilter(pathContainsFilter, context);
}
- public R visitDataTypeFilter(DataTypeFilter dataTypeFilter, C context) {
+ public boolean visitDataTypeFilter(DataTypeFilter dataTypeFilter, C context)
{
return visitFilter(dataTypeFilter, context);
}
+
+ public boolean visitViewTypeFilter(ViewTypeFilter viewTypeFilter, C context)
{
+ return visitFilter(viewTypeFilter, context);
+ }
+
+ public boolean visitAndFilter(AndFilter andFilter, C context) {
+ return andFilter.getLeft().accept(this, context) &&
andFilter.getRight().accept(this, context);
+ }
}
diff --git
a/node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/impl/DataTypeFilter.java
b/node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/impl/AndFilter.java
similarity index 58%
copy from
node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/impl/DataTypeFilter.java
copy to
node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/impl/AndFilter.java
index d48f8893ccb..5bcf0ca8c59 100644
---
a/node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/impl/DataTypeFilter.java
+++
b/node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/impl/AndFilter.java
@@ -21,45 +21,54 @@ package org.apache.iotdb.commons.schema.filter.impl;
import org.apache.iotdb.commons.schema.filter.SchemaFilter;
import org.apache.iotdb.commons.schema.filter.SchemaFilterType;
import org.apache.iotdb.commons.schema.filter.SchemaFilterVisitor;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
import java.io.DataOutputStream;
import java.io.IOException;
import java.nio.ByteBuffer;
-public class DataTypeFilter extends SchemaFilter {
+public class AndFilter extends SchemaFilter {
- private final TSDataType dataType;
+ private final SchemaFilter left;
+ private final SchemaFilter right;
- public DataTypeFilter(TSDataType dataType) {
- this.dataType = dataType;
+ public AndFilter(SchemaFilter left, SchemaFilter right) {
+ // left and right should not be null
+ this.left = left;
+ this.right = right;
}
- public DataTypeFilter(ByteBuffer byteBuffer) {
- this.dataType = TSDataType.deserializeFrom(byteBuffer);
+ public AndFilter(ByteBuffer byteBuffer) {
+ this.left = SchemaFilter.deserialize(byteBuffer);
+ this.right = SchemaFilter.deserialize(byteBuffer);
}
- public TSDataType getDataType() {
- return dataType;
+ public SchemaFilter getLeft() {
+ return left;
+ }
+
+ public SchemaFilter getRight() {
+ return right;
}
@Override
- public <R, C> R accept(SchemaFilterVisitor<R, C> visitor, C node) {
- return visitor.visitDataTypeFilter(this, node);
+ public <C> boolean accept(SchemaFilterVisitor<C> visitor, C node) {
+ return visitor.visitAndFilter(this, node);
}
@Override
public SchemaFilterType getSchemaFilterType() {
- return SchemaFilterType.DATA_TYPE;
+ return SchemaFilterType.AND;
}
@Override
- protected void serialize(ByteBuffer byteBuffer) {
- dataType.serializeTo(byteBuffer);
+ public void serialize(ByteBuffer byteBuffer) {
+ left.serialize(byteBuffer);
+ right.serialize(byteBuffer);
}
@Override
- protected void serialize(DataOutputStream stream) throws IOException {
- dataType.serializeTo(stream);
+ public void serialize(DataOutputStream stream) throws IOException {
+ left.serialize(stream);
+ right.serialize(stream);
}
}
diff --git
a/node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/impl/DataTypeFilter.java
b/node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/impl/DataTypeFilter.java
index d48f8893ccb..520718b1401 100644
---
a/node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/impl/DataTypeFilter.java
+++
b/node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/impl/DataTypeFilter.java
@@ -44,7 +44,7 @@ public class DataTypeFilter extends SchemaFilter {
}
@Override
- public <R, C> R accept(SchemaFilterVisitor<R, C> visitor, C node) {
+ public <C> boolean accept(SchemaFilterVisitor<C> visitor, C node) {
return visitor.visitDataTypeFilter(this, node);
}
@@ -54,12 +54,12 @@ public class DataTypeFilter extends SchemaFilter {
}
@Override
- protected void serialize(ByteBuffer byteBuffer) {
+ public void serialize(ByteBuffer byteBuffer) {
dataType.serializeTo(byteBuffer);
}
@Override
- protected void serialize(DataOutputStream stream) throws IOException {
+ public void serialize(DataOutputStream stream) throws IOException {
dataType.serializeTo(stream);
}
}
diff --git
a/node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/impl/PathContainsFilter.java
b/node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/impl/PathContainsFilter.java
index 871bea510e8..e0fdfae35c8 100644
---
a/node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/impl/PathContainsFilter.java
+++
b/node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/impl/PathContainsFilter.java
@@ -43,8 +43,8 @@ public class PathContainsFilter extends SchemaFilter {
}
@Override
- public <R, C> R accept(SchemaFilterVisitor<R, C> visitor, C context) {
- return visitor.visitPathContainsFilter(this, context);
+ public <C> boolean accept(SchemaFilterVisitor<C> visitor, C node) {
+ return visitor.visitPathContainsFilter(this, node);
}
@Override
@@ -53,12 +53,12 @@ public class PathContainsFilter extends SchemaFilter {
}
@Override
- protected void serialize(ByteBuffer byteBuffer) {
+ public void serialize(ByteBuffer byteBuffer) {
ReadWriteIOUtils.write(containString, byteBuffer);
}
@Override
- protected void serialize(DataOutputStream stream) throws IOException {
+ public void serialize(DataOutputStream stream) throws IOException {
ReadWriteIOUtils.write(containString, stream);
}
}
diff --git
a/node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/impl/TagFilter.java
b/node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/impl/TagFilter.java
index 5a3388fc072..4fbe0008fd2 100644
---
a/node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/impl/TagFilter.java
+++
b/node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/impl/TagFilter.java
@@ -58,7 +58,7 @@ public class TagFilter extends SchemaFilter {
}
@Override
- public <R, C> R accept(SchemaFilterVisitor<R, C> visitor, C node) {
+ public <C> boolean accept(SchemaFilterVisitor<C> visitor, C node) {
return visitor.visitTagFilter(this, node);
}
@@ -68,14 +68,14 @@ public class TagFilter extends SchemaFilter {
}
@Override
- protected void serialize(ByteBuffer byteBuffer) {
+ public void serialize(ByteBuffer byteBuffer) {
ReadWriteIOUtils.write(key, byteBuffer);
ReadWriteIOUtils.write(value, byteBuffer);
ReadWriteIOUtils.write(isContains, byteBuffer);
}
@Override
- protected void serialize(DataOutputStream stream) throws IOException {
+ public void serialize(DataOutputStream stream) throws IOException {
ReadWriteIOUtils.write(key, stream);
ReadWriteIOUtils.write(value, stream);
ReadWriteIOUtils.write(isContains, stream);
diff --git
a/node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/impl/DataTypeFilter.java
b/node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/impl/ViewTypeFilter.java
similarity index 63%
copy from
node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/impl/DataTypeFilter.java
copy to
node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/impl/ViewTypeFilter.java
index d48f8893ccb..ed21a5719be 100644
---
a/node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/impl/DataTypeFilter.java
+++
b/node-commons/src/main/java/org/apache/iotdb/commons/schema/filter/impl/ViewTypeFilter.java
@@ -21,45 +21,45 @@ package org.apache.iotdb.commons.schema.filter.impl;
import org.apache.iotdb.commons.schema.filter.SchemaFilter;
import org.apache.iotdb.commons.schema.filter.SchemaFilterType;
import org.apache.iotdb.commons.schema.filter.SchemaFilterVisitor;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
+import org.apache.iotdb.commons.schema.view.ViewType;
import java.io.DataOutputStream;
import java.io.IOException;
import java.nio.ByteBuffer;
-public class DataTypeFilter extends SchemaFilter {
+public class ViewTypeFilter extends SchemaFilter {
- private final TSDataType dataType;
+ private final ViewType viewType;
- public DataTypeFilter(TSDataType dataType) {
- this.dataType = dataType;
+ public ViewTypeFilter(ViewType viewType) {
+ this.viewType = viewType;
}
- public DataTypeFilter(ByteBuffer byteBuffer) {
- this.dataType = TSDataType.deserializeFrom(byteBuffer);
+ public ViewTypeFilter(ByteBuffer byteBuffer) {
+ this.viewType = ViewType.deserializeFrom(byteBuffer);
}
- public TSDataType getDataType() {
- return dataType;
+ public ViewType getViewType() {
+ return viewType;
}
@Override
- public <R, C> R accept(SchemaFilterVisitor<R, C> visitor, C node) {
- return visitor.visitDataTypeFilter(this, node);
+ public <C> boolean accept(SchemaFilterVisitor<C> visitor, C node) {
+ return visitor.visitViewTypeFilter(this, node);
}
@Override
public SchemaFilterType getSchemaFilterType() {
- return SchemaFilterType.DATA_TYPE;
+ return SchemaFilterType.VIEW_TYPE;
}
@Override
- protected void serialize(ByteBuffer byteBuffer) {
- dataType.serializeTo(byteBuffer);
+ public void serialize(ByteBuffer byteBuffer) {
+ viewType.serializeTo(byteBuffer);
}
@Override
- protected void serialize(DataOutputStream stream) throws IOException {
- dataType.serializeTo(stream);
+ public void serialize(DataOutputStream stream) throws IOException {
+ viewType.serializeTo(stream);
}
}
diff --git
a/node-commons/src/main/java/org/apache/iotdb/commons/schema/view/ViewType.java
b/node-commons/src/main/java/org/apache/iotdb/commons/schema/view/ViewType.java
new file mode 100644
index 00000000000..d47558990a8
--- /dev/null
+++
b/node-commons/src/main/java/org/apache/iotdb/commons/schema/view/ViewType.java
@@ -0,0 +1,67 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.iotdb.commons.schema.view;
+
+import java.io.DataOutputStream;
+import java.io.IOException;
+import java.nio.ByteBuffer;
+
+public enum ViewType {
+ /** BASE */
+ BASE((byte) 0),
+ /** VIEW */
+ VIEW((byte) 1);
+
+ private final byte type;
+
+ ViewType(byte type) {
+ this.type = type;
+ }
+
+ public byte getType() {
+ return type;
+ }
+
+ public static ViewType deserialize(byte type) {
+ return getViewType(type);
+ }
+
+ public static ViewType deserializeFrom(ByteBuffer buffer) {
+ return deserialize(buffer.get());
+ }
+
+ public void serializeTo(ByteBuffer byteBuffer) {
+ byteBuffer.put(getType());
+ }
+
+ public void serializeTo(DataOutputStream outputStream) throws IOException {
+ outputStream.write(getType());
+ }
+
+ public static ViewType getViewType(byte type) {
+ switch (type) {
+ case 0:
+ return ViewType.BASE;
+ case 1:
+ return ViewType.VIEW;
+ default:
+ throw new IllegalArgumentException("Invalid input: " + type);
+ }
+ }
+}
diff --git
a/server/src/main/java/org/apache/iotdb/db/metadata/plan/schemaregion/impl/read/SchemaRegionReadPlanFactory.java
b/server/src/main/java/org/apache/iotdb/db/metadata/plan/schemaregion/impl/read/SchemaRegionReadPlanFactory.java
index 57a801e4532..0156822a166 100644
---
a/server/src/main/java/org/apache/iotdb/db/metadata/plan/schemaregion/impl/read/SchemaRegionReadPlanFactory.java
+++
b/server/src/main/java/org/apache/iotdb/db/metadata/plan/schemaregion/impl/read/SchemaRegionReadPlanFactory.java
@@ -21,7 +21,7 @@ package
org.apache.iotdb.db.metadata.plan.schemaregion.impl.read;
import org.apache.iotdb.commons.path.PartialPath;
import org.apache.iotdb.commons.schema.filter.SchemaFilter;
-import org.apache.iotdb.commons.schema.filter.impl.TagFilter;
+import org.apache.iotdb.commons.schema.filter.SchemaFilterFactory;
import org.apache.iotdb.commons.utils.TestOnly;
import org.apache.iotdb.db.metadata.plan.schemaregion.read.IShowDevicesPlan;
import org.apache.iotdb.db.metadata.plan.schemaregion.read.IShowNodesPlan;
@@ -70,7 +70,12 @@ public class SchemaRegionReadPlanFactory {
public static IShowTimeSeriesPlan getShowTimeSeriesPlan(
PartialPath path, boolean isContains, String key, String value) {
return new ShowTimeSeriesPlanImpl(
- path, Collections.emptyMap(), 0, 0, false, new TagFilter(key, value,
isContains));
+ path,
+ Collections.emptyMap(),
+ 0,
+ 0,
+ false,
+ SchemaFilterFactory.createTagFilter(key, value, isContains));
}
public static IShowTimeSeriesPlan getShowTimeSeriesPlan(
diff --git
a/server/src/main/java/org/apache/iotdb/db/metadata/visitor/DeviceFilterVisitor.java
b/server/src/main/java/org/apache/iotdb/db/metadata/visitor/DeviceFilterVisitor.java
index 09dd2848d88..8f9c6a9c60d 100644
---
a/server/src/main/java/org/apache/iotdb/db/metadata/visitor/DeviceFilterVisitor.java
+++
b/server/src/main/java/org/apache/iotdb/db/metadata/visitor/DeviceFilterVisitor.java
@@ -23,14 +23,14 @@ import
org.apache.iotdb.commons.schema.filter.SchemaFilterVisitor;
import org.apache.iotdb.commons.schema.filter.impl.PathContainsFilter;
import org.apache.iotdb.db.metadata.query.info.IDeviceSchemaInfo;
-public class DeviceFilterVisitor extends SchemaFilterVisitor<Boolean,
IDeviceSchemaInfo> {
+public class DeviceFilterVisitor extends
SchemaFilterVisitor<IDeviceSchemaInfo> {
@Override
- public Boolean visitNode(SchemaFilter filter, IDeviceSchemaInfo info) {
+ public boolean visitNode(SchemaFilter filter, IDeviceSchemaInfo info) {
return true;
}
@Override
- public Boolean visitPathContainsFilter(
+ public boolean visitPathContainsFilter(
PathContainsFilter pathContainsFilter, IDeviceSchemaInfo info) {
if (pathContainsFilter.getContainString() == null) {
return true;
diff --git
a/server/src/main/java/org/apache/iotdb/db/metadata/visitor/TimeseriesFilterVisitor.java
b/server/src/main/java/org/apache/iotdb/db/metadata/visitor/TimeseriesFilterVisitor.java
index 743c209722d..5910d52527f 100644
---
a/server/src/main/java/org/apache/iotdb/db/metadata/visitor/TimeseriesFilterVisitor.java
+++
b/server/src/main/java/org/apache/iotdb/db/metadata/visitor/TimeseriesFilterVisitor.java
@@ -22,16 +22,18 @@ import org.apache.iotdb.commons.schema.filter.SchemaFilter;
import org.apache.iotdb.commons.schema.filter.SchemaFilterVisitor;
import org.apache.iotdb.commons.schema.filter.impl.DataTypeFilter;
import org.apache.iotdb.commons.schema.filter.impl.PathContainsFilter;
+import org.apache.iotdb.commons.schema.filter.impl.ViewTypeFilter;
+import org.apache.iotdb.commons.schema.view.ViewType;
import org.apache.iotdb.db.metadata.query.info.ITimeSeriesSchemaInfo;
-public class TimeseriesFilterVisitor extends SchemaFilterVisitor<Boolean,
ITimeSeriesSchemaInfo> {
+public class TimeseriesFilterVisitor extends
SchemaFilterVisitor<ITimeSeriesSchemaInfo> {
@Override
- public Boolean visitNode(SchemaFilter filter, ITimeSeriesSchemaInfo info) {
+ public boolean visitNode(SchemaFilter filter, ITimeSeriesSchemaInfo info) {
return true;
}
@Override
- public Boolean visitPathContainsFilter(
+ public boolean visitPathContainsFilter(
PathContainsFilter pathContainsFilter, ITimeSeriesSchemaInfo info) {
if (pathContainsFilter.getContainString() == null) {
return true;
@@ -40,7 +42,12 @@ public class TimeseriesFilterVisitor extends
SchemaFilterVisitor<Boolean, ITimeS
}
@Override
- public Boolean visitDataTypeFilter(DataTypeFilter dataTypeFilter,
ITimeSeriesSchemaInfo info) {
+ public boolean visitDataTypeFilter(DataTypeFilter dataTypeFilter,
ITimeSeriesSchemaInfo info) {
return info.getSchema().getType() == dataTypeFilter.getDataType();
}
+
+ @Override
+ public boolean visitViewTypeFilter(ViewTypeFilter viewTypeFilter,
ITimeSeriesSchemaInfo info) {
+ return info.isLogicalView() == (viewTypeFilter.getViewType() ==
ViewType.VIEW);
+ }
}
diff --git
a/server/src/main/java/org/apache/iotdb/db/mpp/execution/operator/schema/source/LogicalViewSchemaSource.java
b/server/src/main/java/org/apache/iotdb/db/mpp/execution/operator/schema/source/LogicalViewSchemaSource.java
index 1e1fc529987..ad72bd8b496 100644
---
a/server/src/main/java/org/apache/iotdb/db/mpp/execution/operator/schema/source/LogicalViewSchemaSource.java
+++
b/server/src/main/java/org/apache/iotdb/db/mpp/execution/operator/schema/source/LogicalViewSchemaSource.java
@@ -22,7 +22,9 @@ package
org.apache.iotdb.db.mpp.execution.operator.schema.source;
import org.apache.iotdb.commons.exception.MetadataException;
import org.apache.iotdb.commons.path.PartialPath;
import org.apache.iotdb.commons.schema.filter.SchemaFilter;
+import org.apache.iotdb.commons.schema.filter.SchemaFilterFactory;
import org.apache.iotdb.commons.schema.view.LogicalViewSchema;
+import org.apache.iotdb.commons.schema.view.ViewType;
import
org.apache.iotdb.db.metadata.plan.schemaregion.impl.read.SchemaRegionReadPlanFactory;
import org.apache.iotdb.db.metadata.query.info.ITimeSeriesSchemaInfo;
import org.apache.iotdb.db.metadata.query.reader.ISchemaReader;
@@ -35,7 +37,6 @@ import
org.apache.iotdb.tsfile.read.common.block.TsBlockBuilder;
import java.util.Collections;
import java.util.List;
import java.util.Map;
-import java.util.NoSuchElementException;
import java.util.stream.Collectors;
import static org.apache.iotdb.db.metadata.MetadataConstant.ALL_MATCH_PATTERN;
@@ -48,7 +49,6 @@ public class LogicalViewSchemaSource implements
ISchemaSource<ITimeSeriesSchemaI
private final long offset;
private final SchemaFilter schemaFilter;
- private static final String viewTypeOfLogicalView = "logical";
LogicalViewSchemaSource(
PartialPath pathPattern, long limit, long offset, SchemaFilter
schemaFilter) {
@@ -63,11 +63,16 @@ public class LogicalViewSchemaSource implements
ISchemaSource<ITimeSeriesSchemaI
@Override
public ISchemaReader<ITimeSeriesSchemaInfo> getSchemaReader(ISchemaRegion
schemaRegion) {
try {
- return new SchemaReaderLimitOffsetWrapper<ITimeSeriesSchemaInfo>(
- new LogicalViewSchemaReader(
- schemaRegion.getTimeSeriesReader(
- SchemaRegionReadPlanFactory.getShowTimeSeriesPlan(
- pathPattern, Collections.emptyMap(), 0, 0, false,
schemaFilter))),
+ return new SchemaReaderLimitOffsetWrapper<>(
+ schemaRegion.getTimeSeriesReader(
+ SchemaRegionReadPlanFactory.getShowTimeSeriesPlan(
+ pathPattern,
+ Collections.emptyMap(),
+ 0,
+ 0,
+ false,
+ SchemaFilterFactory.and(
+ schemaFilter,
SchemaFilterFactory.createViewTypeFilter(ViewType.VIEW)))),
limit,
offset);
} catch (MetadataException e) {
@@ -92,7 +97,7 @@ public class LogicalViewSchemaSource implements
ISchemaSource<ITimeSeriesSchemaI
builder.writeNullableText(3, mapToString(series.getTags()));
builder.writeNullableText(4, mapToString(series.getAttributes()));
- builder.writeNullableText(5, viewTypeOfLogicalView);
+ builder.writeNullableText(5, ViewType.VIEW.name());
builder.writeNullableText(
6, ((LogicalViewSchema)
series.getSchema()).getExpression().toString());
builder.declarePosition();
@@ -118,60 +123,4 @@ public class LogicalViewSchemaSource implements
ISchemaSource<ITimeSeriesSchemaI
.collect(Collectors.joining(","));
return "{" + content + "}";
}
-
- // TODO: this reader may be replaced by filter in the future
- private static class LogicalViewSchemaReader implements
ISchemaReader<ITimeSeriesSchemaInfo> {
-
- private final ISchemaReader<ITimeSeriesSchemaInfo> timeSeriesReader;
-
- private ITimeSeriesSchemaInfo nextResult;
-
- LogicalViewSchemaReader(ISchemaReader<ITimeSeriesSchemaInfo>
timeSeriesReader) {
- this.timeSeriesReader = timeSeriesReader;
- }
-
- @Override
- public boolean isSuccess() {
- return timeSeriesReader.isSuccess();
- }
-
- @Override
- public Throwable getFailure() {
- return timeSeriesReader.getFailure();
- }
-
- @Override
- public void close() throws Exception {
- timeSeriesReader.close();
- }
-
- @Override
- public boolean hasNext() {
- if (nextResult == null) {
- getNext();
- }
- return nextResult != null;
- }
-
- @Override
- public ITimeSeriesSchemaInfo next() {
- if (!hasNext()) {
- throw new NoSuchElementException();
- }
- ITimeSeriesSchemaInfo result = nextResult;
- nextResult = null;
- return result;
- }
-
- private void getNext() {
- ITimeSeriesSchemaInfo timeSeriesSchemaInfo;
- while (timeSeriesReader.hasNext()) {
- timeSeriesSchemaInfo = timeSeriesReader.next();
- if (timeSeriesSchemaInfo.isLogicalView()) {
- nextResult = timeSeriesSchemaInfo;
- return;
- }
- }
- }
- }
}
diff --git
a/server/src/main/java/org/apache/iotdb/db/mpp/execution/operator/schema/source/TimeSeriesSchemaSource.java
b/server/src/main/java/org/apache/iotdb/db/mpp/execution/operator/schema/source/TimeSeriesSchemaSource.java
index d202e1e4c39..6752ee3ad55 100644
---
a/server/src/main/java/org/apache/iotdb/db/mpp/execution/operator/schema/source/TimeSeriesSchemaSource.java
+++
b/server/src/main/java/org/apache/iotdb/db/mpp/execution/operator/schema/source/TimeSeriesSchemaSource.java
@@ -22,6 +22,7 @@ package
org.apache.iotdb.db.mpp.execution.operator.schema.source;
import org.apache.iotdb.commons.exception.MetadataException;
import org.apache.iotdb.commons.path.PartialPath;
import org.apache.iotdb.commons.schema.filter.SchemaFilter;
+import org.apache.iotdb.commons.schema.view.ViewType;
import
org.apache.iotdb.db.metadata.plan.schemaregion.impl.read.SchemaRegionReadPlanFactory;
import org.apache.iotdb.db.metadata.query.info.ITimeSeriesSchemaInfo;
import org.apache.iotdb.db.metadata.query.reader.ISchemaReader;
@@ -50,8 +51,6 @@ public class TimeSeriesSchemaSource implements
ISchemaSource<ITimeSeriesSchemaIn
private final SchemaFilter schemaFilter;
private final Map<Integer, Template> templateMap;
- private static final String viewTypeOfLogicalView = "logical";
- private static final String viewTypeOfNonView = "";
TimeSeriesSchemaSource(
PartialPath pathPattern,
@@ -99,11 +98,11 @@ public class TimeSeriesSchemaSource implements
ISchemaSource<ITimeSeriesSchemaIn
if (series.isLogicalView()) {
builder.writeNullableText(4, null);
builder.writeNullableText(5, null);
- builder.writeNullableText(10, viewTypeOfLogicalView);
+ builder.writeNullableText(10, ViewType.VIEW.name());
} else {
builder.writeNullableText(4,
series.getSchema().getEncodingType().toString());
builder.writeNullableText(5,
series.getSchema().getCompressor().toString());
- builder.writeNullableText(10, viewTypeOfNonView);
+ builder.writeNullableText(10, ViewType.BASE.name());
}
builder.writeNullableText(6, mapToString(series.getTags()));
builder.writeNullableText(7, mapToString(series.getAttributes()));
diff --git
a/server/src/main/java/org/apache/iotdb/db/mpp/plan/parser/ASTVisitor.java
b/server/src/main/java/org/apache/iotdb/db/mpp/plan/parser/ASTVisitor.java
index 79d6fbe187b..ed6df252389 100644
--- a/server/src/main/java/org/apache/iotdb/db/mpp/plan/parser/ASTVisitor.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/parser/ASTVisitor.java
@@ -29,9 +29,7 @@ import org.apache.iotdb.commons.cq.TimeoutPolicy;
import org.apache.iotdb.commons.exception.IllegalPathException;
import org.apache.iotdb.commons.path.PartialPath;
import org.apache.iotdb.commons.schema.filter.SchemaFilter;
-import org.apache.iotdb.commons.schema.filter.impl.DataTypeFilter;
-import org.apache.iotdb.commons.schema.filter.impl.PathContainsFilter;
-import org.apache.iotdb.commons.schema.filter.impl.TagFilter;
+import org.apache.iotdb.commons.schema.filter.SchemaFilterFactory;
import org.apache.iotdb.commons.utils.PathUtils;
import org.apache.iotdb.db.conf.IoTDBConfig;
import org.apache.iotdb.db.conf.IoTDBDescriptor;
@@ -610,19 +608,19 @@ public class ASTVisitor extends
IoTDBSqlParserBaseVisitor<Statement> {
private SchemaFilter
parseTimeseriesWhereClause(IoTDBSqlParser.TimeseriesWhereClauseContext ctx) {
if (ctx.timeseriesContainsExpression() != null) {
// path contains filter
- return new PathContainsFilter(
+ return SchemaFilterFactory.createPathContainsFilter(
parseStringLiteral(ctx.timeseriesContainsExpression().value.getText()));
} else if (ctx.columnEqualsExpression() != null) {
return parseColumnEqualsExpressionContext(ctx.columnEqualsExpression());
} else {
// tag filter
if (ctx.tagContainsExpression() != null) {
- return new TagFilter(
+ return SchemaFilterFactory.createTagFilter(
parseAttributeKey(ctx.tagContainsExpression().attributeKey()),
parseStringLiteral(ctx.tagContainsExpression().value.getText()),
true);
} else {
- return new TagFilter(
+ return SchemaFilterFactory.createTagFilter(
parseAttributeKey(ctx.tagEqualsExpression().attributeKey()),
parseAttributeValue(ctx.tagEqualsExpression().attributeValue()),
false);
@@ -637,7 +635,7 @@ public class ASTVisitor extends
IoTDBSqlParserBaseVisitor<Statement> {
if (column.equalsIgnoreCase(IoTDBConstant.COLUMN_TIMESERIES_DATATYPE)) {
try {
TSDataType dataType = TSDataType.valueOf(value.toUpperCase());
- return new DataTypeFilter(dataType);
+ return SchemaFilterFactory.createDataTypeFilter(dataType);
} catch (Exception e) {
throw new SemanticException(String.format("unsupported datatype: %s",
value));
}
@@ -698,7 +696,7 @@ public class ASTVisitor extends
IoTDBSqlParserBaseVisitor<Statement> {
private SchemaFilter
parseDevicesWhereClause(IoTDBSqlParser.DevicesWhereClauseContext ctx) {
// path contains filter
- return new PathContainsFilter(
+ return SchemaFilterFactory.createPathContainsFilter(
parseStringLiteral(ctx.deviceContainsExpression().value.getText()));
}
diff --git
a/server/src/test/java/org/apache/iotdb/db/metadata/schemaRegion/SchemaRegionBasicTest.java
b/server/src/test/java/org/apache/iotdb/db/metadata/schemaRegion/SchemaRegionBasicTest.java
index fe5025f59f2..1a0503f3553 100644
---
a/server/src/test/java/org/apache/iotdb/db/metadata/schemaRegion/SchemaRegionBasicTest.java
+++
b/server/src/test/java/org/apache/iotdb/db/metadata/schemaRegion/SchemaRegionBasicTest.java
@@ -22,8 +22,7 @@ import org.apache.iotdb.commons.exception.MetadataException;
import org.apache.iotdb.commons.path.MeasurementPath;
import org.apache.iotdb.commons.path.PartialPath;
import org.apache.iotdb.commons.path.PathPatternTree;
-import org.apache.iotdb.commons.schema.filter.impl.DataTypeFilter;
-import org.apache.iotdb.commons.schema.filter.impl.PathContainsFilter;
+import org.apache.iotdb.commons.schema.filter.SchemaFilterFactory;
import org.apache.iotdb.commons.schema.node.MNodeType;
import org.apache.iotdb.db.exception.metadata.AliasAlreadyExistException;
import org.apache.iotdb.db.exception.metadata.MeasurementAlreadyExistException;
@@ -722,7 +721,11 @@ public class SchemaRegionBasicTest extends
AbstractSchemaRegionTest {
SchemaRegionTestUtil.getMatchedDevices(
schemaRegion,
SchemaRegionReadPlanFactory.getShowDevicesPlan(
- new PartialPath("root.**"), 0, 0, false, new
PathContainsFilter("laptop")));
+ new PartialPath("root.**"),
+ 0,
+ 0,
+ false,
+ SchemaFilterFactory.createPathContainsFilter("laptop")));
expectedHashset = new HashSet<>(expectedList);
actualHashset = new HashSet<>(actualResult);
Assert.assertEquals(expectedHashset, actualHashset);
@@ -735,7 +738,11 @@ public class SchemaRegionBasicTest extends
AbstractSchemaRegionTest {
SchemaRegionTestUtil.getMatchedDevices(
schemaRegion,
SchemaRegionReadPlanFactory.getShowDevicesPlan(
- new PartialPath("root.**"), 2, 0, false, new
PathContainsFilter("laptop.d")));
+ new PartialPath("root.**"),
+ 2,
+ 0,
+ false,
+ SchemaFilterFactory.createPathContainsFilter("laptop.d")));
expectedHashset = new HashSet<>(expectedList);
actualHashset = new HashSet<>(actualResult);
Assert.assertEquals(expectedHashset, actualHashset);
@@ -807,7 +814,7 @@ public class SchemaRegionBasicTest extends
AbstractSchemaRegionTest {
0,
0,
false,
- new PathContainsFilter("s")));
+ SchemaFilterFactory.createPathContainsFilter("s")));
expectedPathList =
new HashSet<>(
Arrays.asList(
@@ -834,7 +841,7 @@ public class SchemaRegionBasicTest extends
AbstractSchemaRegionTest {
0,
0,
false,
- new PathContainsFilter("1")));
+ SchemaFilterFactory.createPathContainsFilter("1")));
expectedPathList =
new HashSet<>(
Arrays.asList(
@@ -860,7 +867,7 @@ public class SchemaRegionBasicTest extends
AbstractSchemaRegionTest {
0,
0,
false,
- new PathContainsFilter("laptop.d")));
+ SchemaFilterFactory.createPathContainsFilter("laptop.d")));
expectedPathList =
new HashSet<>(
Arrays.asList(
@@ -888,7 +895,7 @@ public class SchemaRegionBasicTest extends
AbstractSchemaRegionTest {
0,
0,
false,
- new DataTypeFilter(TSDataType.INT64)));
+ SchemaFilterFactory.createDataTypeFilter(TSDataType.INT64)));
expectedPathList =
new HashSet<>(
Arrays.asList(
@@ -916,7 +923,7 @@ public class SchemaRegionBasicTest extends
AbstractSchemaRegionTest {
0,
0,
false,
- new DataTypeFilter(TSDataType.BOOLEAN)));
+ SchemaFilterFactory.createDataTypeFilter(TSDataType.BOOLEAN)));
expectedPathList = new HashSet<>(Collections.emptyList());
expectedSize = expectedPathList.size();
Assert.assertEquals(expectedSize, result.size());