You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by er...@apache.org on 2023/02/08 05:32:34 UTC
[iotdb] 01/01: Fix IT error by parallel suites
This is an automated email from the ASF dual-hosted git repository.
ericpai pushed a commit to branch bugfix/disable-thread-parallel
in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit 8ad1f082002040a7db10692bf4f6e769245a9d09
Author: ericpai <er...@hotmail.com>
AuthorDate: Wed Feb 8 13:32:18 2023 +0800
Fix IT error by parallel suites
---
integration-test/pom.xml | 7 +-
.../iotdb/it/env/cluster/MppCommonConfig.java | 2 +-
.../org/apache/iotdb/db/it/IoTDBSimpleQueryIT.java | 16 +-
.../db/it/schema/IoTDBAutoCreateSchemaIT.java | 48 +-
.../it/schema/IoTDBCreateAlignedTimeseriesIT.java | 55 +-
.../db/it/schema/IoTDBCreateStorageGroupIT.java | 71 +-
.../db/it/schema/IoTDBDeactivateTemplateIT.java | 288 ++++----
.../it/schema/IoTDBDeleteAlignedTimeseriesIT.java | 199 +++---
.../db/it/schema/IoTDBDeleteTimeseriesIT.java | 504 +++++++-------
.../iotdb/db/it/schema/IoTDBSchemaTemplateIT.java | 751 +++++++++++----------
10 files changed, 992 insertions(+), 949 deletions(-)
diff --git a/integration-test/pom.xml b/integration-test/pom.xml
index 21e5aa7bda..05f3dd2fef 100644
--- a/integration-test/pom.xml
+++ b/integration-test/pom.xml
@@ -30,11 +30,9 @@
<artifactId>integration-test</artifactId>
<properties>
<integrationTest.forkCount>1</integrationTest.forkCount>
- <integrationTest.threadCount>1</integrationTest.threadCount>
<integrationTest.randomSelectWriteNode>true</integrationTest.randomSelectWriteNode>
<integrationTest.readAndVerifyWithMultiNode>true</integrationTest.readAndVerifyWithMultiNode>
<integrationTest.launchNodeInSameJVM>true</integrationTest.launchNodeInSameJVM>
- <integrationTest.parallelMode>suitesAndClasses</integrationTest.parallelMode>
<integrationTest.nodeMaxHeapSize>200m</integrationTest.nodeMaxHeapSize>
<integrationTest.nodeNewHeapSize>200m</integrationTest.nodeNewHeapSize>
<integrationTest.testEnv/>
@@ -208,8 +206,7 @@
<groups>${integrationTest.includedGroups}</groups>
<excludedGroups>${integrationTest.excludedGroups}</excludedGroups>
<useSystemClassLoader>false</useSystemClassLoader>
- <parallel>${integrationTest.parallelMode}</parallel>
- <threadCount>${integrationTest.threadCount}</threadCount>
+ <parallel>none</parallel>
<forkCount>${integrationTest.forkCount}</forkCount>
<reuseForks>false</reuseForks>
<systemPropertyVariables>
@@ -262,7 +259,6 @@
<integrationTest.launchNodeInSameJVM>false</integrationTest.launchNodeInSameJVM>
<integrationTest.randomSelectWriteNode>false</integrationTest.randomSelectWriteNode>
<integrationTest.readAndVerifyWithMultiNode>false</integrationTest.readAndVerifyWithMultiNode>
- <integrationTest.parallelMode>suitesAndClasses</integrationTest.parallelMode>
</properties>
<activation>
<activeByDefault>true</activeByDefault>
@@ -289,7 +285,6 @@
<integrationTest.launchNodeInSameJVM>false</integrationTest.launchNodeInSameJVM>
<integrationTest.randomSelectWriteNode>true</integrationTest.randomSelectWriteNode>
<integrationTest.readAndVerifyWithMultiNode>true</integrationTest.readAndVerifyWithMultiNode>
- <integrationTest.parallelMode>suitesAndClasses</integrationTest.parallelMode>
</properties>
<activation>
<activeByDefault>false</activeByDefault>
diff --git a/integration-test/src/main/java/org/apache/iotdb/it/env/cluster/MppCommonConfig.java b/integration-test/src/main/java/org/apache/iotdb/it/env/cluster/MppCommonConfig.java
index 0fcefef7c0..37c86f1746 100644
--- a/integration-test/src/main/java/org/apache/iotdb/it/env/cluster/MppCommonConfig.java
+++ b/integration-test/src/main/java/org/apache/iotdb/it/env/cluster/MppCommonConfig.java
@@ -332,6 +332,6 @@ public class MppCommonConfig extends MppBaseConfig implements CommonConfig {
@Override
public CommonConfig setSchemaMemoryAllocate(String schemaMemoryAllocate) {
setProperty("schema_memory_allocate_proportion", String.valueOf(schemaMemoryAllocate));
- return null;
+ return this;
}
}
diff --git a/integration-test/src/test/java/org/apache/iotdb/db/it/IoTDBSimpleQueryIT.java b/integration-test/src/test/java/org/apache/iotdb/db/it/IoTDBSimpleQueryIT.java
index 082b89fdca..9e31abed80 100644
--- a/integration-test/src/test/java/org/apache/iotdb/db/it/IoTDBSimpleQueryIT.java
+++ b/integration-test/src/test/java/org/apache/iotdb/db/it/IoTDBSimpleQueryIT.java
@@ -41,6 +41,7 @@ import java.sql.Statement;
import java.sql.Types;
import java.util.ArrayList;
import java.util.Arrays;
+import java.util.Collections;
import java.util.List;
import static org.junit.Assert.assertEquals;
@@ -122,25 +123,26 @@ public class IoTDBSimpleQueryIT {
"create timeseries root.turbine.d2.s1 with datatype=FLOAT, encoding=GORILLA, compression=SNAPPY");
statement.execute("insert into root.turbine.d1(timestamp,s1,s2) values(1,1,2)");
- String[] results = {"root.turbine.d1.s1", "root.turbine.d1.s2"};
+ List<String> expected = Arrays.asList("root.turbine.d1.s1", "root.turbine.d1.s2");
+ List<String> actual = new ArrayList<>();
- int count = 0;
try (ResultSet resultSet = statement.executeQuery("select last ** from root")) {
while (resultSet.next()) {
- String path = resultSet.getString(ColumnHeaderConstant.TIMESERIES);
- assertEquals(results[count], path);
- count++;
+ actual.add(resultSet.getString(ColumnHeaderConstant.TIMESERIES));
}
}
- assertEquals(2, count);
+ assertEquals(expected, actual);
+ actual.clear();
try (ResultSet resultSet = statement.executeQuery("select last * from root")) {
while (resultSet.next()) {
- count++;
+ actual.add(resultSet.getString(ColumnHeaderConstant.TIMESERIES));
}
}
+ assertEquals(Collections.emptyList(), actual);
+
} catch (Exception e) {
e.printStackTrace();
}
diff --git a/integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBAutoCreateSchemaIT.java b/integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBAutoCreateSchemaIT.java
index 2b9a6aa647..9c1939156b 100644
--- a/integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBAutoCreateSchemaIT.java
+++ b/integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBAutoCreateSchemaIT.java
@@ -50,21 +50,14 @@ import java.util.Set;
@RunWith(IoTDBTestRunner.class)
@Category({LocalStandaloneIT.class, ClusterIT.class})
public class IoTDBAutoCreateSchemaIT {
- private Statement statement;
- private Connection connection;
@Before
public void setUp() throws Exception {
EnvFactory.getEnv().initClusterEnvironment();
-
- connection = EnvFactory.getEnv().getConnection();
- statement = connection.createStatement();
}
@After
public void tearDown() throws Exception {
- statement.close();
- connection.close();
EnvFactory.getEnv().cleanClusterEnvironment();
}
@@ -163,18 +156,18 @@ public class IoTDBAutoCreateSchemaIT {
String storageGroup = "root.sg2.a.b.c";
String timeSeriesPrefix = "root.sg2.a.b";
- statement.execute(String.format("CREATE DATABASE %s", storageGroup));
- try {
- statement.execute(
- String.format("INSERT INTO %s(timestamp, c) values(123, \"aabb\")", timeSeriesPrefix));
- } catch (SQLException ignored) {
- }
-
- // ensure that current database in cache is right.
- InsertAutoCreate2Tool(storageGroup, timeSeriesPrefix);
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
+ statement.execute(String.format("CREATE DATABASE %s", storageGroup));
+ try {
+ statement.execute(
+ String.format("INSERT INTO %s(timestamp, c) values(123, \"aabb\")", timeSeriesPrefix));
+ } catch (SQLException ignored) {
+ }
- statement.close();
- connection.close();
+ // ensure that current database in cache is right.
+ InsertAutoCreate2Tool(statement, storageGroup, timeSeriesPrefix);
+ }
// todo restart test
// EnvironmentUtils.stopDaemon();
// setUp();
@@ -183,8 +176,8 @@ public class IoTDBAutoCreateSchemaIT {
// InsertAutoCreate2Tool(storageGroup, timeSeriesPrefix);
}
- private void InsertAutoCreate2Tool(String storageGroup, String timeSeriesPrefix)
- throws SQLException {
+ private void InsertAutoCreate2Tool(
+ Statement statement, String storageGroup, String timeSeriesPrefix) throws SQLException {
Set<String> resultList = new HashSet<>();
try (ResultSet resultSet = statement.executeQuery("show timeseries")) {
while (resultSet.next()) {
@@ -207,16 +200,19 @@ public class IoTDBAutoCreateSchemaIT {
* insert data when database hasn't been set, timeseries hasn't been created and have null values
*/
@Test
- public void testInsertAutoCreate3() {
+ public void testInsertAutoCreate3() throws SQLException {
String[] sqls = {
"INSERT INTO root.sg0.d3(timestamp,s1) values(1,null)",
"INSERT INTO root.sg0.d3(timestamp,s1,s2) values(1,null,2)",
};
- for (String sql : sqls) {
- try {
- statement.execute(sql);
- } catch (SQLException e) {
- Assert.assertTrue(e.getMessage().contains("Path [root.sg0.d3.s1] does not exist"));
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
+ for (String sql : sqls) {
+ try {
+ statement.execute(sql);
+ } catch (SQLException e) {
+ Assert.assertTrue(e.getMessage().contains("Path [root.sg0.d3.s1] does not exist"));
+ }
}
}
}
diff --git a/integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBCreateAlignedTimeseriesIT.java b/integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBCreateAlignedTimeseriesIT.java
index a3d10dd86f..79c5020383 100644
--- a/integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBCreateAlignedTimeseriesIT.java
+++ b/integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBCreateAlignedTimeseriesIT.java
@@ -44,21 +44,13 @@ import java.sql.Statement;
@RunWith(IoTDBTestRunner.class)
public class IoTDBCreateAlignedTimeseriesIT {
- private Statement statement;
- private Connection connection;
-
@Before
public void setUp() throws Exception {
EnvFactory.getEnv().initClusterEnvironment();
-
- connection = EnvFactory.getEnv().getConnection();
- statement = connection.createStatement();
}
@After
public void tearDown() throws Exception {
- statement.close();
- connection.close();
EnvFactory.getEnv().cleanClusterEnvironment();
}
@@ -70,19 +62,18 @@ public class IoTDBCreateAlignedTimeseriesIT {
"root.sg1.d1.vector1.s1,FLOAT,PLAIN,UNCOMPRESSED",
"root.sg1.d1.vector1.s2,INT64,RLE,SNAPPY"
};
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
+ statement.execute("CREATE DATABASE root.sg1");
+ try {
+ statement.execute(
+ "CREATE ALIGNED TIMESERIES root.sg1.d1.vector1(s1 FLOAT encoding=PLAIN compressor=UNCOMPRESSED,s2 INT64 encoding=RLE)");
+ } catch (SQLException ignored) {
+ }
- statement.execute("CREATE DATABASE root.sg1");
- try {
- statement.execute(
- "CREATE ALIGNED TIMESERIES root.sg1.d1.vector1(s1 FLOAT encoding=PLAIN compressor=UNCOMPRESSED,s2 INT64 encoding=RLE)");
- } catch (SQLException ignored) {
+ // ensure that current database in cache is right.
+ assertTimeseriesEquals(timeSeriesArray);
}
-
- // ensure that current database in cache is right.
- assertTimeseriesEquals(timeSeriesArray);
-
- statement.close();
- connection.close();
// todo test restart
// EnvironmentUtils.stopDaemon();
// setUp();
@@ -98,16 +89,18 @@ public class IoTDBCreateAlignedTimeseriesIT {
new String[] {
"root.sg1.d1.vector1.s1,DOUBLE,PLAIN,SNAPPY", "root.sg1.d1.vector1.s2,INT64,RLE,SNAPPY"
};
-
- statement.execute("CREATE DATABASE root.sg1");
- try {
- statement.execute(
- "CREATE ALIGNED TIMESERIES root.sg1.d1.vector1(s1 FLOAT encoding=PLAIN compressor=UNCOMPRESSED,s2 INT64 encoding=RLE)");
- statement.execute("DELETE TIMESERIES root.sg1.d1.vector1.s1");
- statement.execute(
- "CREATE ALIGNED TIMESERIES root.sg1.d1.vector1(s1 DOUBLE encoding=PLAIN compressor=SNAPPY)");
- } catch (SQLException e) {
- e.printStackTrace();
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
+ statement.execute("CREATE DATABASE root.sg1");
+ try {
+ statement.execute(
+ "CREATE ALIGNED TIMESERIES root.sg1.d1.vector1(s1 FLOAT encoding=PLAIN compressor=UNCOMPRESSED,s2 INT64 encoding=RLE)");
+ statement.execute("DELETE TIMESERIES root.sg1.d1.vector1.s1");
+ statement.execute(
+ "CREATE ALIGNED TIMESERIES root.sg1.d1.vector1(s1 DOUBLE encoding=PLAIN compressor=SNAPPY)");
+ } catch (SQLException e) {
+ e.printStackTrace();
+ }
}
// ensure that current database in cache is right.
@@ -124,7 +117,9 @@ public class IoTDBCreateAlignedTimeseriesIT {
private void assertTimeseriesEquals(String[] timeSeriesArray) throws SQLException {
int count = 0;
- try (ResultSet resultSet = statement.executeQuery("SHOW TIMESERIES")) {
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement();
+ ResultSet resultSet = statement.executeQuery("SHOW TIMESERIES")) {
while (resultSet.next()) {
String ActualResult =
resultSet.getString(ColumnHeaderConstant.TIMESERIES)
diff --git a/integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBCreateStorageGroupIT.java b/integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBCreateStorageGroupIT.java
index 6284322413..c55a20ffe4 100644
--- a/integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBCreateStorageGroupIT.java
+++ b/integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBCreateStorageGroupIT.java
@@ -51,21 +51,14 @@ import static org.junit.Assert.fail;
@RunWith(IoTDBTestRunner.class)
@Category({LocalStandaloneIT.class, ClusterIT.class})
public class IoTDBCreateStorageGroupIT {
- private Statement statement;
- private Connection connection;
@Before
public void setUp() throws Exception {
EnvFactory.getEnv().initClusterEnvironment();
-
- connection = EnvFactory.getEnv().getConnection();
- statement = connection.createStatement();
}
@After
public void tearDown() throws Exception {
- statement.close();
- connection.close();
EnvFactory.getEnv().cleanClusterEnvironment();
}
@@ -73,16 +66,15 @@ public class IoTDBCreateStorageGroupIT {
@Test
public void testCreateStorageGroup() throws Exception {
String[] storageGroups = {"root.sg1", "root.sg2", "root.sg3"};
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
+ for (String storageGroup : storageGroups) {
+ statement.execute(String.format("create database %s", storageGroup));
+ }
- for (String storageGroup : storageGroups) {
- statement.execute(String.format("create database %s", storageGroup));
+ // ensure that current StorageGroup in cache is right.
+ createStorageGroupTool(statement, storageGroups);
}
-
- // ensure that current StorageGroup in cache is right.
- createStorageGroupTool(storageGroups);
-
- statement.close();
- connection.close();
// todo test restart
// EnvironmentUtils.stopDaemon();
// setUp();
@@ -91,7 +83,8 @@ public class IoTDBCreateStorageGroupIT {
// createStorageGroupTool(storageGroups);
}
- private void createStorageGroupTool(String[] storageGroups) throws SQLException {
+ private void createStorageGroupTool(Statement statement, String[] storageGroups)
+ throws SQLException {
List<String> resultList = new ArrayList<>();
try (ResultSet resultSet = statement.executeQuery("SHOW DATABASES")) {
@@ -114,16 +107,19 @@ public class IoTDBCreateStorageGroupIT {
public void testCreateExistStorageGroup1() throws Exception {
String storageGroup = "root.sg";
- statement.execute(String.format("CREATE DATABASE %s", storageGroup));
-
- try {
- statement.execute(String.format("create database %s", storageGroup));
- fail();
- } catch (SQLException e) {
- Assert.assertEquals(
- TSStatusCode.DATABASE_ALREADY_EXISTS.getStatusCode()
- + ": root.sg has already been created as database",
- e.getMessage());
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
+ statement.execute(String.format("CREATE DATABASE %s", storageGroup));
+
+ try {
+ statement.execute(String.format("create database %s", storageGroup));
+ fail();
+ } catch (SQLException e) {
+ Assert.assertEquals(
+ TSStatusCode.DATABASE_ALREADY_EXISTS.getStatusCode()
+ + ": root.sg has already been created as database",
+ e.getMessage());
+ }
}
}
@@ -131,16 +127,19 @@ public class IoTDBCreateStorageGroupIT {
@Test
public void testCreateExistStorageGroup2() throws Exception {
- statement.execute("create database root.sg");
-
- try {
- statement.execute("create database root.sg.`device`");
- fail();
- } catch (SQLException e) {
- Assert.assertEquals(
- TSStatusCode.DATABASE_ALREADY_EXISTS.getStatusCode()
- + ": root.sg has already been created as database",
- e.getMessage());
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
+ statement.execute("create database root.sg");
+
+ try {
+ statement.execute("create database root.sg.`device`");
+ fail();
+ } catch (SQLException e) {
+ Assert.assertEquals(
+ TSStatusCode.DATABASE_ALREADY_EXISTS.getStatusCode()
+ + ": root.sg has already been created as database",
+ e.getMessage());
+ }
}
}
}
diff --git a/integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBDeactivateTemplateIT.java b/integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBDeactivateTemplateIT.java
index 1e5821c264..8514d69b14 100644
--- a/integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBDeactivateTemplateIT.java
+++ b/integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBDeactivateTemplateIT.java
@@ -42,208 +42,226 @@ import java.sql.Statement;
@Category({ClusterIT.class})
public class IoTDBDeactivateTemplateIT {
- private Statement statement;
- private Connection connection;
-
@Before
public void setUp() throws Exception {
EnvFactory.getEnv().initClusterEnvironment();
- connection = EnvFactory.getEnv().getConnection();
- statement = connection.createStatement();
prepareTemplate();
}
@After
public void tearDown() throws Exception {
- statement.close();
- connection.close();
EnvFactory.getEnv().cleanClusterEnvironment();
}
private void prepareTemplate() throws SQLException {
// create database
- statement.execute("CREATE DATABASE root.sg1");
- statement.execute("CREATE DATABASE root.sg2");
- statement.execute("CREATE DATABASE root.sg3");
- statement.execute("CREATE DATABASE root.sg4");
-
- // create schema template
- statement.execute("CREATE SCHEMA TEMPLATE t1 (s1 INT64, s2 DOUBLE)");
- statement.execute("CREATE SCHEMA TEMPLATE t2 (s1 INT64, s2 DOUBLE)");
-
- // set schema template
- statement.execute("SET SCHEMA TEMPLATE t1 TO root.sg1");
- statement.execute("SET SCHEMA TEMPLATE t1 TO root.sg2");
- statement.execute("SET SCHEMA TEMPLATE t2 TO root.sg3");
- statement.execute("SET SCHEMA TEMPLATE t2 TO root.sg4");
-
- String insertSql = "insert into root.sg%d.d1(time, s1, s2) values(%d, %d, %d)";
- for (int i = 1; i <= 4; i++) {
- for (int j = 1; j <= 4; j++) {
- statement.execute(String.format(insertSql, j, i, i, i));
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
+
+ statement.execute("CREATE DATABASE root.sg1");
+ statement.execute("CREATE DATABASE root.sg2");
+ statement.execute("CREATE DATABASE root.sg3");
+ statement.execute("CREATE DATABASE root.sg4");
+
+ // create schema template
+ statement.execute("CREATE SCHEMA TEMPLATE t1 (s1 INT64, s2 DOUBLE)");
+ statement.execute("CREATE SCHEMA TEMPLATE t2 (s1 INT64, s2 DOUBLE)");
+
+ // set schema template
+ statement.execute("SET SCHEMA TEMPLATE t1 TO root.sg1");
+ statement.execute("SET SCHEMA TEMPLATE t1 TO root.sg2");
+ statement.execute("SET SCHEMA TEMPLATE t2 TO root.sg3");
+ statement.execute("SET SCHEMA TEMPLATE t2 TO root.sg4");
+
+ String insertSql = "insert into root.sg%d.d1(time, s1, s2) values(%d, %d, %d)";
+ for (int i = 1; i <= 4; i++) {
+ for (int j = 1; j <= 4; j++) {
+ statement.execute(String.format(insertSql, j, i, i, i));
+ }
}
}
}
@Test
public void deactivateTemplateAndReactivateTest() throws Exception {
- statement.execute("DEACTIVATE SCHEMA TEMPLATE t1 FROM root.sg1.d1");
- try (ResultSet resultSet = statement.executeQuery("SELECT * FROM root.sg1.*")) {
- ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
- Assert.assertEquals(1, resultSetMetaData.getColumnCount());
- Assert.assertFalse(resultSet.next());
- }
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
+ statement.execute("DEACTIVATE SCHEMA TEMPLATE t1 FROM root.sg1.d1");
+ try (ResultSet resultSet = statement.executeQuery("SELECT * FROM root.sg1.*")) {
+ ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
+ Assert.assertEquals(1, resultSetMetaData.getColumnCount());
+ Assert.assertFalse(resultSet.next());
+ }
- statement.execute("CREATE TIMESERIES OF SCHEMA TEMPLATE ON root.sg1.d1");
+ statement.execute("CREATE TIMESERIES OF SCHEMA TEMPLATE ON root.sg1.d1");
- try (ResultSet resultSet = statement.executeQuery("SELECT * FROM root.sg1.*")) {
- ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
- Assert.assertEquals(3, resultSetMetaData.getColumnCount());
- Assert.assertFalse(resultSet.next());
- }
+ try (ResultSet resultSet = statement.executeQuery("SELECT * FROM root.sg1.*")) {
+ ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
+ Assert.assertEquals(3, resultSetMetaData.getColumnCount());
+ Assert.assertFalse(resultSet.next());
+ }
- statement.execute("insert into root.sg1.d1(time, s1, s2) values(1, 1, 1)");
-
- String[] retArray = new String[] {"1,1,1.0,"};
- int cnt = 0;
- try (ResultSet resultSet = statement.executeQuery("SELECT * FROM root.sg1.*")) {
- ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
- Assert.assertEquals(3, resultSetMetaData.getColumnCount());
- while (resultSet.next()) {
- StringBuilder builder = new StringBuilder();
- for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
- builder.append(resultSet.getString(i)).append(",");
+ statement.execute("insert into root.sg1.d1(time, s1, s2) values(1, 1, 1)");
+
+ String[] retArray = new String[] {"1,1,1.0,"};
+ int cnt = 0;
+ try (ResultSet resultSet = statement.executeQuery("SELECT * FROM root.sg1.*")) {
+ ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
+ Assert.assertEquals(3, resultSetMetaData.getColumnCount());
+ while (resultSet.next()) {
+ StringBuilder builder = new StringBuilder();
+ for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
+ builder.append(resultSet.getString(i)).append(",");
+ }
+ Assert.assertEquals(retArray[cnt], builder.toString());
+ cnt++;
}
- Assert.assertEquals(retArray[cnt], builder.toString());
- cnt++;
+ Assert.assertEquals(1, cnt);
}
- Assert.assertEquals(1, cnt);
}
}
@Test
public void deactivateTemplateAndAutoDeleteDeviceTest() throws Exception {
- statement.execute("DEACTIVATE SCHEMA TEMPLATE t1 FROM root.sg1.d1");
- try (ResultSet resultSet = statement.executeQuery("SELECT * FROM root.sg1.*")) {
- ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
- Assert.assertEquals(1, resultSetMetaData.getColumnCount());
- Assert.assertFalse(resultSet.next());
- }
- try (ResultSet resultSet = statement.executeQuery("SHOW DEVICES root.sg1.*")) {
- ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
- Assert.assertFalse(resultSet.next());
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
+ statement.execute("DEACTIVATE SCHEMA TEMPLATE t1 FROM root.sg1.d1");
+ try (ResultSet resultSet = statement.executeQuery("SELECT * FROM root.sg1.*")) {
+ ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
+ Assert.assertEquals(1, resultSetMetaData.getColumnCount());
+ Assert.assertFalse(resultSet.next());
+ }
+ try (ResultSet resultSet = statement.executeQuery("SHOW DEVICES root.sg1.*")) {
+ ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
+ Assert.assertFalse(resultSet.next());
+ }
}
}
@Test
public void deactivateTemplateCrossSchemaRegionTest() throws Exception {
String insertSql = "insert into root.sg1.d%d(time, s1, s2) values(%d, %d, %d)";
- for (int i = 1; i <= 4; i++) {
- for (int j = 1; j <= 4; j++) {
- statement.execute(String.format(insertSql, j, i, i, i));
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
+ for (int i = 1; i <= 4; i++) {
+ for (int j = 1; j <= 4; j++) {
+ statement.execute(String.format(insertSql, j, i, i, i));
+ }
}
- }
- statement.execute("DEACTIVATE SCHEMA TEMPLATE FROM root.sg1.*");
- try (ResultSet resultSet = statement.executeQuery("SELECT * FROM root.sg1.**")) {
- ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
- Assert.assertEquals(1, resultSetMetaData.getColumnCount());
- Assert.assertFalse(resultSet.next());
+ statement.execute("DEACTIVATE SCHEMA TEMPLATE FROM root.sg1.*");
+ try (ResultSet resultSet = statement.executeQuery("SELECT * FROM root.sg1.**")) {
+ ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
+ Assert.assertEquals(1, resultSetMetaData.getColumnCount());
+ Assert.assertFalse(resultSet.next());
+ }
}
}
@Test
public void deactivateTemplateCrossStorageGroupTest() throws Exception {
String insertSql = "insert into root.sg%d.d2(time, s1, s2) values(%d, %d, %d)";
- for (int i = 1; i <= 4; i++) {
- for (int j = 1; j <= 2; j++) {
- statement.execute(String.format(insertSql, j, i, i, i));
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
+ for (int i = 1; i <= 4; i++) {
+ for (int j = 1; j <= 2; j++) {
+ statement.execute(String.format(insertSql, j, i, i, i));
+ }
}
- }
- statement.execute("DEACTIVATE SCHEMA TEMPLATE FROM root.*.d1");
- String[] retArray =
- new String[] {"1,1,1.0,1,1.0,", "2,2,2.0,2,2.0,", "3,3,3.0,3,3.0,", "4,4,4.0,4,4.0,"};
- int cnt = 0;
- try (ResultSet resultSet = statement.executeQuery("SELECT * FROM root.**")) {
- ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
- Assert.assertEquals(5, resultSetMetaData.getColumnCount());
- while (resultSet.next()) {
- StringBuilder builder = new StringBuilder();
- for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
- builder.append(resultSet.getString(i)).append(",");
+ statement.execute("DEACTIVATE SCHEMA TEMPLATE FROM root.*.d1");
+ String[] retArray =
+ new String[] {"1,1,1.0,1,1.0,", "2,2,2.0,2,2.0,", "3,3,3.0,3,3.0,", "4,4,4.0,4,4.0,"};
+ int cnt = 0;
+ try (ResultSet resultSet = statement.executeQuery("SELECT * FROM root.**")) {
+ ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
+ Assert.assertEquals(5, resultSetMetaData.getColumnCount());
+ while (resultSet.next()) {
+ StringBuilder builder = new StringBuilder();
+ for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
+ builder.append(resultSet.getString(i)).append(",");
+ }
+ Assert.assertEquals(retArray[cnt], builder.toString());
+ cnt++;
}
- Assert.assertEquals(retArray[cnt], builder.toString());
- cnt++;
+ Assert.assertEquals(retArray.length, cnt);
}
- Assert.assertEquals(retArray.length, cnt);
- }
- statement.execute("DEACTIVATE SCHEMA TEMPLATE FROM root.**, root.sg1.*");
- try (ResultSet resultSet = statement.executeQuery("SELECT * FROM root.**")) {
- ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
- Assert.assertEquals(1, resultSetMetaData.getColumnCount());
- Assert.assertFalse(resultSet.next());
+ statement.execute("DEACTIVATE SCHEMA TEMPLATE FROM root.**, root.sg1.*");
+ try (ResultSet resultSet = statement.executeQuery("SELECT * FROM root.**")) {
+ ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
+ Assert.assertEquals(1, resultSetMetaData.getColumnCount());
+ Assert.assertFalse(resultSet.next());
+ }
}
}
@Test
public void deactivateTemplateWithMultiPatternTest() throws Exception {
- statement.execute("DEACTIVATE SCHEMA TEMPLATE t1 FROM root.sg1.d1, root.sg2.*");
- try (ResultSet resultSet = statement.executeQuery("SELECT * FROM root.sg1.*, root.sg2.*")) {
- ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
- Assert.assertEquals(1, resultSetMetaData.getColumnCount());
- Assert.assertFalse(resultSet.next());
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
+ statement.execute("DEACTIVATE SCHEMA TEMPLATE t1 FROM root.sg1.d1, root.sg2.*");
+ try (ResultSet resultSet = statement.executeQuery("SELECT * FROM root.sg1.*, root.sg2.*")) {
+ ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
+ Assert.assertEquals(1, resultSetMetaData.getColumnCount());
+ Assert.assertFalse(resultSet.next());
+ }
}
}
@Test
public void deactivateNoneUsageTemplateTest() throws Exception {
- try {
- statement.execute("DEACTIVATE SCHEMA TEMPLATE t1 FROM root.sg5.d1");
- Assert.fail();
- } catch (SQLException e) {
- Assert.assertEquals(
- TSStatusCode.TEMPLATE_NOT_SET.getStatusCode()
- + ": Schema Template t1 is not set on any prefix path of [root.sg5.d1]",
- e.getMessage());
- }
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
+ try {
+ statement.execute("DEACTIVATE SCHEMA TEMPLATE t1 FROM root.sg5.d1");
+ Assert.fail();
+ } catch (SQLException e) {
+ Assert.assertEquals(
+ TSStatusCode.TEMPLATE_NOT_SET.getStatusCode()
+ + ": Schema Template t1 is not set on any prefix path of [root.sg5.d1]",
+ e.getMessage());
+ }
- statement.execute("CREATE DATABASE root.sg5");
- statement.execute("SET SCHEMA TEMPLATE t1 TO root.sg5 ");
- try {
- statement.execute("DEACTIVATE SCHEMA TEMPLATE t1 FROM root.sg5.d1");
- Assert.fail();
- } catch (SQLException e) {
- Assert.assertEquals(
- TSStatusCode.TEMPLATE_NOT_ACTIVATED.getStatusCode()
- + ": Target schema Template is not activated on any path matched by given path pattern",
- e.getMessage());
+ statement.execute("CREATE DATABASE root.sg5");
+ statement.execute("SET SCHEMA TEMPLATE t1 TO root.sg5 ");
+ try {
+ statement.execute("DEACTIVATE SCHEMA TEMPLATE t1 FROM root.sg5.d1");
+ Assert.fail();
+ } catch (SQLException e) {
+ Assert.assertEquals(
+ TSStatusCode.TEMPLATE_NOT_ACTIVATED.getStatusCode()
+ + ": Target schema Template is not activated on any path matched by given path pattern",
+ e.getMessage());
+ }
}
}
@Test
public void multiSyntaxTest() throws Exception {
- statement.execute("DELETE TIMESERIES OF SCHEMA TEMPLATE t1 FROM root.sg1.d1");
- try (ResultSet resultSet = statement.executeQuery("SELECT * FROM root.sg1.*")) {
- ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
- Assert.assertEquals(1, resultSetMetaData.getColumnCount());
- Assert.assertFalse(resultSet.next());
- }
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
+ statement.execute("DELETE TIMESERIES OF SCHEMA TEMPLATE t1 FROM root.sg1.d1");
+ try (ResultSet resultSet = statement.executeQuery("SELECT * FROM root.sg1.*")) {
+ ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
+ Assert.assertEquals(1, resultSetMetaData.getColumnCount());
+ Assert.assertFalse(resultSet.next());
+ }
- statement.execute("DEACTIVATE SCHEMA TEMPLATE t2 FROM root.sg3.d1");
- try (ResultSet resultSet = statement.executeQuery("SELECT * FROM root.sg3.*")) {
- ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
- Assert.assertEquals(1, resultSetMetaData.getColumnCount());
- Assert.assertFalse(resultSet.next());
- }
+ statement.execute("DEACTIVATE SCHEMA TEMPLATE t2 FROM root.sg3.d1");
+ try (ResultSet resultSet = statement.executeQuery("SELECT * FROM root.sg3.*")) {
+ ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
+ Assert.assertEquals(1, resultSetMetaData.getColumnCount());
+ Assert.assertFalse(resultSet.next());
+ }
- statement.execute("DEACTIVATE SCHEMA TEMPLATE FROM root.**");
- try (ResultSet resultSet = statement.executeQuery("SELECT * FROM root.**")) {
- ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
- Assert.assertEquals(1, resultSetMetaData.getColumnCount());
- Assert.assertFalse(resultSet.next());
+ statement.execute("DEACTIVATE SCHEMA TEMPLATE FROM root.**");
+ try (ResultSet resultSet = statement.executeQuery("SELECT * FROM root.**")) {
+ ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
+ Assert.assertEquals(1, resultSetMetaData.getColumnCount());
+ Assert.assertFalse(resultSet.next());
+ }
}
}
}
diff --git a/integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBDeleteAlignedTimeseriesIT.java b/integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBDeleteAlignedTimeseriesIT.java
index c32a20b286..1d07d37357 100644
--- a/integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBDeleteAlignedTimeseriesIT.java
+++ b/integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBDeleteAlignedTimeseriesIT.java
@@ -46,22 +46,14 @@ import static org.junit.Assert.fail;
@Category({ClusterIT.class})
public class IoTDBDeleteAlignedTimeseriesIT {
- private Statement statement;
- private Connection connection;
-
@Before
public void setUp() throws ClassNotFoundException, SQLException, InterruptedException {
EnvFactory.getEnv().getConfig().getCommonConfig().setMemtableSizeThreshold(2);
EnvFactory.getEnv().initClusterEnvironment();
-
- connection = EnvFactory.getEnv().getConnection();
- statement = connection.createStatement();
}
@After
public void tearDown() throws Exception {
- statement.close();
- connection.close();
EnvFactory.getEnv().cleanClusterEnvironment();
}
@@ -69,36 +61,38 @@ public class IoTDBDeleteAlignedTimeseriesIT {
public void deleteTimeseriesAndCreateDifferentTypeTest() throws Exception {
String[] retArray = new String[] {"1,1,", "2,1.1,"};
int cnt = 0;
-
- statement.execute(
- "create aligned timeseries root.turbine1.d1(s1 INT64 encoding=PLAIN compression=SNAPPY, "
- + "s2 INT64 encoding=PLAIN compression=SNAPPY)");
- statement.execute("INSERT INTO root.turbine1.d1(timestamp,s1,s2) ALIGNED VALUES(1,1,2)");
- try (ResultSet resultSet = statement.executeQuery("SELECT s1 FROM root.turbine1.d1")) {
- ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
- while (resultSet.next()) {
- StringBuilder builder = new StringBuilder();
- for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
- builder.append(resultSet.getString(i)).append(",");
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
+ statement.execute(
+ "create aligned timeseries root.turbine1.d1(s1 INT64 encoding=PLAIN compression=SNAPPY, "
+ + "s2 INT64 encoding=PLAIN compression=SNAPPY)");
+ statement.execute("INSERT INTO root.turbine1.d1(timestamp,s1,s2) ALIGNED VALUES(1,1,2)");
+ try (ResultSet resultSet = statement.executeQuery("SELECT s1 FROM root.turbine1.d1")) {
+ ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
+ while (resultSet.next()) {
+ StringBuilder builder = new StringBuilder();
+ for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
+ builder.append(resultSet.getString(i)).append(",");
+ }
+ Assert.assertEquals(retArray[cnt], builder.toString());
+ cnt++;
}
- Assert.assertEquals(retArray[cnt], builder.toString());
- cnt++;
}
- }
- statement.execute("DELETE timeseries root.turbine1.d1.s1");
- statement.execute("INSERT INTO root.turbine1.d1(timestamp,s1) ALIGNED VALUES(2,1.1)");
- statement.execute("FLUSH");
+ statement.execute("DELETE timeseries root.turbine1.d1.s1");
+ statement.execute("INSERT INTO root.turbine1.d1(timestamp,s1) ALIGNED VALUES(2,1.1)");
+ statement.execute("FLUSH");
- try (ResultSet resultSet = statement.executeQuery("SELECT s1 FROM root.turbine1.d1")) {
- ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
- while (resultSet.next()) {
- StringBuilder builder = new StringBuilder();
- for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
- builder.append(resultSet.getString(i)).append(",");
+ try (ResultSet resultSet = statement.executeQuery("SELECT s1 FROM root.turbine1.d1")) {
+ ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
+ while (resultSet.next()) {
+ StringBuilder builder = new StringBuilder();
+ for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
+ builder.append(resultSet.getString(i)).append(",");
+ }
+ Assert.assertEquals(retArray[cnt], builder.toString());
+ cnt++;
}
- Assert.assertEquals(retArray[cnt], builder.toString());
- cnt++;
}
}
@@ -113,36 +107,38 @@ public class IoTDBDeleteAlignedTimeseriesIT {
public void deleteTimeseriesAndCreateSameTypeTest() throws Exception {
String[] retArray = new String[] {"1,1.0,", "2,5.0,"};
int cnt = 0;
-
- statement.execute(
- "create aligned timeseries root.turbine1.d1(s1 FLOAT encoding=PLAIN compression=SNAPPY, "
- + "s2 INT64 encoding=PLAIN compression=SNAPPY)");
- statement.execute("INSERT INTO root.turbine1.d1(timestamp,s1,s2) ALIGNED VALUES(1,1,2)");
-
- try (ResultSet resultSet = statement.executeQuery("SELECT s1 FROM root.turbine1.d1")) {
- ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
- while (resultSet.next()) {
- StringBuilder builder = new StringBuilder();
- for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
- builder.append(resultSet.getString(i)).append(",");
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
+ statement.execute(
+ "create aligned timeseries root.turbine1.d1(s1 FLOAT encoding=PLAIN compression=SNAPPY, "
+ + "s2 INT64 encoding=PLAIN compression=SNAPPY)");
+ statement.execute("INSERT INTO root.turbine1.d1(timestamp,s1,s2) ALIGNED VALUES(1,1,2)");
+
+ try (ResultSet resultSet = statement.executeQuery("SELECT s1 FROM root.turbine1.d1")) {
+ ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
+ while (resultSet.next()) {
+ StringBuilder builder = new StringBuilder();
+ for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
+ builder.append(resultSet.getString(i)).append(",");
+ }
+ Assert.assertEquals(retArray[cnt], builder.toString());
+ cnt++;
}
- Assert.assertEquals(retArray[cnt], builder.toString());
- cnt++;
}
- }
- statement.execute("DELETE timeseries root.turbine1.d1.s1");
- statement.execute("INSERT INTO root.turbine1.d1(timestamp,s1) ALIGNED VALUES(2,5)");
- statement.execute("FLUSH");
-
- try (ResultSet resultSet = statement.executeQuery("SELECT s1 FROM root.turbine1.d1")) {
- ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
- while (resultSet.next()) {
- StringBuilder builder = new StringBuilder();
- for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
- builder.append(resultSet.getString(i)).append(",");
+ statement.execute("DELETE timeseries root.turbine1.d1.s1");
+ statement.execute("INSERT INTO root.turbine1.d1(timestamp,s1) ALIGNED VALUES(2,5)");
+ statement.execute("FLUSH");
+
+ try (ResultSet resultSet = statement.executeQuery("SELECT s1 FROM root.turbine1.d1")) {
+ ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
+ while (resultSet.next()) {
+ StringBuilder builder = new StringBuilder();
+ for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
+ builder.append(resultSet.getString(i)).append(",");
+ }
+ Assert.assertEquals(retArray[cnt], builder.toString());
+ cnt++;
}
- Assert.assertEquals(retArray[cnt], builder.toString());
- cnt++;
}
}
@@ -157,53 +153,55 @@ public class IoTDBDeleteAlignedTimeseriesIT {
public void deleteTimeseriesAndChangeDeviceAlignmentTest() throws Exception {
String[] retArray = new String[] {"1,1.0,2.0,"};
int cnt = 0;
-
- statement.execute("INSERT INTO root.sg3.d1(timestamp,s1,s2) ALIGNED VALUES(1,1,2)");
- try (ResultSet resultSet = statement.executeQuery("SHOW DEVICES")) {
- while (resultSet.next()) {
- Assert.assertEquals("true", resultSet.getString(ColumnHeaderConstant.IS_ALIGNED));
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
+ statement.execute("INSERT INTO root.sg3.d1(timestamp,s1,s2) ALIGNED VALUES(1,1,2)");
+ try (ResultSet resultSet = statement.executeQuery("SHOW DEVICES")) {
+ while (resultSet.next()) {
+ Assert.assertEquals("true", resultSet.getString(ColumnHeaderConstant.IS_ALIGNED));
+ }
}
- }
- cnt = 0;
- statement.execute("DELETE timeseries root.sg3.d1.s1");
- statement.execute("DELETE timeseries root.sg3.d1.s2");
- statement.execute("INSERT INTO root.sg3.d1(timestamp,s1,s2) VALUES(1,1,2)");
- try (ResultSet resultSet = statement.executeQuery("SHOW DEVICES")) {
- while (resultSet.next()) {
- Assert.assertEquals("false", resultSet.getString(ColumnHeaderConstant.IS_ALIGNED));
+ cnt = 0;
+ statement.execute("DELETE timeseries root.sg3.d1.s1");
+ statement.execute("DELETE timeseries root.sg3.d1.s2");
+ statement.execute("INSERT INTO root.sg3.d1(timestamp,s1,s2) VALUES(1,1,2)");
+ try (ResultSet resultSet = statement.executeQuery("SHOW DEVICES")) {
+ while (resultSet.next()) {
+ Assert.assertEquals("false", resultSet.getString(ColumnHeaderConstant.IS_ALIGNED));
+ }
}
- }
- try (ResultSet resultSet = statement.executeQuery("SELECT * FROM root.sg3.d1")) {
- ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
- while (resultSet.next()) {
- StringBuilder builder = new StringBuilder();
- for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
- builder.append(resultSet.getString(i)).append(",");
+ try (ResultSet resultSet = statement.executeQuery("SELECT * FROM root.sg3.d1")) {
+ ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
+ while (resultSet.next()) {
+ StringBuilder builder = new StringBuilder();
+ for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
+ builder.append(resultSet.getString(i)).append(",");
+ }
+ Assert.assertEquals(retArray[cnt], builder.toString());
+ cnt++;
}
- Assert.assertEquals(retArray[cnt], builder.toString());
- cnt++;
}
- }
- cnt = 0;
- statement.execute("DELETE timeseries root.sg3.d1.s1");
- statement.execute("DELETE timeseries root.sg3.d1.s2");
- statement.execute("INSERT INTO root.sg3.d1(timestamp,s1,s2) ALIGNED VALUES(1,1,2)");
- try (ResultSet resultSet = statement.executeQuery("SHOW DEVICES")) {
- while (resultSet.next()) {
- Assert.assertEquals("true", resultSet.getString(ColumnHeaderConstant.IS_ALIGNED));
+ cnt = 0;
+ statement.execute("DELETE timeseries root.sg3.d1.s1");
+ statement.execute("DELETE timeseries root.sg3.d1.s2");
+ statement.execute("INSERT INTO root.sg3.d1(timestamp,s1,s2) ALIGNED VALUES(1,1,2)");
+ try (ResultSet resultSet = statement.executeQuery("SHOW DEVICES")) {
+ while (resultSet.next()) {
+ Assert.assertEquals("true", resultSet.getString(ColumnHeaderConstant.IS_ALIGNED));
+ }
}
- }
- try (ResultSet resultSet = statement.executeQuery("SELECT * FROM root.sg3.d1")) {
- ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
- while (resultSet.next()) {
- StringBuilder builder = new StringBuilder();
- for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
- builder.append(resultSet.getString(i)).append(",");
+ try (ResultSet resultSet = statement.executeQuery("SELECT * FROM root.sg3.d1")) {
+ ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
+ while (resultSet.next()) {
+ StringBuilder builder = new StringBuilder();
+ for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
+ builder.append(resultSet.getString(i)).append(",");
+ }
+ Assert.assertEquals(retArray[cnt], builder.toString());
+ cnt++;
}
- Assert.assertEquals(retArray[cnt], builder.toString());
- cnt++;
}
}
}
@@ -212,7 +210,8 @@ public class IoTDBDeleteAlignedTimeseriesIT {
public void deleteTimeSeriesMultiIntervalTest() {
String[] retArray1 = new String[] {"0,0"};
- try {
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
String insertSql = "insert into root.sg.d1(time, s1) aligned values(%d, %d)";
for (int i = 1; i <= 4; i++) {
statement.execute(String.format(insertSql, i, i));
diff --git a/integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBDeleteTimeseriesIT.java b/integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBDeleteTimeseriesIT.java
index f880ec9009..08fa2f672f 100644
--- a/integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBDeleteTimeseriesIT.java
+++ b/integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBDeleteTimeseriesIT.java
@@ -43,9 +43,6 @@ import static org.junit.Assert.fail;
@Category({LocalStandaloneIT.class, ClusterIT.class})
public class IoTDBDeleteTimeseriesIT extends AbstractSchemaIT {
- private Statement statement;
- private Connection connection;
-
public IoTDBDeleteTimeseriesIT(SchemaTestMode schemaTestMode) {
super(schemaTestMode);
}
@@ -54,17 +51,11 @@ public class IoTDBDeleteTimeseriesIT extends AbstractSchemaIT {
public void setUp() throws Exception {
super.setUp();
EnvFactory.getEnv().getConfig().getCommonConfig().setMemtableSizeThreshold(2);
-
EnvFactory.getEnv().initClusterEnvironment();
-
- connection = EnvFactory.getEnv().getConnection();
- statement = connection.createStatement();
}
@After
public void tearDown() throws Exception {
- statement.close();
- connection.close();
EnvFactory.getEnv().cleanClusterEnvironment();
super.tearDown();
}
@@ -73,39 +64,41 @@ public class IoTDBDeleteTimeseriesIT extends AbstractSchemaIT {
public void deleteTimeseriesAndCreateDifferentTypeTest() throws Exception {
String[] retArray = new String[] {"1,1,", "2,1.1,"};
int cnt = 0;
-
- statement.execute(
- "create timeseries root.turbine1.d1.s1 with datatype=INT64, encoding=PLAIN, compression=SNAPPY");
- statement.execute(
- "create timeseries root.turbine1.d1.s2 with datatype=INT64, encoding=PLAIN, compression=SNAPPY");
- statement.execute("INSERT INTO root.turbine1.d1(timestamp,s1,s2) VALUES(1,1,2)");
-
- try (ResultSet resultSet = statement.executeQuery("SELECT s1 FROM root.turbine1.d1")) {
- ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
- while (resultSet.next()) {
- StringBuilder builder = new StringBuilder();
- for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
- builder.append(resultSet.getString(i)).append(",");
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
+ statement.execute(
+ "create timeseries root.turbine1.d1.s1 with datatype=INT64, encoding=PLAIN, compression=SNAPPY");
+ statement.execute(
+ "create timeseries root.turbine1.d1.s2 with datatype=INT64, encoding=PLAIN, compression=SNAPPY");
+ statement.execute("INSERT INTO root.turbine1.d1(timestamp,s1,s2) VALUES(1,1,2)");
+
+ try (ResultSet resultSet = statement.executeQuery("SELECT s1 FROM root.turbine1.d1")) {
+ ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
+ while (resultSet.next()) {
+ StringBuilder builder = new StringBuilder();
+ for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
+ builder.append(resultSet.getString(i)).append(",");
+ }
+ Assert.assertEquals(retArray[cnt], builder.toString());
+ cnt++;
}
- Assert.assertEquals(retArray[cnt], builder.toString());
- cnt++;
}
- }
- statement.execute("DELETE timeseries root.turbine1.d1.s1");
- statement.execute(
- "create timeseries root.turbine1.d1.s1 with datatype=DOUBLE, encoding=PLAIN, compression=SNAPPY");
- statement.execute("INSERT INTO root.turbine1.d1(timestamp,s1) VALUES(2,1.1)");
- statement.execute("FLUSH");
-
- try (ResultSet resultSet = statement.executeQuery("SELECT s1 FROM root.turbine1.d1")) {
- ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
- while (resultSet.next()) {
- StringBuilder builder = new StringBuilder();
- for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
- builder.append(resultSet.getString(i)).append(",");
+ statement.execute("DELETE timeseries root.turbine1.d1.s1");
+ statement.execute(
+ "create timeseries root.turbine1.d1.s1 with datatype=DOUBLE, encoding=PLAIN, compression=SNAPPY");
+ statement.execute("INSERT INTO root.turbine1.d1(timestamp,s1) VALUES(2,1.1)");
+ statement.execute("FLUSH");
+
+ try (ResultSet resultSet = statement.executeQuery("SELECT s1 FROM root.turbine1.d1")) {
+ ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
+ while (resultSet.next()) {
+ StringBuilder builder = new StringBuilder();
+ for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
+ builder.append(resultSet.getString(i)).append(",");
+ }
+ Assert.assertEquals(retArray[cnt], builder.toString());
+ cnt++;
}
- Assert.assertEquals(retArray[cnt], builder.toString());
- cnt++;
}
}
@@ -116,45 +109,48 @@ public class IoTDBDeleteTimeseriesIT extends AbstractSchemaIT {
// boolean hasResult = statement.execute("SELECT * FROM root.**");
// Assert.assertTrue(hasResult);
// }
+
}
@Test
public void deleteTimeseriesAndCreateSameTypeTest() throws Exception {
String[] retArray = new String[] {"1,1,", "2,5,"};
int cnt = 0;
-
- statement.execute(
- "create timeseries root.turbine1.d1.s1 with datatype=INT64, encoding=PLAIN, compression=SNAPPY");
- statement.execute(
- "create timeseries root.turbine1.d1.s2 with datatype=INT64, encoding=PLAIN, compression=SNAPPY");
- statement.execute("INSERT INTO root.turbine1.d1(timestamp,s1,s2) VALUES(1,1,2)");
-
- try (ResultSet resultSet = statement.executeQuery("SELECT s1 FROM root.turbine1.d1")) {
- ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
- while (resultSet.next()) {
- StringBuilder builder = new StringBuilder();
- for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
- builder.append(resultSet.getString(i)).append(",");
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
+ statement.execute(
+ "create timeseries root.turbine1.d1.s1 with datatype=INT64, encoding=PLAIN, compression=SNAPPY");
+ statement.execute(
+ "create timeseries root.turbine1.d1.s2 with datatype=INT64, encoding=PLAIN, compression=SNAPPY");
+ statement.execute("INSERT INTO root.turbine1.d1(timestamp,s1,s2) VALUES(1,1,2)");
+
+ try (ResultSet resultSet = statement.executeQuery("SELECT s1 FROM root.turbine1.d1")) {
+ ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
+ while (resultSet.next()) {
+ StringBuilder builder = new StringBuilder();
+ for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
+ builder.append(resultSet.getString(i)).append(",");
+ }
+ Assert.assertEquals(retArray[cnt], builder.toString());
+ cnt++;
}
- Assert.assertEquals(retArray[cnt], builder.toString());
- cnt++;
}
- }
- statement.execute("DELETE timeseries root.turbine1.d1.s1");
- statement.execute(
- "create timeseries root.turbine1.d1.s1 with datatype=INT64, encoding=PLAIN, compression=SNAPPY");
- statement.execute("INSERT INTO root.turbine1.d1(timestamp,s1) VALUES(2,5)");
- statement.execute("FLUSH");
-
- try (ResultSet resultSet = statement.executeQuery("SELECT s1 FROM root.turbine1.d1")) {
- ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
- while (resultSet.next()) {
- StringBuilder builder = new StringBuilder();
- for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
- builder.append(resultSet.getString(i)).append(",");
+ statement.execute("DELETE timeseries root.turbine1.d1.s1");
+ statement.execute(
+ "create timeseries root.turbine1.d1.s1 with datatype=INT64, encoding=PLAIN, compression=SNAPPY");
+ statement.execute("INSERT INTO root.turbine1.d1(timestamp,s1) VALUES(2,5)");
+ statement.execute("FLUSH");
+
+ try (ResultSet resultSet = statement.executeQuery("SELECT s1 FROM root.turbine1.d1")) {
+ ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
+ while (resultSet.next()) {
+ StringBuilder builder = new StringBuilder();
+ for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
+ builder.append(resultSet.getString(i)).append(",");
+ }
+ Assert.assertEquals(retArray[cnt], builder.toString());
+ cnt++;
}
- Assert.assertEquals(retArray[cnt], builder.toString());
- cnt++;
}
}
@@ -171,7 +167,8 @@ public class IoTDBDeleteTimeseriesIT extends AbstractSchemaIT {
public void deleteTimeSeriesMultiIntervalTest() {
String[] retArray1 = new String[] {"0,0"};
- try {
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
String insertSql = "insert into root.sg.d1(time, s1) values(%d, %d)";
for (int i = 1; i <= 4; i++) {
statement.execute(String.format(insertSql, i, i));
@@ -206,36 +203,39 @@ public class IoTDBDeleteTimeseriesIT extends AbstractSchemaIT {
String[] retArray1 = new String[] {"0,4,4,4,4"};
String insertSql = "insert into root.sg.d1(time, s1, s2, s3, s4) values(%d, %d, %d, %d, %d)";
- for (int i = 1; i <= 4; i++) {
- statement.execute(String.format(insertSql, i, i, i, i, i));
- }
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
+ for (int i = 1; i <= 4; i++) {
+ statement.execute(String.format(insertSql, i, i, i, i, i));
+ }
- int cnt = 0;
- try (ResultSet resultSet =
- statement.executeQuery(
- "select count(s1), count(s2), count(s3), count(s4) from root.sg.d1")) {
- while (resultSet.next()) {
- StringBuilder ans = new StringBuilder(resultSet.getString(TIMESTAMP_STR));
- for (int i = 1; i <= 4; i++) {
- ans.append(",").append(resultSet.getString(count("root.sg.d1.s" + i)));
+ int cnt = 0;
+ try (ResultSet resultSet =
+ statement.executeQuery(
+ "select count(s1), count(s2), count(s3), count(s4) from root.sg.d1")) {
+ while (resultSet.next()) {
+ StringBuilder ans = new StringBuilder(resultSet.getString(TIMESTAMP_STR));
+ for (int i = 1; i <= 4; i++) {
+ ans.append(",").append(resultSet.getString(count("root.sg.d1.s" + i)));
+ }
+ Assert.assertEquals(retArray1[cnt], ans.toString());
+ cnt++;
}
- Assert.assertEquals(retArray1[cnt], ans.toString());
- cnt++;
+ Assert.assertEquals(retArray1.length, cnt);
}
- Assert.assertEquals(retArray1.length, cnt);
- }
- statement.execute("delete timeseries root.sg.d1.*");
- try (ResultSet resultSet = statement.executeQuery("select * from root.sg.d1")) {
- Assert.assertFalse(resultSet.next());
- }
+ statement.execute("delete timeseries root.sg.d1.*");
+ try (ResultSet resultSet = statement.executeQuery("select * from root.sg.d1")) {
+ Assert.assertFalse(resultSet.next());
+ }
- try (ResultSet resultSet = statement.executeQuery("show timeseries root.sg.d1.*")) {
- Assert.assertFalse(resultSet.next());
- }
+ try (ResultSet resultSet = statement.executeQuery("show timeseries root.sg.d1.*")) {
+ Assert.assertFalse(resultSet.next());
+ }
- try (ResultSet resultSet = statement.executeQuery("show devices root.sg.d1")) {
- Assert.assertFalse(resultSet.next());
+ try (ResultSet resultSet = statement.executeQuery("show devices root.sg.d1")) {
+ Assert.assertFalse(resultSet.next());
+ }
}
}
@@ -244,45 +244,48 @@ public class IoTDBDeleteTimeseriesIT extends AbstractSchemaIT {
String[] retArray1 = new String[] {"0,4,4,4,4"};
String insertSql = "insert into root.sg.d%d(time, s1, s2) values(%d, %d, %d)";
- for (int i = 1; i <= 4; i++) {
- for (int j = 1; j <= 4; j++) {
- statement.execute(String.format(insertSql, j, i, i, i));
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
+ for (int i = 1; i <= 4; i++) {
+ for (int j = 1; j <= 4; j++) {
+ statement.execute(String.format(insertSql, j, i, i, i));
+ }
}
- }
- int cnt = 0;
- try (ResultSet resultSet = statement.executeQuery("select count(s1) from root.sg.*")) {
- while (resultSet.next()) {
- StringBuilder ans = new StringBuilder(resultSet.getString(TIMESTAMP_STR));
- for (int i = 1; i <= 4; i++) {
- ans.append(",").append(resultSet.getString(count("root.sg.d" + i + ".s1")));
+ int cnt = 0;
+ try (ResultSet resultSet = statement.executeQuery("select count(s1) from root.sg.*")) {
+ while (resultSet.next()) {
+ StringBuilder ans = new StringBuilder(resultSet.getString(TIMESTAMP_STR));
+ for (int i = 1; i <= 4; i++) {
+ ans.append(",").append(resultSet.getString(count("root.sg.d" + i + ".s1")));
+ }
+ Assert.assertEquals(retArray1[cnt], ans.toString());
+ cnt++;
}
- Assert.assertEquals(retArray1[cnt], ans.toString());
- cnt++;
+ Assert.assertEquals(retArray1.length, cnt);
}
- Assert.assertEquals(retArray1.length, cnt);
- }
- statement.execute("delete timeseries root.sg.*.s1");
- try (ResultSet resultSet = statement.executeQuery("select s1 from root.sg.*")) {
- Assert.assertFalse(resultSet.next());
- }
+ statement.execute("delete timeseries root.sg.*.s1");
+ try (ResultSet resultSet = statement.executeQuery("select s1 from root.sg.*")) {
+ Assert.assertFalse(resultSet.next());
+ }
- try (ResultSet resultSet = statement.executeQuery("show timeseries root.sg.*.s1")) {
- Assert.assertFalse(resultSet.next());
- }
+ try (ResultSet resultSet = statement.executeQuery("show timeseries root.sg.*.s1")) {
+ Assert.assertFalse(resultSet.next());
+ }
- cnt = 0;
- try (ResultSet resultSet = statement.executeQuery("select count(s2) from root.sg.*")) {
- while (resultSet.next()) {
- StringBuilder ans = new StringBuilder(resultSet.getString(TIMESTAMP_STR));
- for (int i = 1; i <= 4; i++) {
- ans.append(",").append(resultSet.getString(count("root.sg.d" + i + ".s2")));
+ cnt = 0;
+ try (ResultSet resultSet = statement.executeQuery("select count(s2) from root.sg.*")) {
+ while (resultSet.next()) {
+ StringBuilder ans = new StringBuilder(resultSet.getString(TIMESTAMP_STR));
+ for (int i = 1; i <= 4; i++) {
+ ans.append(",").append(resultSet.getString(count("root.sg.d" + i + ".s2")));
+ }
+ Assert.assertEquals(retArray1[cnt], ans.toString());
+ cnt++;
}
- Assert.assertEquals(retArray1[cnt], ans.toString());
- cnt++;
+ Assert.assertEquals(retArray1.length, cnt);
}
- Assert.assertEquals(retArray1.length, cnt);
}
}
@@ -291,68 +294,71 @@ public class IoTDBDeleteTimeseriesIT extends AbstractSchemaIT {
String[] retArray1 = new String[] {"0,4,4,4,4"};
String insertSql = "insert into root.sg%d.d1(time, s1, s2) values(%d, %d, %d)";
- for (int i = 1; i <= 4; i++) {
- for (int j = 1; j <= 4; j++) {
- statement.execute(String.format(insertSql, j, i, i, i));
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
+ for (int i = 1; i <= 4; i++) {
+ for (int j = 1; j <= 4; j++) {
+ statement.execute(String.format(insertSql, j, i, i, i));
+ }
}
- }
- int cnt = 0;
- try (ResultSet resultSet = statement.executeQuery("select count(s1) from root.*.d1")) {
- while (resultSet.next()) {
- StringBuilder ans = new StringBuilder(resultSet.getString(TIMESTAMP_STR));
- for (int i = 1; i <= 4; i++) {
- ans.append(",").append(resultSet.getString(count("root.sg" + i + ".d1.s1")));
+ int cnt = 0;
+ try (ResultSet resultSet = statement.executeQuery("select count(s1) from root.*.d1")) {
+ while (resultSet.next()) {
+ StringBuilder ans = new StringBuilder(resultSet.getString(TIMESTAMP_STR));
+ for (int i = 1; i <= 4; i++) {
+ ans.append(",").append(resultSet.getString(count("root.sg" + i + ".d1.s1")));
+ }
+ Assert.assertEquals(retArray1[cnt], ans.toString());
+ cnt++;
}
- Assert.assertEquals(retArray1[cnt], ans.toString());
- cnt++;
+ Assert.assertEquals(retArray1.length, cnt);
}
- Assert.assertEquals(retArray1.length, cnt);
- }
- statement.execute("delete timeseries root.*.d1.s1");
- try (ResultSet resultSet = statement.executeQuery("select s1 from root.*.*")) {
- Assert.assertFalse(resultSet.next());
- }
+ statement.execute("delete timeseries root.*.d1.s1");
+ try (ResultSet resultSet = statement.executeQuery("select s1 from root.*.*")) {
+ Assert.assertFalse(resultSet.next());
+ }
- try (ResultSet resultSet = statement.executeQuery("show timeseries root.*.*.s1")) {
- Assert.assertFalse(resultSet.next());
- }
+ try (ResultSet resultSet = statement.executeQuery("show timeseries root.*.*.s1")) {
+ Assert.assertFalse(resultSet.next());
+ }
- cnt = 0;
- try (ResultSet resultSet = statement.executeQuery("select count(s2) from root.*.*")) {
- while (resultSet.next()) {
- StringBuilder ans = new StringBuilder(resultSet.getString(TIMESTAMP_STR));
- for (int i = 1; i <= 4; i++) {
- ans.append(",").append(resultSet.getString(count("root.sg" + i + ".d1.s2")));
+ cnt = 0;
+ try (ResultSet resultSet = statement.executeQuery("select count(s2) from root.*.*")) {
+ while (resultSet.next()) {
+ StringBuilder ans = new StringBuilder(resultSet.getString(TIMESTAMP_STR));
+ for (int i = 1; i <= 4; i++) {
+ ans.append(",").append(resultSet.getString(count("root.sg" + i + ".d1.s2")));
+ }
+ Assert.assertEquals(retArray1[cnt], ans.toString());
+ cnt++;
}
- Assert.assertEquals(retArray1[cnt], ans.toString());
- cnt++;
+ Assert.assertEquals(retArray1.length, cnt);
}
- Assert.assertEquals(retArray1.length, cnt);
- }
- statement.execute("delete timeseries root.sg1.d1.s2, root.sg2.**");
- try (ResultSet resultSet = statement.executeQuery("select s2 from root.sg1.*")) {
- Assert.assertFalse(resultSet.next());
- }
+ statement.execute("delete timeseries root.sg1.d1.s2, root.sg2.**");
+ try (ResultSet resultSet = statement.executeQuery("select s2 from root.sg1.*")) {
+ Assert.assertFalse(resultSet.next());
+ }
- try (ResultSet resultSet = statement.executeQuery("show timeseries root.sg2.*.s2")) {
- Assert.assertFalse(resultSet.next());
- }
+ try (ResultSet resultSet = statement.executeQuery("show timeseries root.sg2.*.s2")) {
+ Assert.assertFalse(resultSet.next());
+ }
- retArray1 = new String[] {"0,4,4"};
- cnt = 0;
- try (ResultSet resultSet = statement.executeQuery("select count(s2) from root.*.*")) {
- while (resultSet.next()) {
- StringBuilder ans = new StringBuilder(resultSet.getString(TIMESTAMP_STR));
- for (int i = 3; i <= 4; i++) {
- ans.append(",").append(resultSet.getString(count("root.sg" + i + ".d1.s2")));
+ retArray1 = new String[] {"0,4,4"};
+ cnt = 0;
+ try (ResultSet resultSet = statement.executeQuery("select count(s2) from root.*.*")) {
+ while (resultSet.next()) {
+ StringBuilder ans = new StringBuilder(resultSet.getString(TIMESTAMP_STR));
+ for (int i = 3; i <= 4; i++) {
+ ans.append(",").append(resultSet.getString(count("root.sg" + i + ".d1.s2")));
+ }
+ Assert.assertEquals(retArray1[cnt], ans.toString());
+ cnt++;
}
- Assert.assertEquals(retArray1[cnt], ans.toString());
- cnt++;
+ Assert.assertEquals(retArray1.length, cnt);
}
- Assert.assertEquals(retArray1.length, cnt);
}
}
@@ -361,77 +367,83 @@ public class IoTDBDeleteTimeseriesIT extends AbstractSchemaIT {
String[] retArray1 = new String[] {"0,4,4,4,4"};
String insertSql = "insert into root.sg%d.d1(time, s1, s2) values(%d, %d, %d)";
- for (int i = 1; i <= 4; i++) {
- for (int j = 1; j <= 4; j++) {
- statement.execute(String.format(insertSql, j, i, i, i));
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
+ for (int i = 1; i <= 4; i++) {
+ for (int j = 1; j <= 4; j++) {
+ statement.execute(String.format(insertSql, j, i, i, i));
+ }
}
- }
- int cnt = 0;
- try (ResultSet resultSet = statement.executeQuery("select count(s1) from root.*.d1")) {
- while (resultSet.next()) {
- StringBuilder ans = new StringBuilder(resultSet.getString(TIMESTAMP_STR));
- for (int i = 1; i <= 4; i++) {
- ans.append(",").append(resultSet.getString(count("root.sg" + i + ".d1.s1")));
+ int cnt = 0;
+ try (ResultSet resultSet = statement.executeQuery("select count(s1) from root.*.d1")) {
+ while (resultSet.next()) {
+ StringBuilder ans = new StringBuilder(resultSet.getString(TIMESTAMP_STR));
+ for (int i = 1; i <= 4; i++) {
+ ans.append(",").append(resultSet.getString(count("root.sg" + i + ".d1.s1")));
+ }
+ Assert.assertEquals(retArray1[cnt], ans.toString());
+ cnt++;
}
- Assert.assertEquals(retArray1[cnt], ans.toString());
- cnt++;
+ Assert.assertEquals(retArray1.length, cnt);
}
- Assert.assertEquals(retArray1.length, cnt);
- }
- statement.execute("delete timeseries root.*.d1.s1, root.*.d1.s2");
- try (ResultSet resultSet = statement.executeQuery("select * from root.*.*")) {
- Assert.assertFalse(resultSet.next());
- }
+ statement.execute("delete timeseries root.*.d1.s1, root.*.d1.s2");
+ try (ResultSet resultSet = statement.executeQuery("select * from root.*.*")) {
+ Assert.assertFalse(resultSet.next());
+ }
- try (ResultSet resultSet = statement.executeQuery("show timeseries root.*.*.*")) {
- Assert.assertFalse(resultSet.next());
+ try (ResultSet resultSet = statement.executeQuery("show timeseries root.*.*.*")) {
+ Assert.assertFalse(resultSet.next());
+ }
}
}
@Test
public void deleteTimeSeriesAndReturnPathNotExistsTest() throws Exception {
- try {
- statement.execute("delete timeseries root.**");
- } catch (SQLException e) {
- Assert.assertTrue(
- e.getMessage()
- .contains(
- TSStatusCode.PATH_NOT_EXIST.getStatusCode()
- + ": Timeseries [root.**] does not exist or is represented by schema template"));
- }
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
+ try {
+ statement.execute("delete timeseries root.**");
+ } catch (SQLException e) {
+ Assert.assertTrue(
+ e.getMessage()
+ .contains(
+ TSStatusCode.PATH_NOT_EXIST.getStatusCode()
+ + ": Timeseries [root.**] does not exist or is represented by schema template"));
+ }
- String[] retArray1 = new String[] {"0,4,4,4,4"};
+ String[] retArray1 = new String[] {"0,4,4,4,4"};
- String insertSql = "insert into root.sg%d.d1(time, s1, s2) values(%d, %d, %d)";
- for (int i = 1; i <= 4; i++) {
- for (int j = 1; j <= 4; j++) {
- statement.execute(String.format(insertSql, j, i, i, i));
+ String insertSql = "insert into root.sg%d.d1(time, s1, s2) values(%d, %d, %d)";
+ for (int i = 1; i <= 4; i++) {
+ for (int j = 1; j <= 4; j++) {
+ statement.execute(String.format(insertSql, j, i, i, i));
+ }
}
- }
- int cnt = 0;
- try (ResultSet resultSet = statement.executeQuery("select count(s1) from root.*.d1")) {
- while (resultSet.next()) {
- StringBuilder ans = new StringBuilder(resultSet.getString(TIMESTAMP_STR));
- for (int i = 1; i <= 4; i++) {
- ans.append(",").append(resultSet.getString(count("root.sg" + i + ".d1.s1")));
+ int cnt = 0;
+ try (ResultSet resultSet = statement.executeQuery("select count(s1) from root.*.d1")) {
+ while (resultSet.next()) {
+ StringBuilder ans = new StringBuilder(resultSet.getString(TIMESTAMP_STR));
+ for (int i = 1; i <= 4; i++) {
+ ans.append(",").append(resultSet.getString(count("root.sg" + i + ".d1.s1")));
+ }
+ Assert.assertEquals(retArray1[cnt], ans.toString());
+ cnt++;
}
- Assert.assertEquals(retArray1[cnt], ans.toString());
- cnt++;
+ Assert.assertEquals(retArray1.length, cnt);
}
- Assert.assertEquals(retArray1.length, cnt);
- }
- try {
- statement.execute("delete timeseries root.*.d1.s3");
- } catch (SQLException e) {
- Assert.assertTrue(
- e.getMessage()
- .contains(
- TSStatusCode.PATH_NOT_EXIST.getStatusCode()
- + ": Timeseries [root.*.d1.s3] does not exist or is represented by schema template"));
+ try {
+ statement.execute("delete timeseries root.*.d1.s3");
+ } catch (SQLException e) {
+ Assert.assertTrue(
+ e.getMessage()
+ .contains(
+ TSStatusCode.PATH_NOT_EXIST.getStatusCode()
+ + ": Timeseries [root.*.d1.s3] does not exist or is represented by schema template"));
+ }
}
}
@@ -439,29 +451,31 @@ public class IoTDBDeleteTimeseriesIT extends AbstractSchemaIT {
public void dropTimeseriesTest() throws Exception {
String[] retArray = new String[] {"1,1,", "2,1.1,"};
int cnt = 0;
-
- statement.execute(
- "create timeseries root.turbine1.d1.s1 with datatype=INT64, encoding=PLAIN, compression=SNAPPY");
- statement.execute(
- "create timeseries root.turbine1.d1.s2 with datatype=INT64, encoding=PLAIN, compression=SNAPPY");
- statement.execute("INSERT INTO root.turbine1.d1(timestamp,s1,s2) VALUES(1,1,2)");
-
- try (ResultSet resultSet = statement.executeQuery("SELECT s1 FROM root.turbine1.d1")) {
- ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
- while (resultSet.next()) {
- StringBuilder builder = new StringBuilder();
- for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
- builder.append(resultSet.getString(i)).append(",");
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
+ statement.execute(
+ "create timeseries root.turbine1.d1.s1 with datatype=INT64, encoding=PLAIN, compression=SNAPPY");
+ statement.execute(
+ "create timeseries root.turbine1.d1.s2 with datatype=INT64, encoding=PLAIN, compression=SNAPPY");
+ statement.execute("INSERT INTO root.turbine1.d1(timestamp,s1,s2) VALUES(1,1,2)");
+
+ try (ResultSet resultSet = statement.executeQuery("SELECT s1 FROM root.turbine1.d1")) {
+ ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
+ while (resultSet.next()) {
+ StringBuilder builder = new StringBuilder();
+ for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
+ builder.append(resultSet.getString(i)).append(",");
+ }
+ Assert.assertEquals(retArray[cnt], builder.toString());
+ cnt++;
}
- Assert.assertEquals(retArray[cnt], builder.toString());
- cnt++;
}
- }
- statement.execute("DROP timeseries root.turbine1.d1.s1");
- statement.execute("FLUSH");
+ statement.execute("DROP timeseries root.turbine1.d1.s1");
+ statement.execute("FLUSH");
- try (ResultSet resultSet = statement.executeQuery("show timeseries root.turbine1.d1")) {
- Assert.assertFalse(resultSet.next());
+ try (ResultSet resultSet = statement.executeQuery("show timeseries root.turbine1.d1")) {
+ Assert.assertFalse(resultSet.next());
+ }
}
}
}
diff --git a/integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBSchemaTemplateIT.java b/integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBSchemaTemplateIT.java
index 36f7ec6dbb..bc6b0f6a49 100644
--- a/integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBSchemaTemplateIT.java
+++ b/integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBSchemaTemplateIT.java
@@ -49,189 +49,188 @@ import java.util.Set;
@Category({ClusterIT.class})
public class IoTDBSchemaTemplateIT {
- private Statement statement;
- private Connection connection;
-
@Before
public void setUp() throws Exception {
EnvFactory.getEnv().initClusterEnvironment();
- connection = EnvFactory.getEnv().getConnection();
- statement = connection.createStatement();
prepareTemplate();
}
@After
public void tearDown() throws Exception {
- statement.close();
- connection.close();
EnvFactory.getEnv().cleanClusterEnvironment();
}
@Test
public void testCreateTemplateAndCreateTimeseries() throws SQLException {
// test create schema template repeatedly
- try {
- statement.execute(
- "CREATE SCHEMA TEMPLATE t1 (s1 INT64 encoding=RLE compressor=SNAPPY, s2 INT32)");
- Assert.fail();
- } catch (SQLException e) {
- Assert.assertEquals(
- TSStatusCode.METADATA_ERROR.getStatusCode() + ": Duplicated template name: t1",
- e.getMessage());
- }
-
- // set schema template
- statement.execute("SET SCHEMA TEMPLATE t1 TO root.sg1.d1");
- statement.execute("SET SCHEMA TEMPLATE t2 TO root.sg1.d2");
-
- // test drop template which has been set
- try {
- statement.execute("DROP SCHEMA TEMPLATE t1");
- Assert.fail();
- } catch (SQLException e) {
- Assert.assertEquals(
- TSStatusCode.METADATA_ERROR.getStatusCode()
- + ": Template [t1] has been set on MTree, cannot be dropped now.",
- e.getMessage());
- }
-
- try (ResultSet resultSet = statement.executeQuery("SHOW TIMESERIES root.sg1.**")) {
- Assert.assertFalse(resultSet.next());
- }
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
+ try {
+ statement.execute(
+ "CREATE SCHEMA TEMPLATE t1 (s1 INT64 encoding=RLE compressor=SNAPPY, s2 INT32)");
+ Assert.fail();
+ } catch (SQLException e) {
+ Assert.assertEquals(
+ TSStatusCode.METADATA_ERROR.getStatusCode() + ": Duplicated template name: t1",
+ e.getMessage());
+ }
- // create timeseries of schema template
- statement.execute("CREATE TIMESERIES OF SCHEMA TEMPLATE ON root.sg1.d1");
- statement.execute("CREATE TIMESERIES OF SCHEMA TEMPLATE ON root.sg1.d2");
+ // set schema template
+ statement.execute("SET SCHEMA TEMPLATE t1 TO root.sg1.d1");
+ statement.execute("SET SCHEMA TEMPLATE t2 TO root.sg1.d2");
+
+ // test drop template which has been set
+ try {
+ statement.execute("DROP SCHEMA TEMPLATE t1");
+ Assert.fail();
+ } catch (SQLException e) {
+ Assert.assertEquals(
+ TSStatusCode.METADATA_ERROR.getStatusCode()
+ + ": Template [t1] has been set on MTree, cannot be dropped now.",
+ e.getMessage());
+ }
- Set<String> expectedResult =
- new HashSet<>(
- Arrays.asList(
- "root.sg1.d1.s1,INT64,RLE,SNAPPY",
- "root.sg1.d1.s2,DOUBLE,GORILLA,SNAPPY",
- "root.sg1.d2.s1,INT64,RLE,SNAPPY",
- "root.sg1.d2.s2,DOUBLE,GORILLA,SNAPPY"));
+ try (ResultSet resultSet = statement.executeQuery("SHOW TIMESERIES root.sg1.**")) {
+ Assert.assertFalse(resultSet.next());
+ }
- try (ResultSet resultSet = statement.executeQuery("SHOW TIMESERIES root.sg1.**"); ) {
- while (resultSet.next()) {
- String actualResult =
- resultSet.getString(ColumnHeaderConstant.TIMESERIES)
- + ","
- + resultSet.getString(ColumnHeaderConstant.DATATYPE)
- + ","
- + resultSet.getString(ColumnHeaderConstant.ENCODING)
- + ","
- + resultSet.getString(ColumnHeaderConstant.COMPRESSION);
- Assert.assertTrue(expectedResult.contains(actualResult));
- expectedResult.remove(actualResult);
+ // create timeseries of schema template
+ statement.execute("CREATE TIMESERIES OF SCHEMA TEMPLATE ON root.sg1.d1");
+ statement.execute("CREATE TIMESERIES OF SCHEMA TEMPLATE ON root.sg1.d2");
+
+ Set<String> expectedResult =
+ new HashSet<>(
+ Arrays.asList(
+ "root.sg1.d1.s1,INT64,RLE,SNAPPY",
+ "root.sg1.d1.s2,DOUBLE,GORILLA,SNAPPY",
+ "root.sg1.d2.s1,INT64,RLE,SNAPPY",
+ "root.sg1.d2.s2,DOUBLE,GORILLA,SNAPPY"));
+
+ try (ResultSet resultSet = statement.executeQuery("SHOW TIMESERIES root.sg1.**"); ) {
+ while (resultSet.next()) {
+ String actualResult =
+ resultSet.getString(ColumnHeaderConstant.TIMESERIES)
+ + ","
+ + resultSet.getString(ColumnHeaderConstant.DATATYPE)
+ + ","
+ + resultSet.getString(ColumnHeaderConstant.ENCODING)
+ + ","
+ + resultSet.getString(ColumnHeaderConstant.COMPRESSION);
+ Assert.assertTrue(expectedResult.contains(actualResult));
+ expectedResult.remove(actualResult);
+ }
}
- }
- Assert.assertTrue(expectedResult.isEmpty());
+ Assert.assertTrue(expectedResult.isEmpty());
- try (ResultSet resultSet = statement.executeQuery("COUNT TIMESERIES root.sg1.**")) {
- resultSet.next();
- Assert.assertEquals(4, resultSet.getLong(1));
- }
+ try (ResultSet resultSet = statement.executeQuery("COUNT TIMESERIES root.sg1.**")) {
+ resultSet.next();
+ Assert.assertEquals(4, resultSet.getLong(1));
+ }
- expectedResult = new HashSet<>(Arrays.asList("root.sg1.d1,false", "root.sg1.d2,true"));
+ expectedResult = new HashSet<>(Arrays.asList("root.sg1.d1,false", "root.sg1.d2,true"));
- try (ResultSet resultSet = statement.executeQuery("SHOW DEVICES")) {
- while (resultSet.next()) {
- String actualResult =
- resultSet.getString(ColumnHeaderConstant.DEVICE)
- + ","
- + resultSet.getString(ColumnHeaderConstant.IS_ALIGNED);
- Assert.assertTrue(expectedResult.contains(actualResult));
- expectedResult.remove(actualResult);
+ try (ResultSet resultSet = statement.executeQuery("SHOW DEVICES")) {
+ while (resultSet.next()) {
+ String actualResult =
+ resultSet.getString(ColumnHeaderConstant.DEVICE)
+ + ","
+ + resultSet.getString(ColumnHeaderConstant.IS_ALIGNED);
+ Assert.assertTrue(expectedResult.contains(actualResult));
+ expectedResult.remove(actualResult);
+ }
+ }
+ Assert.assertTrue(expectedResult.isEmpty());
+
+ try {
+ statement.execute("UNSET SCHEMA TEMPLATE t1 FROM root.sg1.d1");
+ Assert.fail();
+ } catch (SQLException e) {
+ Assert.assertEquals(
+ TSStatusCode.TEMPLATE_IS_IN_USE.getStatusCode() + ": Template is in use on root.sg1.d1",
+ e.getMessage());
}
- }
- Assert.assertTrue(expectedResult.isEmpty());
-
- try {
- statement.execute("UNSET SCHEMA TEMPLATE t1 FROM root.sg1.d1");
- Assert.fail();
- } catch (SQLException e) {
- Assert.assertEquals(
- TSStatusCode.TEMPLATE_IS_IN_USE.getStatusCode() + ": Template is in use on root.sg1.d1",
- e.getMessage());
}
}
@Test
public void testCreateAndSetSchemaTemplate() throws SQLException {
// test create schema template repeatedly
- try {
- statement.execute(
- "CREATE SCHEMA TEMPLATE t1 (s1 INT64 encoding=RLE compressor=SNAPPY, s2 INT32)");
- Assert.fail();
- } catch (SQLException e) {
- Assert.assertEquals(
- TSStatusCode.METADATA_ERROR.getStatusCode() + ": Duplicated template name: t1",
- e.getMessage());
- }
-
- // set schema template
- statement.execute("SET SCHEMA TEMPLATE t1 TO root.sg1.d1");
- statement.execute("SET SCHEMA TEMPLATE t2 TO root.sg1.d2");
-
- try (ResultSet resultSet = statement.executeQuery("SHOW TIMESERIES root.sg1.**")) {
- Assert.assertFalse(resultSet.next());
- }
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
+ try {
+ statement.execute(
+ "CREATE SCHEMA TEMPLATE t1 (s1 INT64 encoding=RLE compressor=SNAPPY, s2 INT32)");
+ Assert.fail();
+ } catch (SQLException e) {
+ Assert.assertEquals(
+ TSStatusCode.METADATA_ERROR.getStatusCode() + ": Duplicated template name: t1",
+ e.getMessage());
+ }
- // set using schema template
- statement.execute("INSERT INTO root.sg1.d1(time,s1) VALUES (1,1)");
- statement.execute("INSERT INTO root.sg1.d2(time,s1) ALIGNED VALUES (1,1)");
+ // set schema template
+ statement.execute("SET SCHEMA TEMPLATE t1 TO root.sg1.d1");
+ statement.execute("SET SCHEMA TEMPLATE t2 TO root.sg1.d2");
- Set<String> expectedResult =
- new HashSet<>(
- Arrays.asList(
- "root.sg1.d1.s1,INT64,RLE,SNAPPY",
- "root.sg1.d1.s2,DOUBLE,GORILLA,SNAPPY",
- "root.sg1.d2.s1,INT64,RLE,SNAPPY",
- "root.sg1.d2.s2,DOUBLE,GORILLA,SNAPPY"));
+ try (ResultSet resultSet = statement.executeQuery("SHOW TIMESERIES root.sg1.**")) {
+ Assert.assertFalse(resultSet.next());
+ }
- try (ResultSet resultSet = statement.executeQuery("SHOW TIMESERIES root.sg1.**")) {
- while (resultSet.next()) {
- String actualResult =
- resultSet.getString(ColumnHeaderConstant.TIMESERIES)
- + ","
- + resultSet.getString(ColumnHeaderConstant.DATATYPE)
- + ","
- + resultSet.getString(ColumnHeaderConstant.ENCODING)
- + ","
- + resultSet.getString(ColumnHeaderConstant.COMPRESSION);
- Assert.assertTrue(expectedResult.contains(actualResult));
- expectedResult.remove(actualResult);
+ // set using schema template
+ statement.execute("INSERT INTO root.sg1.d1(time,s1) VALUES (1,1)");
+ statement.execute("INSERT INTO root.sg1.d2(time,s1) ALIGNED VALUES (1,1)");
+
+ Set<String> expectedResult =
+ new HashSet<>(
+ Arrays.asList(
+ "root.sg1.d1.s1,INT64,RLE,SNAPPY",
+ "root.sg1.d1.s2,DOUBLE,GORILLA,SNAPPY",
+ "root.sg1.d2.s1,INT64,RLE,SNAPPY",
+ "root.sg1.d2.s2,DOUBLE,GORILLA,SNAPPY"));
+
+ try (ResultSet resultSet = statement.executeQuery("SHOW TIMESERIES root.sg1.**")) {
+ while (resultSet.next()) {
+ String actualResult =
+ resultSet.getString(ColumnHeaderConstant.TIMESERIES)
+ + ","
+ + resultSet.getString(ColumnHeaderConstant.DATATYPE)
+ + ","
+ + resultSet.getString(ColumnHeaderConstant.ENCODING)
+ + ","
+ + resultSet.getString(ColumnHeaderConstant.COMPRESSION);
+ Assert.assertTrue(expectedResult.contains(actualResult));
+ expectedResult.remove(actualResult);
+ }
}
- }
- Assert.assertTrue(expectedResult.isEmpty());
+ Assert.assertTrue(expectedResult.isEmpty());
- try (ResultSet resultSet = statement.executeQuery("COUNT TIMESERIES root.sg1.**")) {
- resultSet.next();
- Assert.assertEquals(4, resultSet.getLong(1));
- }
+ try (ResultSet resultSet = statement.executeQuery("COUNT TIMESERIES root.sg1.**")) {
+ resultSet.next();
+ Assert.assertEquals(4, resultSet.getLong(1));
+ }
- expectedResult = new HashSet<>(Arrays.asList("root.sg1.d1,false", "root.sg1.d2,true"));
+ expectedResult = new HashSet<>(Arrays.asList("root.sg1.d1,false", "root.sg1.d2,true"));
- try (ResultSet resultSet = statement.executeQuery("SHOW DEVICES")) {
- while (resultSet.next()) {
- String actualResult =
- resultSet.getString(ColumnHeaderConstant.DEVICE)
- + ","
- + resultSet.getString(ColumnHeaderConstant.IS_ALIGNED);
- Assert.assertTrue(expectedResult.contains(actualResult));
- expectedResult.remove(actualResult);
+ try (ResultSet resultSet = statement.executeQuery("SHOW DEVICES")) {
+ while (resultSet.next()) {
+ String actualResult =
+ resultSet.getString(ColumnHeaderConstant.DEVICE)
+ + ","
+ + resultSet.getString(ColumnHeaderConstant.IS_ALIGNED);
+ Assert.assertTrue(expectedResult.contains(actualResult));
+ expectedResult.remove(actualResult);
+ }
+ }
+ Assert.assertTrue(expectedResult.isEmpty());
+
+ try {
+ statement.execute("UNSET SCHEMA TEMPLATE t1 FROM root.sg1.d1");
+ Assert.fail();
+ } catch (SQLException e) {
+ Assert.assertEquals(
+ TSStatusCode.TEMPLATE_IS_IN_USE.getStatusCode() + ": Template is in use on root.sg1.d1",
+ e.getMessage());
}
- }
- Assert.assertTrue(expectedResult.isEmpty());
-
- try {
- statement.execute("UNSET SCHEMA TEMPLATE t1 FROM root.sg1.d1");
- Assert.fail();
- } catch (SQLException e) {
- Assert.assertEquals(
- TSStatusCode.TEMPLATE_IS_IN_USE.getStatusCode() + ": Template is in use on root.sg1.d1",
- e.getMessage());
}
}
@@ -240,27 +239,30 @@ public class IoTDBSchemaTemplateIT {
// show schema templates
String[] expectedResult = new String[] {"t1", "t2"};
Set<String> expectedResultSet = new HashSet<>(Arrays.asList(expectedResult));
- try (ResultSet resultSet = statement.executeQuery("SHOW SCHEMA TEMPLATES")) {
- while (resultSet.next()) {
- Assert.assertTrue(
- expectedResultSet.contains(resultSet.getString(ColumnHeaderConstant.TEMPLATE_NAME)));
- expectedResultSet.remove(resultSet.getString(ColumnHeaderConstant.TEMPLATE_NAME));
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
+ try (ResultSet resultSet = statement.executeQuery("SHOW SCHEMA TEMPLATES")) {
+ while (resultSet.next()) {
+ Assert.assertTrue(
+ expectedResultSet.contains(resultSet.getString(ColumnHeaderConstant.TEMPLATE_NAME)));
+ expectedResultSet.remove(resultSet.getString(ColumnHeaderConstant.TEMPLATE_NAME));
+ }
}
- }
- Assert.assertEquals(0, expectedResultSet.size());
-
- // drop schema template
- statement.execute("DROP SCHEMA TEMPLATE t2");
- expectedResult = new String[] {"t1"};
- expectedResultSet = new HashSet<>(Arrays.asList(expectedResult));
- try (ResultSet resultSet = statement.executeQuery("SHOW SCHEMA TEMPLATES")) {
- while (resultSet.next()) {
- Assert.assertTrue(
- expectedResultSet.contains(resultSet.getString(ColumnHeaderConstant.TEMPLATE_NAME)));
- expectedResultSet.remove(resultSet.getString(ColumnHeaderConstant.TEMPLATE_NAME));
+ Assert.assertEquals(0, expectedResultSet.size());
+
+ // drop schema template
+ statement.execute("DROP SCHEMA TEMPLATE t2");
+ expectedResult = new String[] {"t1"};
+ expectedResultSet = new HashSet<>(Arrays.asList(expectedResult));
+ try (ResultSet resultSet = statement.executeQuery("SHOW SCHEMA TEMPLATES")) {
+ while (resultSet.next()) {
+ Assert.assertTrue(
+ expectedResultSet.contains(resultSet.getString(ColumnHeaderConstant.TEMPLATE_NAME)));
+ expectedResultSet.remove(resultSet.getString(ColumnHeaderConstant.TEMPLATE_NAME));
+ }
}
+ Assert.assertEquals(0, expectedResultSet.size());
}
- Assert.assertEquals(0, expectedResultSet.size());
}
@Test
@@ -268,7 +270,9 @@ public class IoTDBSchemaTemplateIT {
// set schema template
Set<String> expectedResultSet =
new HashSet<>(Arrays.asList("s1,INT64,RLE,SNAPPY", "s2,DOUBLE,GORILLA,SNAPPY"));
- try (ResultSet resultSet = statement.executeQuery("SHOW NODES IN SCHEMA TEMPLATE t1")) {
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement();
+ ResultSet resultSet = statement.executeQuery("SHOW NODES IN SCHEMA TEMPLATE t1")) {
while (resultSet.next()) {
String actualResult =
resultSet.getString(ColumnHeaderConstant.CHILD_NODES)
@@ -287,246 +291,267 @@ public class IoTDBSchemaTemplateIT {
@Test
public void testShowPathsSetOrUsingSchemaTemplate() throws SQLException {
- // set schema template
- statement.execute("SET SCHEMA TEMPLATE t1 TO root.sg1.d1");
- statement.execute("SET SCHEMA TEMPLATE t1 TO root.sg1.d2");
- statement.execute("SET SCHEMA TEMPLATE t1 TO root.sg2.d1");
- statement.execute("SET SCHEMA TEMPLATE t1 TO root.sg2.d2");
- statement.execute("SET SCHEMA TEMPLATE t2 TO root.sg3.d1");
- statement.execute("SET SCHEMA TEMPLATE t2 TO root.sg3.d2");
- statement.execute("INSERT INTO root.sg3.d2.verify(time, show) VALUES (1, 1)");
-
- try (ResultSet resultSet = statement.executeQuery("SHOW PATHS USING SCHEMA TEMPLATE t1")) {
- String resultRecord;
- while (resultSet.next()) {
- resultRecord = resultSet.getString(1);
- Assert.assertEquals("", resultRecord);
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
+ // set schema template
+ statement.execute("SET SCHEMA TEMPLATE t1 TO root.sg1.d1");
+ statement.execute("SET SCHEMA TEMPLATE t1 TO root.sg1.d2");
+ statement.execute("SET SCHEMA TEMPLATE t1 TO root.sg2.d1");
+ statement.execute("SET SCHEMA TEMPLATE t1 TO root.sg2.d2");
+ statement.execute("SET SCHEMA TEMPLATE t2 TO root.sg3.d1");
+ statement.execute("SET SCHEMA TEMPLATE t2 TO root.sg3.d2");
+ statement.execute("INSERT INTO root.sg3.d2.verify(time, show) VALUES (1, 1)");
+
+ try (ResultSet resultSet = statement.executeQuery("SHOW PATHS USING SCHEMA TEMPLATE t1")) {
+ String resultRecord;
+ while (resultSet.next()) {
+ resultRecord = resultSet.getString(1);
+ Assert.assertEquals("", resultRecord);
+ }
}
- }
- // activate schema template
- statement.execute("CREATE TIMESERIES OF SCHEMA TEMPLATE ON root.sg1.d2");
- statement.execute("CREATE TIMESERIES OF SCHEMA TEMPLATE ON root.sg2.d1");
-
- // show paths set schema template
- String[] expectedResult =
- new String[] {"root.sg1.d1", "root.sg2.d2", "root.sg1.d2", "root.sg2.d1"};
- Set<String> expectedResultSet = new HashSet<>(Arrays.asList(expectedResult));
- try (ResultSet resultSet = statement.executeQuery("SHOW PATHS SET SCHEMA TEMPLATE t1")) {
- String resultRecord;
- while (resultSet.next()) {
- resultRecord = resultSet.getString(1);
- Assert.assertTrue(expectedResultSet.contains(resultRecord));
- expectedResultSet.remove(resultRecord);
+ // activate schema template
+ statement.execute("CREATE TIMESERIES OF SCHEMA TEMPLATE ON root.sg1.d2");
+ statement.execute("CREATE TIMESERIES OF SCHEMA TEMPLATE ON root.sg2.d1");
+
+ // show paths set schema template
+ String[] expectedResult =
+ new String[] {"root.sg1.d1", "root.sg2.d2", "root.sg1.d2", "root.sg2.d1"};
+ Set<String> expectedResultSet = new HashSet<>(Arrays.asList(expectedResult));
+ try (ResultSet resultSet = statement.executeQuery("SHOW PATHS SET SCHEMA TEMPLATE t1")) {
+ String resultRecord;
+ while (resultSet.next()) {
+ resultRecord = resultSet.getString(1);
+ Assert.assertTrue(expectedResultSet.contains(resultRecord));
+ expectedResultSet.remove(resultRecord);
+ }
}
- }
- Assert.assertEquals(0, expectedResultSet.size());
-
- expectedResult = new String[] {"root.sg3.d1", "root.sg3.d2"};
- expectedResultSet = new HashSet<>(Arrays.asList(expectedResult));
- try (ResultSet resultSet = statement.executeQuery("SHOW PATHS SET SCHEMA TEMPLATE t2")) {
- String resultRecord;
- while (resultSet.next()) {
- resultRecord = resultSet.getString(1);
- Assert.assertTrue(expectedResultSet.contains(resultRecord));
- expectedResultSet.remove(resultRecord);
+ Assert.assertEquals(0, expectedResultSet.size());
+
+ expectedResult = new String[] {"root.sg3.d1", "root.sg3.d2"};
+ expectedResultSet = new HashSet<>(Arrays.asList(expectedResult));
+ try (ResultSet resultSet = statement.executeQuery("SHOW PATHS SET SCHEMA TEMPLATE t2")) {
+ String resultRecord;
+ while (resultSet.next()) {
+ resultRecord = resultSet.getString(1);
+ Assert.assertTrue(expectedResultSet.contains(resultRecord));
+ expectedResultSet.remove(resultRecord);
+ }
}
- }
- Assert.assertEquals(0, expectedResultSet.size());
-
- expectedResult = new String[] {"root.sg1.d2", "root.sg2.d1"};
- expectedResultSet = new HashSet<>(Arrays.asList(expectedResult));
- try (ResultSet resultSet = statement.executeQuery("SHOW PATHS USING SCHEMA TEMPLATE t1")) {
- String resultRecord;
- while (resultSet.next()) {
- resultRecord = resultSet.getString(1);
- Assert.assertTrue(expectedResultSet.contains(resultRecord));
- expectedResultSet.remove(resultRecord);
+ Assert.assertEquals(0, expectedResultSet.size());
+
+ expectedResult = new String[] {"root.sg1.d2", "root.sg2.d1"};
+ expectedResultSet = new HashSet<>(Arrays.asList(expectedResult));
+ try (ResultSet resultSet = statement.executeQuery("SHOW PATHS USING SCHEMA TEMPLATE t1")) {
+ String resultRecord;
+ while (resultSet.next()) {
+ resultRecord = resultSet.getString(1);
+ Assert.assertTrue(expectedResultSet.contains(resultRecord));
+ expectedResultSet.remove(resultRecord);
+ }
}
- }
- Assert.assertEquals(0, expectedResultSet.size());
+ Assert.assertEquals(0, expectedResultSet.size());
- ResultSet resultSet = statement.executeQuery("SHOW PATHS USING SCHEMA TEMPLATE t2");
- Assert.assertFalse(resultSet.next());
+ ResultSet resultSet = statement.executeQuery("SHOW PATHS USING SCHEMA TEMPLATE t2");
+ Assert.assertFalse(resultSet.next());
+ }
}
@Test
public void testSetAndActivateTemplateOnSGNode() throws SQLException {
- statement.execute("CREATE DATABASE root.test.sg_satosg");
- statement.execute("SET SCHEMA TEMPLATE t1 TO root.test.sg_satosg");
- statement.execute("INSERT INTO root.test.sg_satosg(time, s1) VALUES (1, 1)");
- statement.execute("INSERT INTO root.test.sg_satosg(time, s1) VALUES (2, 2)");
- ResultSet resultSet = statement.executeQuery("SHOW TIMESERIES root.test.sg_satosg.**");
-
- Set<String> expRes =
- new HashSet<>(
- Arrays.asList(new String[] {"root.test.sg_satosg.s1", "root.test.sg_satosg.s2"}));
- int resCnt = 0;
- while (resultSet.next()) {
- resCnt++;
- expRes.remove(resultSet.getString(ColumnHeaderConstant.TIMESERIES));
- }
- Assert.assertEquals(2, resCnt);
- Assert.assertTrue(expRes.isEmpty());
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
+ statement.execute("CREATE DATABASE root.test.sg_satosg");
+ statement.execute("SET SCHEMA TEMPLATE t1 TO root.test.sg_satosg");
+ statement.execute("INSERT INTO root.test.sg_satosg(time, s1) VALUES (1, 1)");
+ statement.execute("INSERT INTO root.test.sg_satosg(time, s1) VALUES (2, 2)");
+ ResultSet resultSet = statement.executeQuery("SHOW TIMESERIES root.test.sg_satosg.**");
+
+ Set<String> expRes =
+ new HashSet<>(
+ Arrays.asList(new String[] {"root.test.sg_satosg.s1", "root.test.sg_satosg.s2"}));
+ int resCnt = 0;
+ while (resultSet.next()) {
+ resCnt++;
+ expRes.remove(resultSet.getString(ColumnHeaderConstant.TIMESERIES));
+ }
+ Assert.assertEquals(2, resCnt);
+ Assert.assertTrue(expRes.isEmpty());
- resultSet = statement.executeQuery("SELECT COUNT(s1) from root.test.sg_satosg");
- while (resultSet.next()) {
- Assert.assertEquals(2L, resultSet.getLong("COUNT(root.test.sg_satosg.s1)"));
+ resultSet = statement.executeQuery("SELECT COUNT(s1) from root.test.sg_satosg");
+ while (resultSet.next()) {
+ Assert.assertEquals(2L, resultSet.getLong("COUNT(root.test.sg_satosg.s1)"));
+ }
}
}
private void prepareTemplate() throws SQLException {
- // create database
- statement.execute("CREATE DATABASE root.sg1");
- statement.execute("CREATE DATABASE root.sg2");
- statement.execute("CREATE DATABASE root.sg3");
-
- // create schema template
- statement.execute("CREATE SCHEMA TEMPLATE t1 (s1 INT64, s2 DOUBLE)");
- statement.execute("CREATE SCHEMA TEMPLATE t2 aligned (s1 INT64, s2 DOUBLE)");
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
+ // create database
+ statement.execute("CREATE DATABASE root.sg1");
+ statement.execute("CREATE DATABASE root.sg2");
+ statement.execute("CREATE DATABASE root.sg3");
+
+ // create schema template
+ statement.execute("CREATE SCHEMA TEMPLATE t1 (s1 INT64, s2 DOUBLE)");
+ statement.execute("CREATE SCHEMA TEMPLATE t2 aligned (s1 INT64, s2 DOUBLE)");
+ }
}
@Test
public void testDeleteTimeSeriesWhenUsingTemplate() throws SQLException {
- // set schema template
- statement.execute("SET SCHEMA TEMPLATE t1 TO root.sg1.d1");
- statement.execute("SET SCHEMA TEMPLATE t2 TO root.sg1.d2");
-
- statement.execute("CREATE TIMESERIES root.sg3.d1.s1 INT64");
-
- // set using schema template
- statement.execute("INSERT INTO root.sg1.d1(time,s1) VALUES (1,1)");
- statement.execute("INSERT INTO root.sg1.d2(time,s1) ALIGNED VALUES (1,1)");
- statement.execute("INSERT INTO root.sg3.d1(time,s1) VALUES (1,1)");
-
- Set<String> expectedResult = new HashSet<>(Collections.singletonList("1,1,1,1,"));
-
- try (ResultSet resultSet = statement.executeQuery("SELECT s1 FROM root.**")) {
- while (resultSet.next()) {
- StringBuilder stringBuilder = new StringBuilder();
- for (int i = 1; i <= 4; i++) {
- stringBuilder.append(resultSet.getString(i)).append(",");
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
+ // set schema template
+ statement.execute("SET SCHEMA TEMPLATE t1 TO root.sg1.d1");
+ statement.execute("SET SCHEMA TEMPLATE t2 TO root.sg1.d2");
+
+ statement.execute("CREATE TIMESERIES root.sg3.d1.s1 INT64");
+
+ // set using schema template
+ statement.execute("INSERT INTO root.sg1.d1(time,s1) VALUES (1,1)");
+ statement.execute("INSERT INTO root.sg1.d2(time,s1) ALIGNED VALUES (1,1)");
+ statement.execute("INSERT INTO root.sg3.d1(time,s1) VALUES (1,1)");
+
+ Set<String> expectedResult = new HashSet<>(Collections.singletonList("1,1,1,1,"));
+
+ try (ResultSet resultSet = statement.executeQuery("SELECT s1 FROM root.**")) {
+ while (resultSet.next()) {
+ StringBuilder stringBuilder = new StringBuilder();
+ for (int i = 1; i <= 4; i++) {
+ stringBuilder.append(resultSet.getString(i)).append(",");
+ }
+ String actualResult = stringBuilder.toString();
+ Assert.assertTrue(expectedResult.contains(actualResult));
+ expectedResult.remove(actualResult);
}
- String actualResult = stringBuilder.toString();
- Assert.assertTrue(expectedResult.contains(actualResult));
- expectedResult.remove(actualResult);
}
- }
- Assert.assertTrue(expectedResult.isEmpty());
-
- statement.execute("DELETE TIMESERIES root.**.s1");
-
- expectedResult =
- new HashSet<>(
- Arrays.asList("root.sg1.d1.s1,INT64,RLE,SNAPPY", "root.sg1.d2.s1,INT64,RLE,SNAPPY"));
-
- try (ResultSet resultSet = statement.executeQuery("SHOW TIMESERIES root.**.s1")) {
- while (resultSet.next()) {
- String actualResult =
- resultSet.getString(ColumnHeaderConstant.TIMESERIES)
- + ","
- + resultSet.getString(ColumnHeaderConstant.DATATYPE)
- + ","
- + resultSet.getString(ColumnHeaderConstant.ENCODING)
- + ","
- + resultSet.getString(ColumnHeaderConstant.COMPRESSION);
- Assert.assertTrue(expectedResult.contains(actualResult));
- expectedResult.remove(actualResult);
+ Assert.assertTrue(expectedResult.isEmpty());
+
+ statement.execute("DELETE TIMESERIES root.**.s1");
+
+ expectedResult =
+ new HashSet<>(
+ Arrays.asList("root.sg1.d1.s1,INT64,RLE,SNAPPY", "root.sg1.d2.s1,INT64,RLE,SNAPPY"));
+
+ try (ResultSet resultSet = statement.executeQuery("SHOW TIMESERIES root.**.s1")) {
+ while (resultSet.next()) {
+ String actualResult =
+ resultSet.getString(ColumnHeaderConstant.TIMESERIES)
+ + ","
+ + resultSet.getString(ColumnHeaderConstant.DATATYPE)
+ + ","
+ + resultSet.getString(ColumnHeaderConstant.ENCODING)
+ + ","
+ + resultSet.getString(ColumnHeaderConstant.COMPRESSION);
+ Assert.assertTrue(expectedResult.contains(actualResult));
+ expectedResult.remove(actualResult);
+ }
}
- }
- Assert.assertTrue(expectedResult.isEmpty());
+ Assert.assertTrue(expectedResult.isEmpty());
- try (ResultSet resultSet = statement.executeQuery("SELECT s1 FROM root.**")) {
- Assert.assertFalse(resultSet.next());
+ try (ResultSet resultSet = statement.executeQuery("SELECT s1 FROM root.**")) {
+ Assert.assertFalse(resultSet.next());
+ }
}
}
@Test
public void testSchemaQueryAndFetchWithUnrelatedTemplate() throws SQLException {
- statement.execute("CREATE SCHEMA TEMPLATE t3 (s3 INT64, s4 DOUBLE)");
-
- // set schema template
- statement.execute("SET SCHEMA TEMPLATE t1 TO root.sg1.d1");
- statement.execute("SET SCHEMA TEMPLATE t3 TO root.sg1.d2");
-
- // set using schema template
- statement.execute("INSERT INTO root.sg1.d1(time,s1) VALUES (1,1)");
- statement.execute("INSERT INTO root.sg1.d2(time,s3) VALUES (1,1)");
-
- Set<String> expectedResult = new HashSet<>(Collections.singletonList("1,1,"));
-
- try (ResultSet resultSet = statement.executeQuery("SELECT s1 FROM root.**")) {
- while (resultSet.next()) {
- StringBuilder stringBuilder = new StringBuilder();
- for (int i = 1; i <= 2; i++) {
- stringBuilder.append(resultSet.getString(i)).append(",");
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
+ statement.execute("CREATE SCHEMA TEMPLATE t3 (s3 INT64, s4 DOUBLE)");
+
+ // set schema template
+ statement.execute("SET SCHEMA TEMPLATE t1 TO root.sg1.d1");
+ statement.execute("SET SCHEMA TEMPLATE t3 TO root.sg1.d2");
+
+ // set using schema template
+ statement.execute("INSERT INTO root.sg1.d1(time,s1) VALUES (1,1)");
+ statement.execute("INSERT INTO root.sg1.d2(time,s3) VALUES (1,1)");
+
+ Set<String> expectedResult = new HashSet<>(Collections.singletonList("1,1,"));
+
+ try (ResultSet resultSet = statement.executeQuery("SELECT s1 FROM root.**")) {
+ while (resultSet.next()) {
+ StringBuilder stringBuilder = new StringBuilder();
+ for (int i = 1; i <= 2; i++) {
+ stringBuilder.append(resultSet.getString(i)).append(",");
+ }
+ String actualResult = stringBuilder.toString();
+ Assert.assertTrue(expectedResult.contains(actualResult));
+ expectedResult.remove(actualResult);
}
- String actualResult = stringBuilder.toString();
- Assert.assertTrue(expectedResult.contains(actualResult));
- expectedResult.remove(actualResult);
}
- }
- Assert.assertTrue(expectedResult.isEmpty());
-
- expectedResult = new HashSet<>(Collections.singletonList("root.sg1.d1.s1,INT64,RLE,SNAPPY"));
-
- try (ResultSet resultSet = statement.executeQuery("SHOW TIMESERIES root.**.s1")) {
- while (resultSet.next()) {
- String actualResult =
- resultSet.getString(ColumnHeaderConstant.TIMESERIES)
- + ","
- + resultSet.getString(ColumnHeaderConstant.DATATYPE)
- + ","
- + resultSet.getString(ColumnHeaderConstant.ENCODING)
- + ","
- + resultSet.getString(ColumnHeaderConstant.COMPRESSION);
- Assert.assertTrue(expectedResult.contains(actualResult));
- expectedResult.remove(actualResult);
+ Assert.assertTrue(expectedResult.isEmpty());
+
+ expectedResult = new HashSet<>(Collections.singletonList("root.sg1.d1.s1,INT64,RLE,SNAPPY"));
+
+ try (ResultSet resultSet = statement.executeQuery("SHOW TIMESERIES root.**.s1")) {
+ while (resultSet.next()) {
+ String actualResult =
+ resultSet.getString(ColumnHeaderConstant.TIMESERIES)
+ + ","
+ + resultSet.getString(ColumnHeaderConstant.DATATYPE)
+ + ","
+ + resultSet.getString(ColumnHeaderConstant.ENCODING)
+ + ","
+ + resultSet.getString(ColumnHeaderConstant.COMPRESSION);
+ Assert.assertTrue(expectedResult.contains(actualResult));
+ expectedResult.remove(actualResult);
+ }
}
+ Assert.assertTrue(expectedResult.isEmpty());
}
- Assert.assertTrue(expectedResult.isEmpty());
}
@Test
public void testInsertDataWithMeasurementsBeyondTemplate() throws Exception {
- // set schema template
- statement.execute("SET SCHEMA TEMPLATE t1 TO root.sg1.d1");
- // insert data and auto activate schema template
- statement.execute("INSERT INTO root.sg1.d1(time,s1,s2) VALUES (1,1,1)");
- // insert twice to make sure the timeseries in template has been cached
- statement.execute("INSERT INTO root.sg1.d1(time,s1,s2) VALUES (2,1,1)");
-
- // insert data with extra measurement s3 which should be checked by schema fetch and auto
- // created
- statement.execute("INSERT INTO root.sg1.d1(time,s1,s2,s3) VALUES (2,1,1,1)");
-
- try (ResultSet resultSet = statement.executeQuery("count timeseries")) {
- Assert.assertTrue(resultSet.next());
- long resultRecord = resultSet.getLong(1);
- Assert.assertEquals(3, resultRecord);
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
+ // set schema template
+ statement.execute("SET SCHEMA TEMPLATE t1 TO root.sg1.d1");
+ // insert data and auto activate schema template
+ statement.execute("INSERT INTO root.sg1.d1(time,s1,s2) VALUES (1,1,1)");
+ // insert twice to make sure the timeseries in template has been cached
+ statement.execute("INSERT INTO root.sg1.d1(time,s1,s2) VALUES (2,1,1)");
+
+ // insert data with extra measurement s3 which should be checked by schema fetch and auto
+ // created
+ statement.execute("INSERT INTO root.sg1.d1(time,s1,s2,s3) VALUES (2,1,1,1)");
+
+ try (ResultSet resultSet = statement.executeQuery("count timeseries")) {
+ Assert.assertTrue(resultSet.next());
+ long resultRecord = resultSet.getLong(1);
+ Assert.assertEquals(3, resultRecord);
+ }
}
}
@Test
public void testUnsetTemplate() throws SQLException {
- // set schema template
- statement.execute("SET SCHEMA TEMPLATE t1 TO root.sg1.d1");
- // show paths set schema template
- String[] expectedResult = new String[] {"root.sg1.d1"};
- Set<String> expectedResultSet = new HashSet<>(Arrays.asList(expectedResult));
- try (ResultSet resultSet = statement.executeQuery("SHOW PATHS SET SCHEMA TEMPLATE t1")) {
- String resultRecord;
- while (resultSet.next()) {
- resultRecord = resultSet.getString(1);
- Assert.assertTrue(expectedResultSet.contains(resultRecord));
- expectedResultSet.remove(resultRecord);
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
+ // set schema template
+ statement.execute("SET SCHEMA TEMPLATE t1 TO root.sg1.d1");
+ // show paths set schema template
+ String[] expectedResult = new String[] {"root.sg1.d1"};
+ Set<String> expectedResultSet = new HashSet<>(Arrays.asList(expectedResult));
+ try (ResultSet resultSet = statement.executeQuery("SHOW PATHS SET SCHEMA TEMPLATE t1")) {
+ String resultRecord;
+ while (resultSet.next()) {
+ resultRecord = resultSet.getString(1);
+ Assert.assertTrue(expectedResultSet.contains(resultRecord));
+ expectedResultSet.remove(resultRecord);
+ }
+ }
+ Assert.assertEquals(0, expectedResultSet.size());
+ // unset schema template
+ statement.execute("UNSET SCHEMA TEMPLATE t1 FROM root.sg1.d1");
+ try (ResultSet resultSet = statement.executeQuery("SHOW PATHS SET SCHEMA TEMPLATE t1")) {
+ Assert.assertFalse(resultSet.next());
}
- }
- Assert.assertEquals(0, expectedResultSet.size());
- // unset schema template
- statement.execute("UNSET SCHEMA TEMPLATE t1 FROM root.sg1.d1");
- try (ResultSet resultSet = statement.executeQuery("SHOW PATHS SET SCHEMA TEMPLATE t1")) {
- Assert.assertFalse(resultSet.next());
}
}
}