This is an automated email from the ASF dual-hosted git repository.
lta pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-iotdb.git
The following commit(s) were added to refs/heads/master by this push:
new acb850d Add create timeseries Operator (#130)
acb850d is described below
commit acb850de8d556440f3059e4548277e22a1b51a46
Author: Tianan Li <[email protected]>
AuthorDate: Thu Apr 4 20:27:04 2019 +0800
Add create timeseries Operator (#130)
add_create_ts_operator and add grant and revoke for create timeseries
---
.../org/apache/iotdb/db/auth/AuthorityChecker.java | 2 +
.../apache/iotdb/db/auth/entity/PrivilegeType.java | 2 +-
.../org/apache/iotdb/db/qp/QueryProcessor.java | 1 +
.../iotdb/db/qp/executor/OverflowQPExecutor.java | 1 +
.../org/apache/iotdb/db/qp/logical/Operator.java | 2 +-
.../iotdb/db/qp/logical/sys/MetadataOperator.java | 4 +-
.../iotdb/db/qp/physical/sys/MetadataPlan.java | 4 +-
.../iotdb/db/qp/strategy/PhysicalGenerator.java | 1 +
.../java/org/apache/iotdb/db/utils/AuthUtils.java | 2 +
.../writelog/transfer/PhysicalPlanLogTransfer.java | 1 +
.../iotdb/db/integration/IoTDBAuthorizationIT.java | 33 +++++++++++-
.../org/apache/iotdb/db/qp/QueryProcessorTest.java | 59 ++++++++++++++++++++++
.../apache/iotdb/db/qp/plan/PhysicalPlanTest.java | 3 +-
.../transfer/PhysicalPlanLogTransferTest.java | 29 ++++++-----
14 files changed, 124 insertions(+), 20 deletions(-)
diff --git a/iotdb/src/main/java/org/apache/iotdb/db/auth/AuthorityChecker.java
b/iotdb/src/main/java/org/apache/iotdb/db/auth/AuthorityChecker.java
index 79baccb..a9d4aa4 100644
--- a/iotdb/src/main/java/org/apache/iotdb/db/auth/AuthorityChecker.java
+++ b/iotdb/src/main/java/org/apache/iotdb/db/auth/AuthorityChecker.java
@@ -114,6 +114,8 @@ public class AuthorityChecker {
return PrivilegeType.REVOKE_USER_ROLE.ordinal();
case SET_STORAGE_GROUP:
return PrivilegeType.SET_STORAGE_GROUP.ordinal();
+ case CREATE_TIMESERIES:
+ return PrivilegeType.CREATE_TIMESERIES.ordinal();
case DELETE_TIMESERIES:
return PrivilegeType.DELETE_TIMESERIES.ordinal();
case QUERY:
diff --git
a/iotdb/src/main/java/org/apache/iotdb/db/auth/entity/PrivilegeType.java
b/iotdb/src/main/java/org/apache/iotdb/db/auth/entity/PrivilegeType.java
index e657a9b..d8b44d6 100644
--- a/iotdb/src/main/java/org/apache/iotdb/db/auth/entity/PrivilegeType.java
+++ b/iotdb/src/main/java/org/apache/iotdb/db/auth/entity/PrivilegeType.java
@@ -22,7 +22,7 @@ package org.apache.iotdb.db.auth.entity;
* This enum class contains all available privileges in IoTDB.
*/
public enum PrivilegeType {
- SET_STORAGE_GROUP, INSERT_TIMESERIES, UPDATE_TIMESERIES, READ_TIMESERIES,
DELETE_TIMESERIES,
+ SET_STORAGE_GROUP, INSERT_TIMESERIES, UPDATE_TIMESERIES, READ_TIMESERIES,
CREATE_TIMESERIES, DELETE_TIMESERIES,
CREATE_USER, DELETE_USER, MODIFY_PASSWORD, LIST_USER, GRANT_USER_PRIVILEGE,
REVOKE_USER_PRIVILEGE,
GRANT_USER_ROLE, REVOKE_USER_ROLE, CREATE_ROLE, DELETE_ROLE, LIST_ROLE,
GRANT_ROLE_PRIVILEGE,
REVOKE_ROLE_PRIVILEGE, ALL;
diff --git a/iotdb/src/main/java/org/apache/iotdb/db/qp/QueryProcessor.java
b/iotdb/src/main/java/org/apache/iotdb/db/qp/QueryProcessor.java
index 1ec75a7..c64c71a 100644
--- a/iotdb/src/main/java/org/apache/iotdb/db/qp/QueryProcessor.java
+++ b/iotdb/src/main/java/org/apache/iotdb/db/qp/QueryProcessor.java
@@ -128,6 +128,7 @@ public class QueryProcessor {
case AUTHOR:
case METADATA:
case SET_STORAGE_GROUP:
+ case CREATE_TIMESERIES:
case DELETE_TIMESERIES:
case PROPERTY:
case LOADDATA:
diff --git
a/iotdb/src/main/java/org/apache/iotdb/db/qp/executor/OverflowQPExecutor.java
b/iotdb/src/main/java/org/apache/iotdb/db/qp/executor/OverflowQPExecutor.java
index d477e2f..6c603fa 100644
---
a/iotdb/src/main/java/org/apache/iotdb/db/qp/executor/OverflowQPExecutor.java
+++
b/iotdb/src/main/java/org/apache/iotdb/db/qp/executor/OverflowQPExecutor.java
@@ -146,6 +146,7 @@ public class OverflowQPExecutor extends
QueryProcessExecutor {
MManager.getInstance());
return true;
case DELETE_TIMESERIES:
+ case CREATE_TIMESERIES:
case SET_STORAGE_GROUP:
case METADATA:
MetadataPlan metadata = (MetadataPlan) plan;
diff --git a/iotdb/src/main/java/org/apache/iotdb/db/qp/logical/Operator.java
b/iotdb/src/main/java/org/apache/iotdb/db/qp/logical/Operator.java
index b346cdb..c7a9eb7 100644
--- a/iotdb/src/main/java/org/apache/iotdb/db/qp/logical/Operator.java
+++ b/iotdb/src/main/java/org/apache/iotdb/db/qp/logical/Operator.java
@@ -69,7 +69,7 @@ public abstract class Operator {
SFW, JOIN, UNION, FILTER, GROUPBY, ORDERBY, LIMIT, SELECT, SEQTABLESCAN,
HASHTABLESCAN,
MERGEJOIN, FILEREAD, NULL, TABLESCAN, UPDATE, INSERT, DELETE, BASIC_FUNC,
QUERY, MERGEQUERY,
AGGREGATION, AUTHOR, FROM, FUNC, LOADDATA, METADATA, PROPERTY, INDEX,
INDEXQUERY, FILL,
- SET_STORAGE_GROUP, DELETE_TIMESERIES, CREATE_USER, DELETE_USER,
MODIFY_PASSWORD,
+ SET_STORAGE_GROUP, CREATE_TIMESERIES, DELETE_TIMESERIES, CREATE_USER,
DELETE_USER, MODIFY_PASSWORD,
GRANT_USER_PRIVILEGE, REVOKE_USER_PRIVILEGE, GRANT_USER_ROLE,
REVOKE_USER_ROLE, CREATE_ROLE,
DELETE_ROLE, GRANT_ROLE_PRIVILEGE, REVOKE_ROLE_PRIVILEGE, LIST_USER,
LIST_ROLE,
LIST_USER_PRIVILEGE, LIST_ROLE_PRIVILEGE, LIST_USER_ROLES, LIST_ROLE_USERS;
diff --git
a/iotdb/src/main/java/org/apache/iotdb/db/qp/logical/sys/MetadataOperator.java
b/iotdb/src/main/java/org/apache/iotdb/db/qp/logical/sys/MetadataOperator.java
index a0e81b0..4f2c6bd 100644
---
a/iotdb/src/main/java/org/apache/iotdb/db/qp/logical/sys/MetadataOperator.java
+++
b/iotdb/src/main/java/org/apache/iotdb/db/qp/logical/sys/MetadataOperator.java
@@ -47,9 +47,11 @@ public class MetadataOperator extends RootOperator {
namespaceType = type;
switch (type) {
case SET_FILE_LEVEL:
- case ADD_PATH:
operatorType = OperatorType.SET_STORAGE_GROUP;
break;
+ case ADD_PATH:
+ operatorType = OperatorType.CREATE_TIMESERIES;
+ break;
case DELETE_PATH:
operatorType = OperatorType.DELETE_TIMESERIES;
break;
diff --git
a/iotdb/src/main/java/org/apache/iotdb/db/qp/physical/sys/MetadataPlan.java
b/iotdb/src/main/java/org/apache/iotdb/db/qp/physical/sys/MetadataPlan.java
index 82b9404..93a98a3 100644
--- a/iotdb/src/main/java/org/apache/iotdb/db/qp/physical/sys/MetadataPlan.java
+++ b/iotdb/src/main/java/org/apache/iotdb/db/qp/physical/sys/MetadataPlan.java
@@ -57,9 +57,11 @@ public class MetadataPlan extends PhysicalPlan {
this.deletePathList = deletePathList;
switch (namespaceType) {
case SET_FILE_LEVEL:
- case ADD_PATH:
setOperatorType(Operator.OperatorType.SET_STORAGE_GROUP);
break;
+ case ADD_PATH:
+ setOperatorType(Operator.OperatorType.CREATE_TIMESERIES);
+ break;
case DELETE_PATH:
setOperatorType(Operator.OperatorType.DELETE_TIMESERIES);
break;
diff --git
a/iotdb/src/main/java/org/apache/iotdb/db/qp/strategy/PhysicalGenerator.java
b/iotdb/src/main/java/org/apache/iotdb/db/qp/strategy/PhysicalGenerator.java
index 290d777..d33e044 100644
--- a/iotdb/src/main/java/org/apache/iotdb/db/qp/strategy/PhysicalGenerator.java
+++ b/iotdb/src/main/java/org/apache/iotdb/db/qp/strategy/PhysicalGenerator.java
@@ -80,6 +80,7 @@ public class PhysicalGenerator {
LoadDataOperator loadData = (LoadDataOperator) operator;
return new LoadDataPlan(loadData.getInputFilePath(),
loadData.getMeasureType());
case SET_STORAGE_GROUP:
+ case CREATE_TIMESERIES:
case DELETE_TIMESERIES:
case METADATA:
MetadataOperator metadata = (MetadataOperator) operator;
diff --git a/iotdb/src/main/java/org/apache/iotdb/db/utils/AuthUtils.java
b/iotdb/src/main/java/org/apache/iotdb/db/utils/AuthUtils.java
index 6d7710e..5e253a4 100644
--- a/iotdb/src/main/java/org/apache/iotdb/db/utils/AuthUtils.java
+++ b/iotdb/src/main/java/org/apache/iotdb/db/utils/AuthUtils.java
@@ -126,6 +126,7 @@ public class AuthUtils {
switch (type) {
case READ_TIMESERIES:
case SET_STORAGE_GROUP:
+ case CREATE_TIMESERIES:
case DELETE_TIMESERIES:
case INSERT_TIMESERIES:
case UPDATE_TIMESERIES:
@@ -138,6 +139,7 @@ public class AuthUtils {
switch (type) {
case READ_TIMESERIES:
case SET_STORAGE_GROUP:
+ case CREATE_TIMESERIES:
case DELETE_TIMESERIES:
case INSERT_TIMESERIES:
case UPDATE_TIMESERIES:
diff --git
a/iotdb/src/main/java/org/apache/iotdb/db/writelog/transfer/PhysicalPlanLogTransfer.java
b/iotdb/src/main/java/org/apache/iotdb/db/writelog/transfer/PhysicalPlanLogTransfer.java
index 110e5e9..838ddb7 100644
---
a/iotdb/src/main/java/org/apache/iotdb/db/writelog/transfer/PhysicalPlanLogTransfer.java
+++
b/iotdb/src/main/java/org/apache/iotdb/db/writelog/transfer/PhysicalPlanLogTransfer.java
@@ -41,6 +41,7 @@ public class PhysicalPlanLogTransfer {
codec = (Codec<PhysicalPlan>)
PhysicalPlanCodec.fromOpcode(SystemLogOperator.DELETE).codec;
break;
case DELETE_TIMESERIES:
+ case CREATE_TIMESERIES:
case SET_STORAGE_GROUP:
codec = (Codec<PhysicalPlan>)
PhysicalPlanCodec.fromOpcode(SystemLogOperator.METADATA).codec;
break;
diff --git
a/iotdb/src/test/java/org/apache/iotdb/db/integration/IoTDBAuthorizationIT.java
b/iotdb/src/test/java/org/apache/iotdb/db/integration/IoTDBAuthorizationIT.java
index ecb3cbb..4484bc7 100644
---
a/iotdb/src/test/java/org/apache/iotdb/db/integration/IoTDBAuthorizationIT.java
+++
b/iotdb/src/test/java/org/apache/iotdb/db/integration/IoTDBAuthorizationIT.java
@@ -125,6 +125,7 @@ public class IoTDBAuthorizationIT {
userStmt.execute("INSERT INTO root.a(timestamp, b) VALUES (100, 100)");
userStmt.execute("SELECT * from root.a");
userStmt.execute("GRANT USER tempuser PRIVILEGES 'SET_STORAGE_GROUP' ON
root.a");
+ userStmt.execute("GRANT USER tempuser PRIVILEGES 'CREATE_TIMESERIES' ON
root.b.b");
adminStmt.execute("REVOKE USER tempuser PRIVILEGES 'ALL' ON root");
@@ -371,6 +372,7 @@ public class IoTDBAuthorizationIT {
adminStmt.execute("GRANT USER tempuser PRIVILEGES 'SET_STORAGE_GROUP' ON
root.a");
userStmt.execute("SET STORAGE GROUP TO root.a");
+ adminStmt.execute("GRANT USER tempuser PRIVILEGES 'CREATE_TIMESERIES' ON
root.a.b");
userStmt.execute("CREATE TIMESERIES root.a.b WITH
DATATYPE=INT32,ENCODING=PLAIN");
caught = false;
@@ -401,6 +403,34 @@ public class IoTDBAuthorizationIT {
}
assertTrue(caught);
+ caught = false;
+ try {
+ // no privilege to create timeseries
+ userStmt.execute("CREATE TIMESERIES root.b.a WITH
DATATYPE=INT32,ENCODING=PLAIN");
+ } catch (SQLException e) {
+ caught = true;
+ }
+ assertTrue(caught);
+
+ caught = false;
+ try {
+ // privilege already exists
+ adminStmt.execute("GRANT USER tempuser PRIVILEGES 'CREATE_TIMESERIES' ON
root.a.b");
+ } catch (SQLException e) {
+ caught = true;
+ }
+ assertTrue(caught);
+
+ adminStmt.execute("REVOKE USER tempuser PRIVILEGES 'CREATE_TIMESERIES' ON
root.a.b");
+ caught = false;
+ try {
+ // no privilege to create this one any more
+ userStmt.execute("CREATE TIMESERIES root.a.b WITH
DATATYPE=INT32,ENCODING=PLAIN");
+ } catch (SQLException e) {
+ caught = true;
+ }
+ assertTrue(caught);
+
// the user cannot delete the timeseries now
caught = false;
try {
@@ -451,6 +481,7 @@ public class IoTDBAuthorizationIT {
adminStmt.execute("GRANT USER tempuser PRIVILEGES 'SET_STORAGE_GROUP' ON
root.a");
userStmt.execute("SET STORAGE GROUP TO root.a");
+ adminStmt.execute("GRANT USER tempuser PRIVILEGES 'CREATE_TIMESERIES' ON
root.a.b");
userStmt.execute("CREATE TIMESERIES root.a.b WITH
DATATYPE=INT32,ENCODING=PLAIN");
// grant privilege to insert
@@ -523,7 +554,7 @@ public class IoTDBAuthorizationIT {
assertTrue(caught);
adminStmt.execute("CREATE ROLE admin");
adminStmt.execute(
- "GRANT ROLE admin PRIVILEGES
'SET_STORAGE_GROUP','DELETE_TIMESERIES','READ_TIMESERIES','INSERT_TIMESERIES'
on root");
+ "GRANT ROLE admin PRIVILEGES
'SET_STORAGE_GROUP','CREATE_TIMESERIES','DELETE_TIMESERIES','READ_TIMESERIES','INSERT_TIMESERIES'
on root");
adminStmt.execute("GRANT admin TO tempuser");
userStmt.execute("SET STORAGE GROUP TO root.a");
diff --git a/iotdb/src/test/java/org/apache/iotdb/db/qp/QueryProcessorTest.java
b/iotdb/src/test/java/org/apache/iotdb/db/qp/QueryProcessorTest.java
new file mode 100644
index 0000000..489bd20
--- /dev/null
+++ b/iotdb/src/test/java/org/apache/iotdb/db/qp/QueryProcessorTest.java
@@ -0,0 +1,59 @@
+/**
+ * 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.db.qp;
+
+import static org.junit.Assert.assertEquals;
+
+import org.apache.iotdb.db.exception.ArgsErrorException;
+import org.apache.iotdb.db.exception.ProcessorException;
+import org.apache.iotdb.db.exception.qp.QueryProcessorException;
+import org.apache.iotdb.db.qp.executor.OverflowQPExecutor;
+import org.apache.iotdb.db.qp.logical.Operator.OperatorType;
+import org.apache.iotdb.db.qp.physical.PhysicalPlan;
+import org.junit.Test;
+
+public class QueryProcessorTest {
+
+ private QueryProcessor processor = new QueryProcessor(new
OverflowQPExecutor());
+
+ @Test
+ public void parseSQLToPhysicalPlan()
+ throws ArgsErrorException, ProcessorException, QueryProcessorException {
+ String createSGStatement = "set storage group to root.vehicle";
+ PhysicalPlan plan1 = processor.parseSQLToPhysicalPlan(createSGStatement);
+ assertEquals(OperatorType.SET_STORAGE_GROUP, plan1.getOperatorType());
+
+ String createTSStatement = "create timeseries root.vehicle.d1.s1 with
datatype=INT32,encoding=RLE";
+ PhysicalPlan plan2 = processor.parseSQLToPhysicalPlan(createTSStatement);
+ assertEquals(OperatorType.CREATE_TIMESERIES, plan2.getOperatorType());
+
+ String deleteTSStatement = "delete timeseries root.vehicle.d1.s1";
+ PhysicalPlan plan3 = processor.parseSQLToPhysicalPlan(deleteTSStatement);
+ assertEquals(OperatorType.DELETE_TIMESERIES, plan3.getOperatorType());
+
+ String insertStatement = "insert into root.vehicle.d0(timestamp,s0)
values(10,100)";
+ PhysicalPlan plan4 = processor.parseSQLToPhysicalPlan(insertStatement);
+ assertEquals(OperatorType.INSERT, plan4.getOperatorType());
+
+ String propertyStatement = "add label label1021 to property propropro";
+ PhysicalPlan plan5 = processor.parseSQLToPhysicalPlan(propertyStatement);
+ assertEquals(OperatorType.PROPERTY, plan5.getOperatorType());
+
+ }
+}
\ No newline at end of file
diff --git
a/iotdb/src/test/java/org/apache/iotdb/db/qp/plan/PhysicalPlanTest.java
b/iotdb/src/test/java/org/apache/iotdb/db/qp/plan/PhysicalPlanTest.java
index 3b46f55..1643915 100644
--- a/iotdb/src/test/java/org/apache/iotdb/db/qp/plan/PhysicalPlanTest.java
+++ b/iotdb/src/test/java/org/apache/iotdb/db/qp/plan/PhysicalPlanTest.java
@@ -90,9 +90,10 @@ public class PhysicalPlanTest {
String sql = "grant role xm privileges
'SET_STORAGE_GROUP','DELETE_TIMESERIES' on root.vehicle.d1.s1";
QueryProcessor processor = new QueryProcessor(new MemIntQpExecutor());
AuthorPlan plan = (AuthorPlan) processor.parseSQLToPhysicalPlan(sql);
+ System.out.println(plan.toString());
assertEquals(
"userName: null\n" + "roleName: xm\n" + "password: null\n" +
"newPassword: null\n"
- + "permissions: [0, 4]\n" + "nodeName: root.vehicle.d1.s1\n" +
"authorType: GRANT_ROLE",
+ + "permissions: [0, 5]\n" + "nodeName: root.vehicle.d1.s1\n" +
"authorType: GRANT_ROLE",
plan.toString());
}
diff --git
a/iotdb/src/test/java/org/apache/iotdb/db/writelog/transfer/PhysicalPlanLogTransferTest.java
b/iotdb/src/test/java/org/apache/iotdb/db/writelog/transfer/PhysicalPlanLogTransferTest.java
index a226336..58e8b1f 100644
---
a/iotdb/src/test/java/org/apache/iotdb/db/writelog/transfer/PhysicalPlanLogTransferTest.java
+++
b/iotdb/src/test/java/org/apache/iotdb/db/writelog/transfer/PhysicalPlanLogTransferTest.java
@@ -18,6 +18,7 @@
*/
package org.apache.iotdb.db.writelog.transfer;
+import static org.junit.Assert.assertArrayEquals;
import static org.junit.Assert.assertEquals;
import java.io.IOException;
@@ -55,19 +56,19 @@ public class PhysicalPlanLogTransferTest {
byte[] insertPlanBytesTest =
PhysicalPlanLogTransfer.operatorToLog(insertPlan);
Codec<InsertPlan> insertPlanCodec = CodecInstances.multiInsertPlanCodec;
byte[] insertPlanProperty = insertPlanCodec.encode(insertPlan);
- assertEquals(true, Arrays.equals(insertPlanProperty, insertPlanBytesTest));
+ assertArrayEquals(insertPlanProperty, insertPlanBytesTest);
/** Delete Plan test **/
byte[] deletePlanBytesTest =
PhysicalPlanLogTransfer.operatorToLog(deletePlan);
Codec<DeletePlan> deletePlanCodec = CodecInstances.deletePlanCodec;
byte[] deletePlanProperty = deletePlanCodec.encode(deletePlan);
- assertEquals(true, Arrays.equals(deletePlanProperty, deletePlanBytesTest));
+ assertArrayEquals(deletePlanProperty, deletePlanBytesTest);
/** Update Plan test **/
byte[] updatePlanBytesTest =
PhysicalPlanLogTransfer.operatorToLog(updatePlan);
Codec<UpdatePlan> updatePlanCodec = CodecInstances.updatePlanCodec;
byte[] updatePlanProperty = updatePlanCodec.encode(updatePlan);
- assertEquals(true, Arrays.equals(updatePlanProperty, updatePlanBytesTest));
+ assertArrayEquals(updatePlanProperty, updatePlanBytesTest);
/** Metadata Plan test **/
String metadataStatement = "create timeseries root.vehicle.d1.s1 with
datatype=INT32,encoding=RLE";
@@ -75,7 +76,7 @@ public class PhysicalPlanLogTransferTest {
byte[] metadataPlanBytesTest =
PhysicalPlanLogTransfer.operatorToLog(metadataPlan);
Codec<MetadataPlan> metadataPlanCodec = CodecInstances.metadataPlanCodec;
byte[] metadataPlanProperty = metadataPlanCodec.encode(metadataPlan);
- assertEquals(true, Arrays.equals(metadataPlanProperty,
metadataPlanBytesTest));
+ assertArrayEquals(metadataPlanProperty, metadataPlanBytesTest);
/** Author Plan test **/
String sql = "grant role xm privileges
'SET_STORAGE_GROUP','DELETE_TIMESERIES' on root.vehicle.device.sensor";
@@ -83,13 +84,13 @@ public class PhysicalPlanLogTransferTest {
byte[] authorPlanBytesTest =
PhysicalPlanLogTransfer.operatorToLog(authorPlan);
Codec<AuthorPlan> authorPlanCodec = CodecInstances.authorPlanCodec;
byte[] authorPlanProperty = authorPlanCodec.encode(authorPlan);
- assertEquals(true, Arrays.equals(authorPlanProperty, authorPlanBytesTest));
+ assertArrayEquals(authorPlanProperty, authorPlanBytesTest);
/** LoadData Plan test **/
byte[] loadDataPlanBytesTest =
PhysicalPlanLogTransfer.operatorToLog(loadDataPlan);
Codec<LoadDataPlan> loadDataPlanCodec = CodecInstances.loadDataPlanCodec;
byte[] loadDataPlanProperty = loadDataPlanCodec.encode(loadDataPlan);
- assertEquals(true, Arrays.equals(loadDataPlanProperty,
loadDataPlanBytesTest));
+ assertArrayEquals(loadDataPlanProperty, loadDataPlanBytesTest);
/** Property Plan test **/
sql = "add label label1021 to property propropro";
@@ -97,7 +98,7 @@ public class PhysicalPlanLogTransferTest {
byte[] propertyPlanBytesTest =
PhysicalPlanLogTransfer.operatorToLog(propertyPlan);
Codec<PropertyPlan> propertyPlanCodec = CodecInstances.propertyPlanCodec;
byte[] propertyPlanProperty = propertyPlanCodec.encode(propertyPlan);
- assertEquals(true, Arrays.equals(propertyPlanProperty,
propertyPlanBytesTest));
+ assertArrayEquals(propertyPlanProperty, propertyPlanBytesTest);
}
@@ -109,19 +110,19 @@ public class PhysicalPlanLogTransferTest {
byte[] insertPlanBytesTest =
PhysicalPlanLogTransfer.operatorToLog(insertPlan);
InsertPlan insertPlanTest = (InsertPlan) PhysicalPlanLogTransfer
.logToOperator(insertPlanBytesTest);
- assertEquals(true, insertPlanTest.equals(insertPlan));
+ assertEquals(insertPlanTest, insertPlan);
/** Delete Plan test **/
byte[] deletePlanBytesTest =
PhysicalPlanLogTransfer.operatorToLog(deletePlan);
DeletePlan deletePlanTest = (DeletePlan) PhysicalPlanLogTransfer
.logToOperator(deletePlanBytesTest);
- assertEquals(true, deletePlanTest.equals(deletePlan));
+ assertEquals(deletePlanTest, deletePlan);
/** Update Plan test **/
byte[] updatePlanBytesTest =
PhysicalPlanLogTransfer.operatorToLog(updatePlan);
UpdatePlan updatePlanTest = (UpdatePlan) PhysicalPlanLogTransfer
.logToOperator(updatePlanBytesTest);
- assertEquals(true, updatePlanTest.equals(updatePlan));
+ assertEquals(updatePlanTest, updatePlan);
/** Metadata Plan test **/
String metadataStatement = "create timeseries root.vehicle.d1.s1 with
datatype=INT32,encoding=RLE";
@@ -129,7 +130,7 @@ public class PhysicalPlanLogTransferTest {
byte[] metadataPlanBytesTest =
PhysicalPlanLogTransfer.operatorToLog(metadataPlan);
MetadataPlan metadataPlanTest = (MetadataPlan) PhysicalPlanLogTransfer
.logToOperator(metadataPlanBytesTest);
- assertEquals(true, metadataPlanTest.equals(metadataPlan));
+ assertEquals(metadataPlanTest, metadataPlan);
/** Author Plan test **/
String sql = "grant role xm privileges
'SET_STORAGE_GROUP','DELETE_TIMESERIES' on root.vehicle.device.sensor";
@@ -137,13 +138,13 @@ public class PhysicalPlanLogTransferTest {
byte[] authorPlanBytesTest =
PhysicalPlanLogTransfer.operatorToLog(authorPlan);
AuthorPlan authorPlanTest = (AuthorPlan) PhysicalPlanLogTransfer
.logToOperator(authorPlanBytesTest);
- assertEquals(true, authorPlanTest.equals(authorPlan));
+ assertEquals(authorPlanTest, authorPlan);
/** LoadData Plan test **/
byte[] loadDataPlanBytesTest =
PhysicalPlanLogTransfer.operatorToLog(loadDataPlan);
LoadDataPlan loadDataPlanTest = (LoadDataPlan) PhysicalPlanLogTransfer
.logToOperator(loadDataPlanBytesTest);
- assertEquals(true, loadDataPlan.equals(loadDataPlanTest));
+ assertEquals(loadDataPlan, loadDataPlanTest);
/** Property Plan test **/
sql = "add label label1021 to property propropro";
@@ -151,7 +152,7 @@ public class PhysicalPlanLogTransferTest {
byte[] propertyPlanBytesTest =
PhysicalPlanLogTransfer.operatorToLog(propertyPlan);
PropertyPlan propertyPlanTest = (PropertyPlan) PhysicalPlanLogTransfer
.logToOperator(propertyPlanBytesTest);
- assertEquals(true, propertyPlanTest.equals(propertyPlan));
+ assertEquals(propertyPlanTest, propertyPlan);
}
}
\ No newline at end of file