http://git-wip-us.apache.org/repos/asf/phoenix/blob/d77d2492/phoenix-core/src/it/java/org/apache/phoenix/end2end/SkipScanQueryIT.java ---------------------------------------------------------------------- diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/SkipScanQueryIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/SkipScanQueryIT.java index 31994bb..1021bdd 100644 --- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/SkipScanQueryIT.java +++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/SkipScanQueryIT.java @@ -34,36 +34,40 @@ import java.util.Collections; import java.util.List; import java.util.Properties; -import org.apache.phoenix.util.PhoenixRuntime; -import org.apache.phoenix.util.PropertiesUtil; import org.apache.phoenix.util.TestUtil; +import org.apache.phoenix.util.SchemaUtil; +import org.apache.phoenix.util.PropertiesUtil; +import org.apache.phoenix.util.PhoenixRuntime; import org.junit.Test; -public class SkipScanQueryIT extends BaseHBaseManagedTimeIT { +public class SkipScanQueryIT extends BaseHBaseManagedTimeTableReuseIT { - private void initIntInTable(Connection conn, List<Integer> data) throws SQLException { - String ddl = "CREATE TABLE IF NOT EXISTS inTest (" + + private String initIntInTable(Connection conn, List<Integer> data) throws SQLException { + String tableName = generateRandomString(); + String ddl = "CREATE TABLE IF NOT EXISTS " + tableName + " (" + " i INTEGER NOT NULL PRIMARY KEY)"; conn.createStatement().executeUpdate(ddl); // Test upsert correct values - String query = "UPSERT INTO inTest VALUES(?)"; + String query = "UPSERT INTO " + tableName + " VALUES(?)"; PreparedStatement stmt = conn.prepareStatement(query); for (Integer i : data) { stmt.setInt(1, i); stmt.execute(); } conn.commit(); + return tableName; } - private void initVarCharCrossProductInTable(Connection conn, List<String> c1, List<String> c2) throws SQLException { - String ddl = "CREATE TABLE IF NOT EXISTS inVarTest (" + + private String initVarCharCrossProductInTable(Connection conn, List<String> c1, List<String> c2) throws SQLException { + String tableName = generateRandomString(); + String ddl = "CREATE TABLE IF NOT EXISTS " + tableName + " (" + " s1 VARCHAR, s2 VARCHAR CONSTRAINT pk PRIMARY KEY (s1,s2))"; conn.createStatement().executeUpdate(ddl); // Test upsert correct values - String query = "UPSERT INTO inVarTest VALUES(?,?)"; + String query = "UPSERT INTO " + tableName + " VALUES(?,?)"; PreparedStatement stmt = conn.prepareStatement(query); for (String s1 : c1) { for (String s2 : c2) { @@ -73,15 +77,17 @@ public class SkipScanQueryIT extends BaseHBaseManagedTimeIT { } } conn.commit(); + return tableName; } - private void initVarCharParallelListInTable(Connection conn, List<String> c1, List<String> c2) throws SQLException { - String ddl = "CREATE TABLE IF NOT EXISTS inVarTest (" + + private String initVarCharParallelListInTable(Connection conn, List<String> c1, List<String> c2) throws SQLException { + String tableName = generateRandomString(); + String ddl = "CREATE TABLE IF NOT EXISTS " + tableName + " (" + " s1 VARCHAR, s2 VARCHAR CONSTRAINT pk PRIMARY KEY (s1,s2))"; conn.createStatement().executeUpdate(ddl); // Test upsert correct values - String query = "UPSERT INTO inVarTest VALUES(?,?)"; + String query = "UPSERT INTO " + tableName + " VALUES(?,?)"; PreparedStatement stmt = conn.prepareStatement(query); for (int i = 0; i < c1.size(); i++) { stmt.setString(1, c1.get(i)); @@ -89,13 +95,15 @@ public class SkipScanQueryIT extends BaseHBaseManagedTimeIT { stmt.execute(); } conn.commit(); + return tableName; } - private static final String UPSERT_SELECT_AFTER_UPSERT_STATEMENTS = - "upsert into table1(c1, c2, c3, c4, v1, v2) values('1001', '91', 's1', '2013-09-26', 28397, 23541);\n" + - "upsert into table1(c1, c2, c3, c4, v1, v2) values('1001', '91', 's2', '2013-09-23', 3369, null);\n"; - private void initSelectAfterUpsertTable(Connection conn) throws Exception { - String ddl = "create table if not exists table1(" + private static String UPSERT_SELECT_AFTER_UPSERT_STATEMENTS = + "upsert into %s(c1, c2, c3, c4, v1, v2) values('1001', '91', 's1', '2013-09-26', 28397, 23541);\n" + + "upsert into %s(c1, c2, c3, c4, v1, v2) values('1001', '91', 's2', '2013-09-23', 3369, null);\n"; + private String initSelectAfterUpsertTable(Connection conn) throws Exception { + String tableName = generateRandomString(); + String ddl = "create table if not exists " + tableName + " (" + "c1 VARCHAR NOT NULL," + "c2 VARCHAR NOT NULL," + "c3 VARCHAR NOT NULL," + "c4 VARCHAR NOT NULL," + "v1 integer," + "v2 integer " @@ -103,18 +111,20 @@ public class SkipScanQueryIT extends BaseHBaseManagedTimeIT { conn.createStatement().execute(ddl); // Test upsert correct values - StringReader reader = new StringReader(UPSERT_SELECT_AFTER_UPSERT_STATEMENTS); + StringReader reader = new StringReader(String.format(UPSERT_SELECT_AFTER_UPSERT_STATEMENTS, tableName, tableName)); PhoenixRuntime.executeStatements(conn, reader, Collections.emptyList()); reader.close(); conn.commit(); + return tableName; } @Test public void testSkipScanFilterQuery() throws Exception { - String createTableDDL = "CREATE TABLE test" + "(col1 VARCHAR," + "col2 VARCHAR," + "col3 VARCHAR," + String tableName = generateRandomString(); + String createTableDDL = "CREATE TABLE " + tableName + "(col1 VARCHAR," + "col2 VARCHAR," + "col3 VARCHAR," + "col4 VARCHAR," + "CONSTRAINT pk " + "PRIMARY KEY (col1,col2,col3,col4))"; - String upsertQuery = "upsert into test values(?,?,?,?)"; - String query = "SELECT col1, col2, col3, col4 FROM test WHERE col1 IN ('a','e','f') AND col2 = 'b' AND col4 = '1' "; + String upsertQuery = "upsert into " + tableName + " values(?,?,?,?)"; + String query = "SELECT col1, col2, col3, col4 FROM " + tableName + " WHERE col1 IN ('a','e','f') AND col2 = 'b' AND col4 = '1' "; String[] col1Values = { "a", "e.f", "f" }; Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES); createTestTable(getUrl(), createTableDDL); @@ -143,11 +153,11 @@ public class SkipScanQueryIT extends BaseHBaseManagedTimeIT { @Test public void testSelectAfterUpsertInQuery() throws Exception { Connection conn = DriverManager.getConnection(getUrl()); - initSelectAfterUpsertTable(conn); + String tableName = initSelectAfterUpsertTable(conn); try { String query; - query = "SELECT case when sum(v2)*1.0/sum(v1) is null then 0 else sum(v2)*1.0/sum(v1) END AS val FROM table1 " + - "WHERE c1='1001' AND c2 = '91' " + + query = "SELECT case when sum(v2)*1.0/sum(v1) is null then 0 else sum(v2)*1.0/sum(v1) END AS val FROM " + tableName + + " WHERE c1='1001' AND c2 = '91' " + "AND c3 IN ('s1','s2') AND c4='2013-09-24'"; ResultSet rs = conn.createStatement().executeQuery(query); assertTrue(rs.next()); @@ -160,10 +170,10 @@ public class SkipScanQueryIT extends BaseHBaseManagedTimeIT { public void testInQuery() throws Exception { Connection conn = DriverManager.getConnection(getUrl()); conn.setAutoCommit(false); - initIntInTable(conn,Arrays.asList(2,7,10)); + String tableName = initIntInTable(conn,Arrays.asList(2,7,10)); try { String query; - query = "SELECT i FROM inTest WHERE i IN (1,2,4,5,7,8,10)"; + query = "SELECT i FROM " + tableName + " WHERE i IN (1,2,4,5,7,8,10)"; ResultSet rs = conn.createStatement().executeQuery(query); assertTrue(rs.next()); assertEquals(2, rs.getInt(1)); @@ -181,10 +191,10 @@ public class SkipScanQueryIT extends BaseHBaseManagedTimeIT { public void testVarCharParallelListInQuery() throws Exception { Connection conn = DriverManager.getConnection(getUrl()); conn.setAutoCommit(false); - initVarCharParallelListInTable(conn,Arrays.asList("d","da","db"),Arrays.asList("m","mc","tt")); + String tableName = initVarCharParallelListInTable(conn,Arrays.asList("d","da","db"),Arrays.asList("m","mc","tt")); try { String query; - query = "SELECT s1,s2 FROM inVarTest WHERE s1 IN ('a','b','da','db') AND s2 IN ('c','ma','m','mc','ttt','z')"; + query = "SELECT s1,s2 FROM " + tableName + " WHERE s1 IN ('a','b','da','db') AND s2 IN ('c','ma','m','mc','ttt','z')"; ResultSet rs = conn.createStatement().executeQuery(query); assertTrue(rs.next()); assertEquals("da", rs.getString(1)); @@ -199,10 +209,10 @@ public class SkipScanQueryIT extends BaseHBaseManagedTimeIT { public void testVarCharXInQuery() throws Exception { Connection conn = DriverManager.getConnection(getUrl()); conn.setAutoCommit(false); - initVarCharCrossProductInTable(conn,Arrays.asList("d","da","db"),Arrays.asList("m","mc","tt")); + String tableName = initVarCharCrossProductInTable(conn,Arrays.asList("d","da","db"),Arrays.asList("m","mc","tt")); try { String query; - query = "SELECT s1,s2 FROM inVarTest WHERE s1 IN ('a','b','da','db') AND s2 IN ('c','ma','m','mc','ttt','z')"; + query = "SELECT s1,s2 FROM " + tableName + " WHERE s1 IN ('a','b','da','db') AND s2 IN ('c','ma','m','mc','ttt','z')"; ResultSet rs = conn.createStatement().executeQuery(query); assertTrue(rs.next()); assertEquals("da", rs.getString(1)); @@ -226,11 +236,11 @@ public class SkipScanQueryIT extends BaseHBaseManagedTimeIT { public void testVarCharXIntInQuery() throws Exception { Connection conn = DriverManager.getConnection(getUrl()); conn.setAutoCommit(false); - initVarCharCrossProductInTable(conn,Arrays.asList("d","da","db"),Arrays.asList("m","mc","tt")); + String tableName = initVarCharCrossProductInTable(conn,Arrays.asList("d","da","db"),Arrays.asList("m","mc","tt")); try { String query; - query = "SELECT s1,s2 FROM inVarTest " + - "WHERE s1 IN ('a','b','da','db') AND s2 IN ('c','ma','m','mc','ttt','z') " + + query = "SELECT s1,s2 FROM " + tableName + + " WHERE s1 IN ('a','b','da','db') AND s2 IN ('c','ma','m','mc','ttt','z') " + "AND s1 > 'd' AND s1 < 'db' AND s2 > 'm'"; ResultSet rs = conn.createStatement().executeQuery(query); assertTrue(rs.next()); @@ -244,17 +254,18 @@ public class SkipScanQueryIT extends BaseHBaseManagedTimeIT { @Test public void testPreSplitCompositeFixedKey() throws Exception { + String tableName = generateRandomString(); Connection conn = DriverManager.getConnection(getUrl()); try { - conn.createStatement().execute("create table test(key_1 char(3) not null, key_2 char(4) not null, v varchar(8) CONSTRAINT pk PRIMARY KEY (key_1,key_2)) split on('000','100','200')"); + conn.createStatement().execute("create table " + tableName + "(key_1 char(3) not null, key_2 char(4) not null, v varchar(8) CONSTRAINT pk PRIMARY KEY (key_1,key_2)) split on('000','100','200')"); conn.setAutoCommit(true); - conn.createStatement().execute("upsert into test values('000','aaaa','value_1')"); - conn.createStatement().execute("upsert into test values('000','aabb','value_2')"); - conn.createStatement().execute("upsert into test values('100','aacc','value_3')"); - conn.createStatement().execute("upsert into test values('100','aadd','value_4')"); - conn.createStatement().execute("upsert into test values('200','aaee','value_5')"); - conn.createStatement().execute("upsert into test values('201','aaff','value_6')"); - ResultSet rs = conn.createStatement().executeQuery("select * from test where key_1>='000' and key_1<'200' and key_2>='aabb' and key_2<'aadd'"); + conn.createStatement().execute("upsert into " + tableName + " values('000','aaaa','value_1')"); + conn.createStatement().execute("upsert into " + tableName + " values('000','aabb','value_2')"); + conn.createStatement().execute("upsert into " + tableName + " values('100','aacc','value_3')"); + conn.createStatement().execute("upsert into " + tableName + " values('100','aadd','value_4')"); + conn.createStatement().execute("upsert into " + tableName + " values('200','aaee','value_5')"); + conn.createStatement().execute("upsert into " + tableName + " values('201','aaff','value_6')"); + ResultSet rs = conn.createStatement().executeQuery("select * from " + tableName + " where key_1>='000' and key_1<'200' and key_2>='aabb' and key_2<'aadd'"); assertTrue(rs.next()); assertEquals("000", rs.getString(1)); assertEquals("aabb", rs.getString(2)); @@ -273,16 +284,17 @@ public class SkipScanQueryIT extends BaseHBaseManagedTimeIT { @Test public void testInWithDescKey() throws Exception { Connection conn = DriverManager.getConnection(getUrl()); + String tableName = generateRandomString(); try { - conn.createStatement().execute("create table test(key_1 char(3) not null, key_2 char(4) not null, v varchar(8) CONSTRAINT pk PRIMARY KEY (key_1,key_2 desc))"); + conn.createStatement().execute("create table " + tableName + "(key_1 char(3) not null, key_2 char(4) not null, v varchar(8) CONSTRAINT pk PRIMARY KEY (key_1,key_2 desc))"); conn.setAutoCommit(true); - conn.createStatement().execute("upsert into test values('000','aaaa','value_1')"); - conn.createStatement().execute("upsert into test values('000','aabb','value_2')"); - conn.createStatement().execute("upsert into test values('100','aacc','value_3')"); - conn.createStatement().execute("upsert into test values('100','aadd','value_4')"); - conn.createStatement().execute("upsert into test values('200','aaee','value_5')"); - conn.createStatement().execute("upsert into test values('201','aaff','value_6')"); - ResultSet rs = conn.createStatement().executeQuery("select * from test where key_1>='000' and key_1<'200' and key_2>='aabb' and key_2<'aadd'"); + conn.createStatement().execute("upsert into " + tableName + " values('000','aaaa','value_1')"); + conn.createStatement().execute("upsert into " + tableName + " values('000','aabb','value_2')"); + conn.createStatement().execute("upsert into " + tableName + " values('100','aacc','value_3')"); + conn.createStatement().execute("upsert into " + tableName + " values('100','aadd','value_4')"); + conn.createStatement().execute("upsert into " + tableName + " values('200','aaee','value_5')"); + conn.createStatement().execute("upsert into " + tableName + " values('201','aaff','value_6')"); + ResultSet rs = conn.createStatement().executeQuery("select * from " + tableName + " where key_1>='000' and key_1<'200' and key_2>='aabb' and key_2<'aadd'"); assertTrue(rs.next()); assertEquals("000", rs.getString(1)); assertEquals("aabb", rs.getString(2)); @@ -293,7 +305,7 @@ public class SkipScanQueryIT extends BaseHBaseManagedTimeIT { assertEquals("value_3", rs.getString(3)); assertFalse(rs.next()); - rs = conn.createStatement().executeQuery("select * from test where (key_1,key_2) in (('100','aacc'),('100','aadd'))"); + rs = conn.createStatement().executeQuery("select * from " + tableName + " where (key_1,key_2) in (('100','aacc'),('100','aadd'))"); assertTrue(rs.next()); assertEquals("100", rs.getString(1)); assertEquals("aadd", rs.getString(2)); @@ -312,8 +324,8 @@ public class SkipScanQueryIT extends BaseHBaseManagedTimeIT { @Test public void testSkipScanIntersectionAtEnd() throws Exception { Connection conn = DriverManager.getConnection(getUrl()); - - PreparedStatement stmt = conn.prepareStatement("create table splits_test " + String tableName = generateRandomString(); + PreparedStatement stmt = conn.prepareStatement("create table " + tableName + "(pk1 UNSIGNED_TINYINT NOT NULL, pk2 UNSIGNED_TINYINT NOT NULL, pk3 UNSIGNED_TINYINT NOT NULL, kv VARCHAR " + "CONSTRAINT pk PRIMARY KEY (pk1, pk2, pk3)) SPLIT ON (?, ?, ?)"); stmt.setBytes(1, new byte[] {1, 1}); @@ -321,13 +333,13 @@ public class SkipScanQueryIT extends BaseHBaseManagedTimeIT { stmt.setBytes(3, new byte[] {3, 1}); stmt.execute(); - conn.createStatement().execute("upsert into splits_test values (0, 1, 1, 'a')"); - conn.createStatement().execute("upsert into splits_test values (1, 1, 1, 'a')"); - conn.createStatement().execute("upsert into splits_test values (2, 1, 1, 'a')"); - conn.createStatement().execute("upsert into splits_test values (3, 1, 1, 'a')"); + conn.createStatement().execute("upsert into " + tableName + " values (0, 1, 1, 'a')"); + conn.createStatement().execute("upsert into " + tableName + " values (1, 1, 1, 'a')"); + conn.createStatement().execute("upsert into " + tableName + " values (2, 1, 1, 'a')"); + conn.createStatement().execute("upsert into " + tableName + " values (3, 1, 1, 'a')"); conn.commit(); - ResultSet rs = conn.createStatement().executeQuery("select count(kv) from splits_test where pk1 in (0, 1, 2, 3) AND pk2 = 1"); + ResultSet rs = conn.createStatement().executeQuery("select count(kv) from " + tableName + " where pk1 in (0, 1, 2, 3) AND pk2 = 1"); assertTrue(rs.next()); assertEquals(4, rs.getInt(1)); assertFalse(rs.next()); @@ -338,10 +350,12 @@ public class SkipScanQueryIT extends BaseHBaseManagedTimeIT { Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES); Connection conn = DriverManager.getConnection(getUrl(), props); conn.setAutoCommit(false); + String tableName = generateRandomString(); + String fullTableName = SchemaUtil.getTableName(TestUtil.DEFAULT_SCHEMA_NAME, tableName); try { - createMultiCFTestTable(TestUtil.DEFAULT_DATA_TABLE_FULL_NAME, null); - populateMultiCFTestTable(TestUtil.DEFAULT_DATA_TABLE_FULL_NAME); - String upsert = "UPSERT INTO " + TestUtil.DEFAULT_DATA_TABLE_FULL_NAME + createMultiCFTestTable(fullTableName , null); + populateMultiCFTestTable(fullTableName); + String upsert = "UPSERT INTO " + fullTableName + " VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"; PreparedStatement stmt = conn.prepareStatement(upsert); stmt.setString(1, "varchar4"); @@ -398,7 +412,7 @@ public class SkipScanQueryIT extends BaseHBaseManagedTimeIT { stmt.setDate(16, null); stmt.executeUpdate(); conn.commit(); - String query = "SELECT char_col1, int_col1, long_col2 from " + TestUtil.DEFAULT_DATA_TABLE_FULL_NAME + " where varchar_pk in ('varchar3','varchar6')"; + String query = "SELECT char_col1, int_col1, long_col2 from " + fullTableName + " where varchar_pk in ('varchar3','varchar6')"; ResultSet rs = conn.createStatement().executeQuery(query); assertTrue(rs.next()); assertEquals("chara", rs.getString(1)); @@ -418,13 +432,14 @@ public class SkipScanQueryIT extends BaseHBaseManagedTimeIT { @Test public void testOrPKWithAndNonPK() throws Exception { Connection conn = DriverManager.getConnection(getUrl()); + String tableName = generateRandomString(); try { - conn.createStatement().execute("create table bugTable(ID varchar primary key,company varchar)"); + conn.createStatement().execute("create table " + tableName + "(ID varchar primary key,company varchar)"); conn.setAutoCommit(true); - conn.createStatement().execute("upsert into bugTable values('i1','c1')"); - conn.createStatement().execute("upsert into bugTable values('i2','c2')"); - conn.createStatement().execute("upsert into bugTable values('i3','c3')"); - ResultSet rs = conn.createStatement().executeQuery("select * from bugTable where ID = 'i1' or (ID = 'i2' and company = 'c3')"); + conn.createStatement().execute("upsert into " + tableName + " values('i1','c1')"); + conn.createStatement().execute("upsert into " + tableName + " values('i2','c2')"); + conn.createStatement().execute("upsert into " + tableName + " values('i3','c3')"); + ResultSet rs = conn.createStatement().executeQuery("select * from " + tableName + " where ID = 'i1' or (ID = 'i2' and company = 'c3')"); assertTrue(rs.next()); assertEquals("i1", rs.getString(1)); assertEquals("c1", rs.getString(2)); @@ -438,9 +453,10 @@ public class SkipScanQueryIT extends BaseHBaseManagedTimeIT { @Test public void testNullInfiniteLoop() throws Exception { try (Connection conn = DriverManager.getConnection(getUrl())) { + String tableName = generateRandomString(); conn.setAutoCommit(true); conn.createStatement().execute( - "create table NULL_TEST"+ + "create table " + tableName + "("+ "CREATETIME VARCHAR,"+ "ACCOUNTID VARCHAR,"+ @@ -449,9 +465,9 @@ public class SkipScanQueryIT extends BaseHBaseManagedTimeIT { "CONSTRAINT pk PRIMARY KEY(CREATETIME,ACCOUNTID,SERVICENAME)"+ ")"); - conn.createStatement().execute("upsert into NULL_TEST(CREATETIME,SERVICENAME,SPAN.APPID) values('20160116141006','servlet','android')"); - conn.createStatement().execute("upsert into NULL_TEST(CREATETIME,ACCOUNTID,SERVICENAME,SPAN.APPID) values('20160116151006','2404787','jdbc','ios')"); - ResultSet rs = conn.createStatement().executeQuery("select * from NULL_TEST where CREATETIME>='20160116121006' and CREATETIME<='20160116181006' and ACCOUNTID='2404787'"); + conn.createStatement().execute("upsert into " + tableName + "(CREATETIME,SERVICENAME,SPAN.APPID) values('20160116141006','servlet','android')"); + conn.createStatement().execute("upsert into " + tableName + "(CREATETIME,ACCOUNTID,SERVICENAME,SPAN.APPID) values('20160116151006','2404787','jdbc','ios')"); + ResultSet rs = conn.createStatement().executeQuery("select * from " + tableName + " where CREATETIME>='20160116121006' and CREATETIME<='20160116181006' and ACCOUNTID='2404787'"); assertTrue(rs.next()); assertFalse(rs.next()); }
http://git-wip-us.apache.org/repos/asf/phoenix/blob/d77d2492/phoenix-core/src/it/java/org/apache/phoenix/end2end/SortMergeJoinMoreIT.java ---------------------------------------------------------------------- diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/SortMergeJoinMoreIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/SortMergeJoinMoreIT.java index 8ede6ae..f1be09f 100644 --- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/SortMergeJoinMoreIT.java +++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/SortMergeJoinMoreIT.java @@ -39,10 +39,10 @@ import org.junit.Test; import com.google.common.collect.Maps; -public class SortMergeJoinMoreIT extends BaseHBaseManagedTimeIT { +public class SortMergeJoinMoreIT extends BaseHBaseManagedTimeTableReuseIT { @BeforeClass - @Shadower(classBeingShadowed = BaseHBaseManagedTimeIT.class) + @Shadower(classBeingShadowed = BaseHBaseManagedTimeTableReuseIT.class) public static void doSetup() throws Exception { Map<String,String> props = Maps.newHashMapWithExpectedSize(3); // Forces server cache to be used @@ -53,8 +53,8 @@ public class SortMergeJoinMoreIT extends BaseHBaseManagedTimeIT { @Test public void testJoinOverSaltedTables() throws Exception { - String tempTableNoSalting = "TEMP_TABLE_NO_SALTING"; - String tempTableWithSalting = "TEMP_TABLE_WITH_SALTING"; + String tempTableNoSalting = "TEMP_TABLE_NO_SALTING" + generateRandomString(); + String tempTableWithSalting = "TEMP_TABLE_WITH_SALTING" + generateRandomString(); Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES); Connection conn = DriverManager.getConnection(getUrl(), props); try { @@ -191,8 +191,8 @@ public class SortMergeJoinMoreIT extends BaseHBaseManagedTimeIT { @Test public void testJoinOnDynamicColumns() throws Exception { - String tableA = "tableA"; - String tableB = "tableB"; + String tableA = generateRandomString(); + String tableB = generateRandomString(); Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES); Connection conn = null; PreparedStatement stmt = null; @@ -210,7 +210,7 @@ public class SortMergeJoinMoreIT extends BaseHBaseManagedTimeIT { stmt.execute(); stmt.close(); - String upsertA = "UPSERT INTO TABLEA (pkA, colA1, colA2) VALUES(?, ?, ?)"; + String upsertA = "UPSERT INTO " + tableA + " (pkA, colA1, colA2) VALUES(?, ?, ?)"; stmt = conn.prepareStatement(upsertA); int i = 0; for (i = 0; i < 5; i++) { @@ -221,20 +221,21 @@ public class SortMergeJoinMoreIT extends BaseHBaseManagedTimeIT { } conn.commit(); stmt.close(); + String seqBName = generateRandomString(); // upsert select dynamic columns in tableB - conn.createStatement().execute("CREATE SEQUENCE SEQB"); - String upsertBSelectA = "UPSERT INTO TABLEB (pkB, pkA INTEGER)" - + "SELECT NEXT VALUE FOR SEQB, pkA FROM TABLEA"; + conn.createStatement().execute("CREATE SEQUENCE " + seqBName); + String upsertBSelectA = "UPSERT INTO " + tableB + " (pkB, pkA INTEGER)" + + "SELECT NEXT VALUE FOR " + seqBName + ", pkA FROM " + tableA ; stmt = conn.prepareStatement(upsertBSelectA); stmt.executeUpdate(); stmt.close(); conn.commit(); - conn.createStatement().execute("DROP SEQUENCE SEQB"); + conn.createStatement().execute("DROP SEQUENCE " + seqBName ); // perform a join between tableB and tableA by joining on the dynamic column that we upserted in // tableB. This join should return all the rows from table A. - String joinSql = "SELECT /*+ USE_SORT_MERGE_JOIN*/ A.pkA, A.COLA1, A.colA2 FROM TABLEB B(pkA INTEGER) JOIN TABLEA A ON a.pkA = b.pkA"; + String joinSql = "SELECT /*+ USE_SORT_MERGE_JOIN*/ A.pkA, A.COLA1, A.colA2 FROM " + tableB + " B(pkA INTEGER) JOIN " + tableA + " A ON a.pkA = b.pkA"; stmt = conn.prepareStatement(joinSql); ResultSet rs = stmt.executeQuery(); i = 0; @@ -263,9 +264,13 @@ public class SortMergeJoinMoreIT extends BaseHBaseManagedTimeIT { Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES); Connection conn = DriverManager.getConnection(getUrl(), props); conn.setAutoCommit(false); + String gTableName = generateRandomString(); + String lTableName = generateRandomString(); + String slTableName = generateRandomString(); + try { - String GRAMMAR_TABLE = "CREATE TABLE IF NOT EXISTS GRAMMAR_TABLE (ID INTEGER PRIMARY KEY, " + + String GRAMMAR_TABLE = "CREATE TABLE IF NOT EXISTS " + gTableName + " (ID INTEGER PRIMARY KEY, " + "unsig_id UNSIGNED_INT, big_id BIGINT, unsig_long_id UNSIGNED_LONG, tiny_id TINYINT," + "unsig_tiny_id UNSIGNED_TINYINT, small_id SMALLINT, unsig_small_id UNSIGNED_SMALLINT," + "float_id FLOAT, unsig_float_id UNSIGNED_FLOAT, double_id DOUBLE, unsig_double_id UNSIGNED_DOUBLE," + @@ -273,7 +278,7 @@ public class SortMergeJoinMoreIT extends BaseHBaseManagedTimeIT { "unsig_time_id TIME, unsig_date_id DATE, unsig_timestamp_id TIMESTAMP, varchar_id VARCHAR (30)," + "char_id CHAR (30), binary_id BINARY (100), varbinary_id VARBINARY (100))"; - String LARGE_TABLE = "CREATE TABLE IF NOT EXISTS LARGE_TABLE (ID INTEGER PRIMARY KEY, " + + String LARGE_TABLE = "CREATE TABLE IF NOT EXISTS " + lTableName + " (ID INTEGER PRIMARY KEY, " + "unsig_id UNSIGNED_INT, big_id BIGINT, unsig_long_id UNSIGNED_LONG, tiny_id TINYINT," + "unsig_tiny_id UNSIGNED_TINYINT, small_id SMALLINT, unsig_small_id UNSIGNED_SMALLINT," + "float_id FLOAT, unsig_float_id UNSIGNED_FLOAT, double_id DOUBLE, unsig_double_id UNSIGNED_DOUBLE," + @@ -281,7 +286,7 @@ public class SortMergeJoinMoreIT extends BaseHBaseManagedTimeIT { "unsig_time_id TIME, unsig_date_id DATE, unsig_timestamp_id TIMESTAMP, varchar_id VARCHAR (30)," + "char_id CHAR (30), binary_id BINARY (100), varbinary_id VARBINARY (100))"; - String SECONDARY_LARGE_TABLE = "CREATE TABLE IF NOT EXISTS SECONDARY_LARGE_TABLE (SEC_ID INTEGER PRIMARY KEY," + + String SECONDARY_LARGE_TABLE = "CREATE TABLE IF NOT EXISTS " + slTableName + " (SEC_ID INTEGER PRIMARY KEY," + "sec_unsig_id UNSIGNED_INT, sec_big_id BIGINT, sec_usnig_long_id UNSIGNED_LONG, sec_tiny_id TINYINT," + "sec_unsig_tiny_id UNSIGNED_TINYINT, sec_small_id SMALLINT, sec_unsig_small_id UNSIGNED_SMALLINT," + "sec_float_id FLOAT, sec_unsig_float_id UNSIGNED_FLOAT, sec_double_id DOUBLE, sec_unsig_double_id UNSIGNED_DOUBLE," + @@ -292,22 +297,22 @@ public class SortMergeJoinMoreIT extends BaseHBaseManagedTimeIT { createTestTable(getUrl(), LARGE_TABLE); createTestTable(getUrl(), SECONDARY_LARGE_TABLE); - String ddl = "SELECT /*+USE_SORT_MERGE_JOIN*/ * FROM (SELECT ID, BIG_ID, DATE_ID FROM LARGE_TABLE AS A WHERE (A.ID % 5) = 0) AS A " + - "INNER JOIN (SELECT SEC_ID, SEC_TINY_ID, SEC_UNSIG_FLOAT_ID FROM SECONDARY_LARGE_TABLE AS B WHERE (B.SEC_ID % 5) = 0) AS B " + - "ON A.ID=B.SEC_ID WHERE A.DATE_ID > ALL (SELECT SEC_DATE_ID FROM SECONDARY_LARGE_TABLE LIMIT 100) " + - "AND B.SEC_UNSIG_FLOAT_ID = ANY (SELECT sec_unsig_float_id FROM SECONDARY_LARGE_TABLE " + - "WHERE SEC_ID > ALL (SELECT MIN (ID) FROM GRAMMAR_TABLE WHERE UNSIG_ID IS NULL) AND " + - "SEC_UNSIG_ID < ANY (SELECT DISTINCT(UNSIG_ID) FROM LARGE_TABLE WHERE UNSIG_ID<2500) LIMIT 1000) " + + String ddl = "SELECT /*+USE_SORT_MERGE_JOIN*/ * FROM (SELECT ID, BIG_ID, DATE_ID FROM " + lTableName + " AS A WHERE (A.ID % 5) = 0) AS A " + + "INNER JOIN (SELECT SEC_ID, SEC_TINY_ID, SEC_UNSIG_FLOAT_ID FROM " + slTableName + " AS B WHERE (B.SEC_ID % 5) = 0) AS B " + + "ON A.ID=B.SEC_ID WHERE A.DATE_ID > ALL (SELECT SEC_DATE_ID FROM " + slTableName + " LIMIT 100) " + + "AND B.SEC_UNSIG_FLOAT_ID = ANY (SELECT sec_unsig_float_id FROM " + slTableName + + " WHERE SEC_ID > ALL (SELECT MIN (ID) FROM " + gTableName + " WHERE UNSIG_ID IS NULL) AND " + + "SEC_UNSIG_ID < ANY (SELECT DISTINCT(UNSIG_ID) FROM " + lTableName + " WHERE UNSIG_ID<2500) LIMIT 1000) " + "AND A.ID < 10000"; ResultSet rs = conn.createStatement().executeQuery(ddl); assertFalse(rs.next()); } finally { Statement statement = conn.createStatement(); - String query = "drop table GRAMMAR_TABLE"; + String query = "drop table " + gTableName; statement.executeUpdate(query); - query = "drop table LARGE_TABLE"; + query = "drop table " + lTableName ; statement.executeUpdate(query); - query = "drop table SECONDARY_LARGE_TABLE"; + query = "drop table " + slTableName ; statement.executeUpdate(query); conn.close(); } @@ -318,9 +323,10 @@ public class SortMergeJoinMoreIT extends BaseHBaseManagedTimeIT { Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES); Connection conn = DriverManager.getConnection(getUrl(), props); conn.setAutoCommit(true); + String eventCountTableName = generateRandomString(); try { conn.createStatement().execute( - "CREATE TABLE IF NOT EXISTS EVENT_COUNT (\n" + + "CREATE TABLE IF NOT EXISTS " + eventCountTableName + " (\n" + " BUCKET VARCHAR,\n" + " TIMESTAMP_DATE TIMESTAMP,\n" + " TIMESTAMP UNSIGNED_LONG NOT NULL,\n" + @@ -332,7 +338,7 @@ public class SortMergeJoinMoreIT extends BaseHBaseManagedTimeIT { " E FLOAT\n" + " CONSTRAINT pk PRIMARY KEY (BUCKET, TIMESTAMP DESC, LOCATION, A, B, C)\n" + ") SALT_BUCKETS=2, COMPRESSION='GZ', TTL=31622400"); - PreparedStatement stmt = conn.prepareStatement("UPSERT INTO EVENT_COUNT(BUCKET, TIMESTAMP, LOCATION, A, B, C) VALUES(?,?,?,?,?,?)"); + PreparedStatement stmt = conn.prepareStatement("UPSERT INTO " + eventCountTableName + "(BUCKET, TIMESTAMP, LOCATION, A, B, C) VALUES(?,?,?,?,?,?)"); stmt.setString(1, "5SEC"); stmt.setString(3, "Tr/Bal"); stmt.setString(4, "A1"); @@ -378,7 +384,7 @@ public class SortMergeJoinMoreIT extends BaseHBaseManagedTimeIT { // We'll test the original version of the user table as well as a slightly modified // version, in order to verify that sort-merge join works for columns both having // DESC sort order as well as one having ASC order and the other having DESC order. - String[] t = new String[] {"EVENT_LATENCY", "EVENT_LATENCY_2"}; + String[] t = new String[] {"EVENT_LATENCY" + generateRandomString(), "EVENT_LATENCY_2" + generateRandomString()}; for (int i = 0; i < 2; i++) { conn.createStatement().execute( "CREATE TABLE IF NOT EXISTS " + t[i] + " (\n" + @@ -425,7 +431,7 @@ public class SortMergeJoinMoreIT extends BaseHBaseManagedTimeIT { String q = "SELECT C.BUCKET, C.TIMESTAMP FROM (\n" + " SELECT E.BUCKET as BUCKET, L.BUCKET as LBUCKET, E.TIMESTAMP as TIMESTAMP, L.TIMESTAMP as LTIMESTAMP FROM\n" + - " (SELECT BUCKET, TIMESTAMP FROM EVENT_COUNT\n" + + " (SELECT BUCKET, TIMESTAMP FROM " + eventCountTableName + "\n" + " WHERE BUCKET = '5SEC' AND LOCATION = 'Tr/Bal'\n" + " AND TIMESTAMP <= 1462993520000000000 AND TIMESTAMP > 1462993420000000000\n" + " GROUP BY BUCKET, TIMESTAMP, LOCATION\n" + @@ -442,7 +448,7 @@ public class SortMergeJoinMoreIT extends BaseHBaseManagedTimeIT { String p = i == 0 ? "SORT-MERGE-JOIN (INNER) TABLES\n" + - " CLIENT PARALLEL 2-WAY SKIP SCAN ON 2 RANGES OVER EVENT_COUNT [0,'5SEC',~1462993520000000000,'Tr/Bal'] - [1,'5SEC',~1462993420000000000,'Tr/Bal']\n" + + " CLIENT PARALLEL 2-WAY SKIP SCAN ON 2 RANGES OVER " + eventCountTableName + " [0,'5SEC',~1462993520000000000,'Tr/Bal'] - [1,'5SEC',~1462993420000000000,'Tr/Bal']\n" + " SERVER FILTER BY FIRST KEY ONLY\n" + " SERVER DISTINCT PREFIX FILTER OVER [BUCKET, TIMESTAMP, LOCATION]\n" + " SERVER AGGREGATE INTO ORDERED DISTINCT ROWS BY [BUCKET, TIMESTAMP, LOCATION]\n" + @@ -459,7 +465,7 @@ public class SortMergeJoinMoreIT extends BaseHBaseManagedTimeIT { "CLIENT AGGREGATE INTO DISTINCT ROWS BY [E.BUCKET, E.TIMESTAMP]" : "SORT-MERGE-JOIN (INNER) TABLES\n" + - " CLIENT PARALLEL 2-WAY SKIP SCAN ON 2 RANGES OVER EVENT_COUNT [0,'5SEC',~1462993520000000000,'Tr/Bal'] - [1,'5SEC',~1462993420000000000,'Tr/Bal']\n" + + " CLIENT PARALLEL 2-WAY SKIP SCAN ON 2 RANGES OVER " + eventCountTableName + " [0,'5SEC',~1462993520000000000,'Tr/Bal'] - [1,'5SEC',~1462993420000000000,'Tr/Bal']\n" + " SERVER FILTER BY FIRST KEY ONLY\n" + " SERVER DISTINCT PREFIX FILTER OVER [BUCKET, TIMESTAMP, LOCATION]\n" + " SERVER AGGREGATE INTO ORDERED DISTINCT ROWS BY [BUCKET, TIMESTAMP, LOCATION]\n" + http://git-wip-us.apache.org/repos/asf/phoenix/blob/d77d2492/phoenix-core/src/it/java/org/apache/phoenix/end2end/SpillableGroupByIT.java ---------------------------------------------------------------------- diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/SpillableGroupByIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/SpillableGroupByIT.java index 70d5f1d..51dcd21 100644 --- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/SpillableGroupByIT.java +++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/SpillableGroupByIT.java @@ -74,7 +74,7 @@ public class SpillableGroupByIT extends BaseOwnClusterHBaseManagedTimeIT { private long createTable() throws Exception { long ts = nextTimestamp(); - ensureTableCreated(getUrl(), GROUPBYTEST_NAME, null, ts - 2); + ensureTableCreated(getUrl(), GROUPBYTEST_NAME, GROUPBYTEST_NAME, null, ts - 2); return ts; } http://git-wip-us.apache.org/repos/asf/phoenix/blob/d77d2492/phoenix-core/src/it/java/org/apache/phoenix/end2end/SpooledTmpFileDeleteIT.java ---------------------------------------------------------------------- diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/SpooledTmpFileDeleteIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/SpooledTmpFileDeleteIT.java index e23378e..728aa6f 100644 --- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/SpooledTmpFileDeleteIT.java +++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/SpooledTmpFileDeleteIT.java @@ -38,11 +38,12 @@ import com.google.common.io.Files; -public class SpooledTmpFileDeleteIT extends BaseHBaseManagedTimeIT { +public class SpooledTmpFileDeleteIT extends BaseHBaseManagedTimeTableReuseIT { private Connection conn = null; private Properties props = null; private File spoolDir; + private String tableName; @BeforeClass @Shadower(classBeingShadowed = BaseClientManagedTimeIT.class) @@ -56,16 +57,17 @@ public class SpooledTmpFileDeleteIT extends BaseHBaseManagedTimeIT { @Before public void setup() throws SQLException { + tableName = generateRandomString(); props = new Properties(); spoolDir = Files.createTempDir(); props.put(QueryServices.SPOOL_DIRECTORY, spoolDir.getPath()); props.setProperty(QueryServices.SPOOL_THRESHOLD_BYTES_ATTRIB, Integer.toString(1)); conn = DriverManager.getConnection(getUrl(), props); Statement stmt = conn.createStatement(); - stmt.execute("CREATE TABLE test (ID varchar NOT NULL PRIMARY KEY) SPLIT ON ('EA','EZ')"); - stmt.execute("UPSERT INTO test VALUES ('AA')"); - stmt.execute("UPSERT INTO test VALUES ('EB')"); - stmt.execute("UPSERT INTO test VALUES ('FA')"); + stmt.execute("CREATE TABLE " + tableName + " (ID varchar NOT NULL PRIMARY KEY) SPLIT ON ('EA','EZ')"); + stmt.execute("UPSERT INTO " + tableName + " VALUES ('AA')"); + stmt.execute("UPSERT INTO " + tableName + " VALUES ('EB')"); + stmt.execute("UPSERT INTO " + tableName + " VALUES ('FA')"); stmt.close(); conn.commit(); } @@ -98,7 +100,7 @@ public class SpooledTmpFileDeleteIT extends BaseHBaseManagedTimeIT { file.delete(); } - String query = "select * from TEST"; + String query = "select * from " + tableName + ""; Statement statement = conn.createStatement(); ResultSet rs = statement.executeQuery(query); assertTrue(rs.next()); @@ -109,7 +111,7 @@ public class SpooledTmpFileDeleteIT extends BaseHBaseManagedTimeIT { fileNames.add(file.getName()); } - String preparedQuery = "select * from test where id = ?"; + String preparedQuery = "select * from " + tableName + " where id = ?"; PreparedStatement pstmt = conn.prepareStatement(preparedQuery); pstmt.setString(1, "EB"); ResultSet prs = pstmt.executeQuery(preparedQuery); @@ -121,14 +123,14 @@ public class SpooledTmpFileDeleteIT extends BaseHBaseManagedTimeIT { } Connection conn2 = DriverManager.getConnection(getUrl(), props); - String query2 = "select * from TEST"; + String query2 = "select * from " + tableName + ""; Statement statement2 = conn2.createStatement(); ResultSet rs2 = statement2.executeQuery(query2); assertTrue(rs2.next()); files = dir.listFiles(fnameFilter); assertTrue(files.length > 0); - String preparedQuery2 = "select * from test where id = ?"; + String preparedQuery2 = "select * from " + tableName + " where id = ?"; PreparedStatement pstmt2 = conn2.prepareStatement(preparedQuery2); pstmt2.setString(1, "EB"); ResultSet prs2 = pstmt2.executeQuery(preparedQuery2); http://git-wip-us.apache.org/repos/asf/phoenix/blob/d77d2492/phoenix-core/src/it/java/org/apache/phoenix/end2end/SqrtFunctionEnd2EndIT.java ---------------------------------------------------------------------- diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/SqrtFunctionEnd2EndIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/SqrtFunctionEnd2EndIT.java index 50fdd4f..877b46d 100644 --- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/SqrtFunctionEnd2EndIT.java +++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/SqrtFunctionEnd2EndIT.java @@ -18,6 +18,7 @@ package org.apache.phoenix.end2end; import static org.apache.phoenix.util.TestUtil.closeStmtAndConn; +import static org.apache.phoenix.util.TestUtil.getTableName; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; @@ -33,21 +34,25 @@ import org.junit.Test; /** * End to end tests for {@link SqrtFunction} */ -public class SqrtFunctionEnd2EndIT extends BaseHBaseManagedTimeIT { +public class SqrtFunctionEnd2EndIT extends BaseHBaseManagedTimeTableReuseIT { private static final String KEY = "key"; private static final double ZERO = 1e-8; - + String testUnsignedTable; + String testSignedTable; + @Before public void initTable() throws Exception { Connection conn = null; PreparedStatement stmt = null; + testUnsignedTable = generateRandomString(); + testSignedTable = generateRandomString(); try { conn = DriverManager.getConnection(getUrl()); String ddl; - ddl = "CREATE TABLE testSigned (k VARCHAR NOT NULL PRIMARY KEY, doub DOUBLE, fl FLOAT, inte INTEGER, lon BIGINT, smalli SMALLINT, tinyi TINYINT)"; + ddl = "CREATE TABLE " + testSignedTable + " (k VARCHAR NOT NULL PRIMARY KEY, doub DOUBLE, fl FLOAT, inte INTEGER, lon BIGINT, smalli SMALLINT, tinyi TINYINT)"; conn.createStatement().execute(ddl); - ddl = "CREATE TABLE testUnsigned (k VARCHAR NOT NULL PRIMARY KEY, doub UNSIGNED_DOUBLE, fl UNSIGNED_FLOAT, inte UNSIGNED_INT, lon UNSIGNED_LONG, smalli UNSIGNED_SMALLINT, tinyi UNSIGNED_TINYINT)"; + ddl = "CREATE TABLE " + testUnsignedTable + " (k VARCHAR NOT NULL PRIMARY KEY, doub UNSIGNED_DOUBLE, fl UNSIGNED_FLOAT, inte UNSIGNED_INT, lon UNSIGNED_LONG, smalli UNSIGNED_SMALLINT, tinyi UNSIGNED_TINYINT)"; conn.createStatement().execute(ddl); conn.commit(); } finally { @@ -56,7 +61,7 @@ public class SqrtFunctionEnd2EndIT extends BaseHBaseManagedTimeIT { } private void updateSignedTable(Connection conn, double data) throws Exception { - PreparedStatement stmt = conn.prepareStatement("UPSERT INTO testSigned VALUES (?, ?, ?, ?, ?, ?, ?)"); + PreparedStatement stmt = conn.prepareStatement("UPSERT INTO " + testSignedTable + " VALUES (?, ?, ?, ?, ?, ?, ?)"); stmt.setString(1, KEY); Double d = Double.valueOf(data); stmt.setDouble(2, d.doubleValue()); @@ -70,7 +75,7 @@ public class SqrtFunctionEnd2EndIT extends BaseHBaseManagedTimeIT { } private void updateUnsignedTable(Connection conn, double data) throws Exception { - PreparedStatement stmt = conn.prepareStatement("UPSERT INTO testUnsigned VALUES (?, ?, ?, ?, ?, ?, ?)"); + PreparedStatement stmt = conn.prepareStatement("UPSERT INTO " + testUnsignedTable + " VALUES (?, ?, ?, ?, ?, ?, ?)"); stmt.setString(1, KEY); Double d = Double.valueOf(data); stmt.setDouble(2, d.doubleValue()); @@ -85,7 +90,7 @@ public class SqrtFunctionEnd2EndIT extends BaseHBaseManagedTimeIT { private void testSignedNumberSpec(Connection conn, double data) throws Exception { updateSignedTable(conn, data); - ResultSet rs = conn.createStatement().executeQuery("SELECT SQRT(doub),SQRT(fl),SQRT(inte),SQRT(lon),SQRT(smalli),SQRT(tinyi) FROM testSigned"); + ResultSet rs = conn.createStatement().executeQuery("SELECT SQRT(doub),SQRT(fl),SQRT(inte),SQRT(lon),SQRT(smalli),SQRT(tinyi) FROM " + testSignedTable ); assertTrue(rs.next()); Double d = Double.valueOf(data); assertTrue(Math.abs(rs.getDouble(1) - Math.sqrt(d.doubleValue())) < ZERO); @@ -95,7 +100,7 @@ public class SqrtFunctionEnd2EndIT extends BaseHBaseManagedTimeIT { assertTrue(Math.abs(rs.getDouble(5) - Math.sqrt(d.shortValue())) < ZERO); assertTrue(Math.abs(rs.getDouble(6) - Math.sqrt(d.byteValue())) < ZERO); assertTrue(!rs.next()); - PreparedStatement stmt = conn.prepareStatement("SELECT k FROM testSigned WHERE SQRT(doub)>0 AND SQRT(fl)>0 AND SQRT(inte)>0 AND SQRT(lon)>0 AND SQRT(smalli)>0 AND SQRT(tinyi)>0"); + PreparedStatement stmt = conn.prepareStatement("SELECT k FROM " + testSignedTable + " WHERE SQRT(doub)>0 AND SQRT(fl)>0 AND SQRT(inte)>0 AND SQRT(lon)>0 AND SQRT(smalli)>0 AND SQRT(tinyi)>0"); rs = stmt.executeQuery(); if (data > 0) { assertTrue(rs.next()); @@ -106,7 +111,7 @@ public class SqrtFunctionEnd2EndIT extends BaseHBaseManagedTimeIT { private void testUnsignedNumberSpec(Connection conn, double data) throws Exception { updateUnsignedTable(conn, data); - ResultSet rs = conn.createStatement().executeQuery("SELECT SQRT(doub),SQRT(fl),SQRT(inte),SQRT(lon),SQRT(smalli),SQRT(tinyi) FROM testUnsigned"); + ResultSet rs = conn.createStatement().executeQuery("SELECT SQRT(doub),SQRT(fl),SQRT(inte),SQRT(lon),SQRT(smalli),SQRT(tinyi) FROM " + testUnsignedTable ); assertTrue(rs.next()); Double d = Double.valueOf(data); assertTrue(Math.abs(rs.getDouble(1) - Math.sqrt(d.doubleValue())) < ZERO); @@ -116,7 +121,7 @@ public class SqrtFunctionEnd2EndIT extends BaseHBaseManagedTimeIT { assertTrue(Math.abs(rs.getDouble(5) - Math.sqrt(d.shortValue())) < ZERO); assertTrue(Math.abs(rs.getDouble(6) - Math.sqrt(d.byteValue())) < ZERO); assertTrue(!rs.next()); - PreparedStatement stmt = conn.prepareStatement("SELECT k FROM testUnsigned WHERE SQRT(doub)>0 AND SQRT(fl)>0 AND SQRT(inte)>0 AND SQRT(lon)>0 AND SQRT(smalli)>0 AND SQRT(tinyi)>0"); + PreparedStatement stmt = conn.prepareStatement("SELECT k FROM " + testUnsignedTable + " WHERE SQRT(doub)>0 AND SQRT(fl)>0 AND SQRT(inte)>0 AND SQRT(lon)>0 AND SQRT(smalli)>0 AND SQRT(tinyi)>0"); rs = stmt.executeQuery(); if (data > 0) { assertTrue(rs.next()); http://git-wip-us.apache.org/repos/asf/phoenix/blob/d77d2492/phoenix-core/src/it/java/org/apache/phoenix/end2end/StddevIT.java ---------------------------------------------------------------------- diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/StddevIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/StddevIT.java index c00b770..280b0aa 100644 --- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/StddevIT.java +++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/StddevIT.java @@ -30,14 +30,14 @@ import java.sql.ResultSet; import org.junit.Test; -public class StddevIT extends BaseHBaseManagedTimeIT { +public class StddevIT extends BaseHBaseManagedTimeTableReuseIT { @Test public void testSTDDEV_POP() throws Exception { String tenantId = getOrganizationId(); - initATableValues(tenantId, getDefaultSplits(tenantId), getUrl()); + String tableName = initATableValues(tenantId, getDefaultSplits(tenantId), getUrl()); - String query = "SELECT STDDEV_POP(A_INTEGER) FROM aTable"; + String query = "SELECT STDDEV_POP(A_INTEGER) FROM " + tableName; Connection conn = DriverManager.getConnection(getUrl()); try { @@ -56,9 +56,9 @@ public class StddevIT extends BaseHBaseManagedTimeIT { @Test public void testSTDDEV_SAMP() throws Exception { String tenantId = getOrganizationId(); - initATableValues(tenantId, getDefaultSplits(tenantId), getUrl()); + String tableName = initATableValues(tenantId, getDefaultSplits(tenantId), getUrl()); - String query = "SELECT STDDEV_SAMP(x_decimal) FROM aTable"; + String query = "SELECT STDDEV_SAMP(x_decimal) FROM " + tableName; Connection conn = DriverManager.getConnection(getUrl()); try { @@ -77,9 +77,9 @@ public class StddevIT extends BaseHBaseManagedTimeIT { @Test public void testSTDDEV_POPOnDecimalColType() throws Exception { String tenantId = getOrganizationId(); - initATableValues(tenantId, getDefaultSplits(tenantId), getUrl()); + String tableName = initATableValues(tenantId, getDefaultSplits(tenantId), getUrl()); - String query = "SELECT STDDEV_POP(x_decimal) FROM aTable"; + String query = "SELECT STDDEV_POP(x_decimal) FROM " + tableName; Connection conn = DriverManager.getConnection(getUrl()); try { @@ -98,9 +98,9 @@ public class StddevIT extends BaseHBaseManagedTimeIT { @Test public void testSTDDEV_SAMPOnDecimalColType() throws Exception { String tenantId = getOrganizationId(); - initATableValues(tenantId, getDefaultSplits(tenantId), getUrl()); + String tableName = initATableValues(tenantId, getDefaultSplits(tenantId), getUrl()); - String query = "SELECT STDDEV_SAMP(x_decimal) FROM aTable"; + String query = "SELECT STDDEV_SAMP(x_decimal) FROM " + tableName; Connection conn = DriverManager.getConnection(getUrl()); try { http://git-wip-us.apache.org/repos/asf/phoenix/blob/d77d2492/phoenix-core/src/it/java/org/apache/phoenix/end2end/StringIT.java ---------------------------------------------------------------------- diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/StringIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/StringIT.java index b315d7d..d5aad53 100644 --- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/StringIT.java +++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/StringIT.java @@ -40,7 +40,7 @@ import com.google.common.collect.Lists; * Tests for the LPAD built-in function. */ -public class StringIT extends BaseHBaseManagedTimeIT { +public class StringIT extends BaseHBaseManagedTimeTableReuseIT { /** * Helper to test LPAD function @@ -51,21 +51,23 @@ public class StringIT extends BaseHBaseManagedTimeIT { * name of column to query * @param length * length of the output string - * @param fillString + * @param fillStringList * fill characters to be used while prepending * @param sortOrder * sort order of the pk column - * @param expectedOutput + * @param expectedOutputList * expected output of LPAD function + * @param tableName + * base name of the table */ private void testLpadHelper(Connection conn, String colName, int length, List<String> fillStringList, - List<String> expectedOutputList, String sortOrder) throws Exception { + List<String> expectedOutputList, String tableName, String sortOrder) throws Exception { assertEquals("fillStringList and expectedOutputList should be of equal size", fillStringList.size(), expectedOutputList.size()); for (int id = 0; id < fillStringList.size(); ++id) { String fillString = fillStringList.get(id); String lPadExpr = fillString != null ? "LPAD(%s,?,?)" : "LPAD(%s,?)"; - String sql = String.format("SELECT " + lPadExpr + " FROM TEST_TABLE_%s WHERE id=?", colName, sortOrder); + String sql = String.format("SELECT " + lPadExpr + " FROM " + tableName + "_%s WHERE id=?", colName, sortOrder); PreparedStatement stmt = conn.prepareStatement(sql); int index = 1; stmt.setInt(index++, length); @@ -93,16 +95,16 @@ public class StringIT extends BaseHBaseManagedTimeIT { * list of fill string to be used while testing * @param colName * name of column to be used as function input - * @param expecetedOutputList + * @param expectedOutputList * list of expected output values * @param expectedOutputList * expected output of lpad function */ private void testLpad(Connection conn, List<String> inputList, int length, List<String> fillStringList, String colName, List<String> expectedOutputList) throws Exception { - TestUtil.initTables(conn, "VARCHAR", new ArrayList<Object>(inputList)); - testLpadHelper(conn, colName, length, fillStringList, expectedOutputList, "ASC"); - testLpadHelper(conn, colName, length, fillStringList, expectedOutputList, "DESC"); + String tableName = TestUtil.initTables(conn, "VARCHAR", new ArrayList<Object>(inputList)); + testLpadHelper(conn, colName, length, fillStringList, expectedOutputList, tableName, "ASC"); + testLpadHelper(conn, colName, length, fillStringList, expectedOutputList, tableName, "DESC"); } private void testLpad(Connection conn, List<String> inputList, int length, List<String> fillStringList, @@ -114,23 +116,23 @@ public class StringIT extends BaseHBaseManagedTimeIT { public void testCharPadding() throws Exception { ResultSet rs; Connection conn = DriverManager.getConnection(getUrl()); - - conn.createStatement().execute("CREATE TABLE t (k CHAR(3) PRIMARY KEY)"); - conn.createStatement().execute("UPSERT INTO t VALUES('a')"); - conn.createStatement().execute("UPSERT INTO t VALUES('ab')"); + String tableName = generateRandomString(); + conn.createStatement().execute("CREATE TABLE " + tableName + " (k CHAR(3) PRIMARY KEY)"); + conn.createStatement().execute("UPSERT INTO " + tableName + " VALUES('a')"); + conn.createStatement().execute("UPSERT INTO " + tableName + " VALUES('ab')"); conn.commit(); - rs = conn.createStatement().executeQuery("SELECT * FROM t ORDER BY k"); + rs = conn.createStatement().executeQuery("SELECT * FROM " + tableName + " ORDER BY k"); assertTrue(rs.next()); assertEquals("a", rs.getString(1)); assertTrue(rs.next()); assertEquals("ab", rs.getString(1)); assertFalse(rs.next()); - - conn.createStatement().execute("CREATE TABLE tdesc (k CHAR(3) PRIMARY KEY DESC)"); - conn.createStatement().execute("UPSERT INTO tdesc VALUES('a')"); - conn.createStatement().execute("UPSERT INTO tdesc VALUES('ab')"); + String tableNameDesc = generateRandomString(); + conn.createStatement().execute("CREATE TABLE " + tableNameDesc + " (k CHAR(3) PRIMARY KEY DESC)"); + conn.createStatement().execute("UPSERT INTO " + tableNameDesc + " VALUES('a')"); + conn.createStatement().execute("UPSERT INTO " + tableNameDesc + " VALUES('ab')"); conn.commit(); - rs = conn.createStatement().executeQuery("SELECT * FROM tdesc ORDER BY k DESC"); + rs = conn.createStatement().executeQuery("SELECT * FROM " + tableNameDesc + " ORDER BY k DESC"); assertTrue(rs.next()); assertEquals("ab", rs.getString(1)); assertTrue(rs.next()); @@ -142,23 +144,24 @@ public class StringIT extends BaseHBaseManagedTimeIT { public void testBinaryPadding() throws Exception { ResultSet rs; Connection conn = DriverManager.getConnection(getUrl()); - - conn.createStatement().execute("CREATE TABLE t (k BINARY(3) PRIMARY KEY)"); - conn.createStatement().execute("UPSERT INTO t VALUES('a')"); - conn.createStatement().execute("UPSERT INTO t VALUES('ab')"); + String tableName = generateRandomString(); + conn.createStatement().execute("CREATE TABLE " + tableName + " (k BINARY(3) PRIMARY KEY)"); + conn.createStatement().execute("UPSERT INTO " + tableName + " VALUES('a')"); + conn.createStatement().execute("UPSERT INTO " + tableName + " VALUES('ab')"); conn.commit(); - rs = conn.createStatement().executeQuery("SELECT * FROM t ORDER BY k"); + rs = conn.createStatement().executeQuery("SELECT * FROM " + tableName + " ORDER BY k"); assertTrue(rs.next()); assertArrayEquals(ByteUtil.concat(Bytes.toBytes("a"), QueryConstants.SEPARATOR_BYTE_ARRAY, QueryConstants.SEPARATOR_BYTE_ARRAY), rs.getBytes(1)); assertTrue(rs.next()); assertArrayEquals(ByteUtil.concat(Bytes.toBytes("ab"), QueryConstants.SEPARATOR_BYTE_ARRAY), rs.getBytes(1)); assertFalse(rs.next()); - conn.createStatement().execute("CREATE TABLE tdesc (k BINARY(3) PRIMARY KEY DESC)"); - conn.createStatement().execute("UPSERT INTO tdesc VALUES('a')"); - conn.createStatement().execute("UPSERT INTO tdesc VALUES('ab')"); + String tableNameDesc = generateRandomString(); + conn.createStatement().execute("CREATE TABLE " + tableNameDesc + " (k BINARY(3) PRIMARY KEY DESC)"); + conn.createStatement().execute("UPSERT INTO " + tableNameDesc + " VALUES('a')"); + conn.createStatement().execute("UPSERT INTO " + tableNameDesc + " VALUES('ab')"); conn.commit(); - rs = conn.createStatement().executeQuery("SELECT * FROM tdesc ORDER BY k DESC"); + rs = conn.createStatement().executeQuery("SELECT * FROM " + tableNameDesc + " ORDER BY k DESC"); assertTrue(rs.next()); assertArrayEquals(ByteUtil.concat(Bytes.toBytes("ab"), QueryConstants.SEPARATOR_BYTE_ARRAY), rs.getBytes(1)); assertTrue(rs.next()); @@ -242,11 +245,12 @@ public class StringIT extends BaseHBaseManagedTimeIT { @Test public void testStrConcat() throws Exception { Connection conn = DriverManager.getConnection(getUrl()); - conn.createStatement().execute("create table T (PK1 integer, F1 varchar, F2 varchar, F3 varchar, F4 varchar, constraint PK primary key (PK1))"); - conn.createStatement().execute("upsert into T(PK1, F1,F3) values(0, 'tortilla', 'chip')"); + String tableName = generateRandomString(); + conn.createStatement().execute("create table " + tableName + " (PK1 integer, F1 varchar, F2 varchar, F3 varchar, F4 varchar, constraint PK primary key (PK1))"); + conn.createStatement().execute("upsert into " + tableName + "(PK1, F1,F3) values(0, 'tortilla', 'chip')"); conn.commit(); - ResultSet rs = conn.createStatement().executeQuery("select * from T where (F1||F2||F3||F4)='tortillachip'"); + ResultSet rs = conn.createStatement().executeQuery("select * from " + tableName + " where (F1||F2||F3||F4)='tortillachip'"); assertTrue(rs.next()); assertEquals(0, rs.getInt(1)); assertFalse(rs.next()); http://git-wip-us.apache.org/repos/asf/phoenix/blob/d77d2492/phoenix-core/src/it/java/org/apache/phoenix/end2end/SubqueryIT.java ---------------------------------------------------------------------- diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/SubqueryIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/SubqueryIT.java index 2ced621..d94d4e3 100644 --- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/SubqueryIT.java +++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/SubqueryIT.java @@ -67,7 +67,8 @@ public class SubqueryIT extends BaseHBaseManagedTimeIT { private String[] indexDDL; private String[] plans; - + private String itemTableFullName; + public SubqueryIT(String[] indexDDL, String[] plans) { this.indexDDL = indexDDL; this.plans = plans; @@ -322,7 +323,7 @@ public class SubqueryIT extends BaseHBaseManagedTimeIT { protected void initCoItemTableValues() throws Exception { - ensureTableCreated(getUrl(), JOIN_COITEM_TABLE_FULL_NAME); + ensureTableCreated(getUrl(), JOIN_COITEM_TABLE_FULL_NAME, JOIN_COITEM_TABLE_FULL_NAME); Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES); Connection conn = DriverManager.getConnection(getUrl(), props); http://git-wip-us.apache.org/repos/asf/phoenix/blob/d77d2492/phoenix-core/src/it/java/org/apache/phoenix/end2end/TenantIdTypeIT.java ---------------------------------------------------------------------- diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/TenantIdTypeIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/TenantIdTypeIT.java index f28436e..c7b5716 100644 --- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/TenantIdTypeIT.java +++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/TenantIdTypeIT.java @@ -38,7 +38,7 @@ import org.junit.runners.Parameterized; import org.junit.runners.Parameterized.Parameters; @RunWith(Parameterized.class) -public class TenantIdTypeIT extends BaseHBaseManagedTimeIT { +public class TenantIdTypeIT extends BaseHBaseManagedTimeTableReuseIT { private Connection regularConnection(String url) throws SQLException { Properties props = new Properties(); @@ -74,7 +74,7 @@ public class TenantIdTypeIT extends BaseHBaseManagedTimeIT { this.dataType = dataType; this.tenantId = tenantId; this.otherTenantId = otherTenantId; - String tbl = "foo" + dataType; + String tbl = generateRandomString(); if(tbl.contains("(")){ tbl = tbl.substring(0, tbl.indexOf("(")); } http://git-wip-us.apache.org/repos/asf/phoenix/blob/d77d2492/phoenix-core/src/it/java/org/apache/phoenix/end2end/TenantSpecificViewIndexIT.java ---------------------------------------------------------------------- diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/TenantSpecificViewIndexIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/TenantSpecificViewIndexIT.java index e6e13d3..8010542 100644 --- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/TenantSpecificViewIndexIT.java +++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/TenantSpecificViewIndexIT.java @@ -17,6 +17,8 @@ */ package org.apache.phoenix.end2end; +import static org.apache.phoenix.util.MetaDataUtil.getViewIndexSequenceName; +import static org.apache.phoenix.util.MetaDataUtil.getViewIndexSequenceSchemaName; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; @@ -34,11 +36,13 @@ import org.apache.phoenix.jdbc.PhoenixConnection; import org.apache.phoenix.jdbc.PhoenixDatabaseMetaData; import org.apache.phoenix.query.QueryServices; import org.apache.phoenix.schema.ColumnNotFoundException; +import org.apache.phoenix.schema.PNameFactory; import org.apache.phoenix.schema.PTableType; import org.apache.phoenix.util.MetaDataUtil; import org.apache.phoenix.util.PhoenixRuntime; import org.apache.phoenix.util.QueryUtil; import org.apache.phoenix.util.SchemaUtil; +import org.junit.Ignore; import org.junit.Test; @@ -69,16 +73,19 @@ public class TenantSpecificViewIndexIT extends BaseTenantSpecificViewIndexIT { testUpdatableViewsWithSameNameDifferentTenants(null, true); } + @Test public void testMultiCFViewIndex() throws Exception { testMultiCFViewIndex(false, false); } + @Test public void testMultiCFViewIndexWithNamespaceMapping() throws Exception { testMultiCFViewIndex(false, true); } + @Test public void testMultiCFViewLocalIndex() throws Exception { testMultiCFViewIndex(true, false); @@ -110,12 +117,18 @@ public class TenantSpecificViewIndexIT extends BaseTenantSpecificViewIndexIT { } private void testMultiCFViewIndex(boolean localIndex, boolean isNamespaceEnabled) throws Exception { - String tableName = "A.MT_BASE"; - String baseViewName = "acme"; + String tableName = "XYZ." + generateRandomString(); + String baseViewName = generateRandomString() ; createTableAndValidate(tableName, isNamespaceEnabled); createViewAndIndexesWithTenantId(tableName, baseViewName, localIndex, "b", isNamespaceEnabled); createViewAndIndexesWithTenantId(tableName, baseViewName, localIndex, "a", isNamespaceEnabled); - validateSequence(tableName, isNamespaceEnabled, "-32767,-32767"); + + String sequenceNameA = getViewIndexSequenceName(PNameFactory.newName(tableName), PNameFactory.newName("a"), isNamespaceEnabled); + String sequenceNameB = getViewIndexSequenceName(PNameFactory.newName(tableName), PNameFactory.newName("b"), isNamespaceEnabled); + String sequenceSchemaName = getViewIndexSequenceSchemaName(PNameFactory.newName(tableName), isNamespaceEnabled); + verifySequence(isNamespaceEnabled? "a" : null, sequenceNameA, sequenceSchemaName, true); + verifySequence(isNamespaceEnabled? "b" : null, sequenceNameB, sequenceSchemaName, true); + Properties props = new Properties(); props.setProperty(PhoenixRuntime.TENANT_ID_ATTRIB, "a"); try (Connection conn = DriverManager.getConnection(getUrl(), props)) { @@ -126,24 +139,9 @@ public class TenantSpecificViewIndexIT extends BaseTenantSpecificViewIndexIT { conn.createStatement().execute("DROP VIEW " + baseViewName + "_b"); } DriverManager.getConnection(getUrl()).createStatement().execute("DROP TABLE " + tableName + " CASCADE"); - validateSequence(tableName, isNamespaceEnabled, null); - } - private void validateSequence(String tableName, boolean isNamespaceEnabled, String expectedResult) - throws SQLException { - PhoenixConnection phxConn = DriverManager.getConnection(getUrl()).unwrap(PhoenixConnection.class); - ResultSet rs = phxConn.createStatement().executeQuery("SELECT " + PhoenixDatabaseMetaData.CURRENT_VALUE - + " FROM " + PhoenixDatabaseMetaData.SYSTEM_SEQUENCE); - if (expectedResult != null) { - String[] splits = expectedResult.split(","); - for (String seq : splits) { - assertTrue(rs.next()); - assertEquals(seq, rs.getString(1)); - } - } else { - assertFalse(rs.next()); - } - phxConn.close(); + verifySequence(isNamespaceEnabled? "a" : null, sequenceNameA, sequenceSchemaName, false); + verifySequence(isNamespaceEnabled? "b" : null, sequenceNameB, sequenceSchemaName, false); } private void createViewAndIndexesWithTenantId(String tableName,String baseViewName, boolean localIndex, String tenantId, @@ -251,10 +249,12 @@ public class TenantSpecificViewIndexIT extends BaseTenantSpecificViewIndexIT { public void testNonPaddedTenantId() throws Exception { String tenantId1 = "org1"; String tenantId2 = "org2"; - String ddl = "CREATE TABLE T (tenantId char(15) NOT NULL, pk1 varchar NOT NULL, pk2 INTEGER NOT NULL, val1 VARCHAR CONSTRAINT pk primary key (tenantId,pk1,pk2)) MULTI_TENANT = true"; + String tableName = generateRandomString(); + String viewName = generateRandomString(); + String ddl = "CREATE TABLE " + tableName + " (tenantId char(15) NOT NULL, pk1 varchar NOT NULL, pk2 INTEGER NOT NULL, val1 VARCHAR CONSTRAINT pk primary key (tenantId,pk1,pk2)) MULTI_TENANT = true"; Connection conn = DriverManager.getConnection(getUrl()); conn.createStatement().execute(ddl); - String dml = "UPSERT INTO T (tenantId, pk1, pk2, val1) VALUES (?, ?, ?, ?)"; + String dml = "UPSERT INTO " + tableName + " (tenantId, pk1, pk2, val1) VALUES (?, ?, ?, ?)"; PreparedStatement stmt = conn.prepareStatement(dml); String pk = "pk1b"; @@ -278,8 +278,8 @@ public class TenantSpecificViewIndexIT extends BaseTenantSpecificViewIndexIT { Connection tenantConn = DriverManager.getConnection(tenantUrl); // create a tenant specific view. - tenantConn.createStatement().execute("CREATE VIEW V AS select * from T"); - String query = "SELECT val1 FROM V WHERE pk1 = ?"; + tenantConn.createStatement().execute("CREATE VIEW " + viewName + " AS select * from " + tableName); + String query = "SELECT val1 FROM " + viewName + " WHERE pk1 = ?"; // using the tenant connection query the view. PreparedStatement stmt2 = tenantConn.prepareStatement(query); http://git-wip-us.apache.org/repos/asf/phoenix/blob/d77d2492/phoenix-core/src/it/java/org/apache/phoenix/end2end/ToCharFunctionIT.java ---------------------------------------------------------------------- diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/ToCharFunctionIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/ToCharFunctionIT.java index 72544f2..e976517 100644 --- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/ToCharFunctionIT.java +++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/ToCharFunctionIT.java @@ -245,12 +245,13 @@ public class ToCharFunctionIT extends BaseHBaseManagedTimeTableReuseIT { @Test public void testToCharWithCloneMethod() throws SQLException { Connection conn = DriverManager.getConnection(getUrl()); - String ddl = "create table t (k varchar primary key, v integer[])"; + String tableName = generateRandomString(); + String ddl = "create table " + tableName + " (k varchar primary key, v integer[])"; conn.createStatement().execute(ddl); - conn.createStatement().execute("UPSERT INTO T VALUES('x',ARRAY[1234])"); + conn.createStatement().execute("UPSERT INTO " + tableName + " VALUES('x',ARRAY[1234])"); conn.commit(); - ResultSet rs = conn.createStatement().executeQuery("select to_char(v[1],'000') from t"); + ResultSet rs = conn.createStatement().executeQuery("select to_char(v[1],'000') from " + tableName); assertTrue(rs.next()); assertEquals("Unexpected value for date ", String.valueOf(1234), rs.getString(1)); assertFalse(rs.next()); http://git-wip-us.apache.org/repos/asf/phoenix/blob/d77d2492/phoenix-core/src/it/java/org/apache/phoenix/end2end/ToDateFunctionIT.java ---------------------------------------------------------------------- diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/ToDateFunctionIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/ToDateFunctionIT.java index acb29df..b530d2a 100644 --- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/ToDateFunctionIT.java +++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/ToDateFunctionIT.java @@ -30,7 +30,7 @@ import java.util.Properties; import static org.junit.Assert.*; -public class ToDateFunctionIT extends BaseHBaseManagedTimeIT { +public class ToDateFunctionIT extends BaseHBaseManagedTimeTableReuseIT { private static final long ONE_HOUR_IN_MILLIS = 1000L * 60L * 60L; @@ -255,12 +255,13 @@ public class ToDateFunctionIT extends BaseHBaseManagedTimeIT { @Test public void testToDateWithCloneMethod() throws SQLException { Connection conn = DriverManager.getConnection(getUrl()); - String ddl = "create table t (k varchar primary key, v varchar[])"; + String tableName = generateRandomString(); + String ddl = "create table " + tableName + " (k varchar primary key, v varchar[])"; conn.createStatement().execute(ddl); String dateStr = "2100-01-01"; - conn.createStatement().execute("UPSERT INTO T VALUES('x',ARRAY['"+dateStr+"'])"); + conn.createStatement().execute("UPSERT INTO " + tableName + " VALUES('x',ARRAY['"+dateStr+"'])"); conn.commit(); - ResultSet rs = conn.createStatement().executeQuery("select to_date(v[1], 'yyyy-MM-dd', 'local') from t"); + ResultSet rs = conn.createStatement().executeQuery("select to_date(v[1], 'yyyy-MM-dd', 'local') from " + tableName); assertTrue(rs.next()); assertEquals("Unexpected value for date ", Date.valueOf(dateStr), rs.getDate(1)); http://git-wip-us.apache.org/repos/asf/phoenix/blob/d77d2492/phoenix-core/src/it/java/org/apache/phoenix/end2end/TopNIT.java ---------------------------------------------------------------------- diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/TopNIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/TopNIT.java index 618680d..ca1cd86 100644 --- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/TopNIT.java +++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/TopNIT.java @@ -27,6 +27,7 @@ import static org.apache.phoenix.util.TestUtil.ROW7; import static org.apache.phoenix.util.TestUtil.ROW8; import static org.apache.phoenix.util.TestUtil.ROW9; import static org.apache.phoenix.util.TestUtil.TEST_PROPERTIES; +import static org.apache.phoenix.util.TestUtil.ATABLE_NAME; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; @@ -48,7 +49,8 @@ public class TopNIT extends BaseClientManagedTimeIT { public void testMultiOrderByExpr() throws Exception { long ts = nextTimestamp(); String tenantId = getOrganizationId(); - initATableValues(tenantId, getDefaultSplits(tenantId), null, ts); + + initATableValues(ATABLE_NAME, tenantId, getDefaultSplits(tenantId), null, ts, getUrl()); String query = "SELECT entity_id FROM aTable ORDER BY b_string, entity_id LIMIT 5"; Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES); props.setProperty(PhoenixRuntime.CURRENT_SCN_ATTRIB, Long.toString(ts + 2)); // Execute at timestamp 2 @@ -78,7 +80,7 @@ public class TopNIT extends BaseClientManagedTimeIT { public void testDescMultiOrderByExpr() throws Exception { long ts = nextTimestamp(); String tenantId = getOrganizationId(); - initATableValues(tenantId, getDefaultSplits(tenantId), null, ts); + initATableValues(ATABLE_NAME, tenantId, getDefaultSplits(tenantId), null, ts, getUrl()); String query = "SELECT entity_id FROM aTable ORDER BY b_string || entity_id desc LIMIT 5"; Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES); props.setProperty(PhoenixRuntime.CURRENT_SCN_ATTRIB, Long.toString(ts + 2)); // Execute at timestamp 2 @@ -117,7 +119,7 @@ public class TopNIT extends BaseClientManagedTimeIT { private void testTopNDelete(boolean autoCommit) throws Exception { long ts = nextTimestamp(); String tenantId = getOrganizationId(); - initATableValues(tenantId, getDefaultSplits(tenantId), null, ts); + initATableValues(ATABLE_NAME, tenantId, getDefaultSplits(tenantId), null, ts, getUrl()); String query = "DELETE FROM aTable ORDER BY b_string, entity_id LIMIT 5"; Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES); props.setProperty(PhoenixRuntime.CURRENT_SCN_ATTRIB, Long.toString(ts + 2)); // Execute at timestamp 2 http://git-wip-us.apache.org/repos/asf/phoenix/blob/d77d2492/phoenix-core/src/it/java/org/apache/phoenix/end2end/TruncateFunctionIT.java ---------------------------------------------------------------------- diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/TruncateFunctionIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/TruncateFunctionIT.java index 9e8f2c0..983d086 100644 --- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/TruncateFunctionIT.java +++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/TruncateFunctionIT.java @@ -57,7 +57,7 @@ public class TruncateFunctionIT extends BaseClientManagedTimeIT { public void testTruncate() throws Exception { long ts = nextTimestamp(); String tenantId = getOrganizationId(); - ensureTableCreated(getUrl(), ATABLE_NAME, ts-5); + ensureTableCreated(getUrl(), ATABLE_NAME,ATABLE_NAME, ts-5); Properties props = new Properties(); props.setProperty(CURRENT_SCN_ATTRIB, Long.toString(ts-3)); Connection conn = DriverManager.getConnection(getUrl(), props);
