This is an automated email from the ASF dual-hosted git repository. jiangtian pushed a commit to branch table_model_auto_cast in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit b02fe0b656a78b6631d763c7244705674a471997 Author: Tian Jiang <[email protected]> AuthorDate: Thu Dec 12 11:39:55 2024 +0800 supplement test --- .../it/session/IoTDBSessionRelationalIT.java | 37 ++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/integration-test/src/test/java/org/apache/iotdb/relational/it/session/IoTDBSessionRelationalIT.java b/integration-test/src/test/java/org/apache/iotdb/relational/it/session/IoTDBSessionRelationalIT.java index 4ff8a61aec2..43d657c6d93 100644 --- a/integration-test/src/test/java/org/apache/iotdb/relational/it/session/IoTDBSessionRelationalIT.java +++ b/integration-test/src/test/java/org/apache/iotdb/relational/it/session/IoTDBSessionRelationalIT.java @@ -71,6 +71,7 @@ public class IoTDBSessionRelationalIT { try (ITableSession session = EnvFactory.getEnv().getTableSessionConnection()) { session.executeNonQueryStatement("CREATE DATABASE IF NOT EXISTS db1"); session.executeNonQueryStatement("CREATE DATABASE IF NOT EXISTS db2"); + session.executeNonQueryStatement("CREATE DATABASE IF NOT EXISTS db3"); } } @@ -78,6 +79,8 @@ public class IoTDBSessionRelationalIT { public void tearDown() throws Exception { try (ITableSession session = EnvFactory.getEnv().getTableSessionConnection()) { session.executeNonQueryStatement("DROP DATABASE IF EXISTS db1"); + session.executeNonQueryStatement("DROP DATABASE IF EXISTS db2"); + session.executeNonQueryStatement("DROP DATABASE IF EXISTS db3"); } } @@ -1302,6 +1305,40 @@ public class IoTDBSessionRelationalIT { assertEquals(2, rec.getFields().get(0).getLongV()); assertEquals("d2", rec.getFields().get(1).toString()); assertEquals(2.0, rec.getFields().get(2).getDoubleV(), 0.1); + assertFalse(dataSet.hasNext()); + } + } + + @Test + @Category({LocalStandaloneIT.class, ClusterIT.class}) + public void dropTableOfTheSameNameTest() + throws IoTDBConnectionException, StatementExecutionException { + int testNum = 16; + try (ITableSession session = EnvFactory.getEnv().getTableSessionConnection()) { + session.executeNonQueryStatement("USE db1"); + + session.executeNonQueryStatement("CREATE TABLE db1.table" + testNum + " (id1 string id, m1 int32 measurement)"); + session.executeNonQueryStatement("INSERT INTO db1.table" + testNum + " (time, id1, m1) VALUES (1, 'd1', 1)"); + + session.executeNonQueryStatement("CREATE TABLE db2.table" + testNum + " (id1 string id, m1 double measurement)"); + session.executeNonQueryStatement("INSERT INTO db2.table" + testNum + " (time, id1, m1) VALUES (2, 'd2', 2)"); + + session.executeNonQueryStatement("DROP TABLE db2.table" + testNum); + + SessionDataSet dataSet = + session.executeQueryStatement("select * from db1.table" + testNum + " order by time"); + RowRecord rec = dataSet.next(); + assertEquals(1, rec.getFields().get(0).getLongV()); + assertEquals("d1", rec.getFields().get(1).toString()); + assertEquals(1, rec.getFields().get(2).getIntV()); + assertFalse(dataSet.hasNext()); + + try { + session.executeQueryStatement("select * from db2.table" + testNum + " order by time"); + fail("expected exception"); + } catch (StatementExecutionException e) { + assertEquals("701: Table 'db2.table16' does not exist", e.getMessage()); + } } } }
