You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@phoenix.apache.org by sa...@apache.org on 2016/08/26 00:17:24 UTC
[11/14] phoenix git commit: PHOENIX-3036 Modify phoenix IT tests to
extend BaseHBaseManagedTimeTableReuseIT (Prakul Agarwal, Samarth Jain)
http://git-wip-us.apache.org/repos/asf/phoenix/blob/03df8ab5/phoenix-core/src/it/java/org/apache/phoenix/end2end/ArrayPrependFunctionIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/ArrayPrependFunctionIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/ArrayPrependFunctionIT.java
index 3145d95..f3386d9 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/ArrayPrependFunctionIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/ArrayPrependFunctionIT.java
@@ -27,12 +27,12 @@ import org.apache.phoenix.schema.TypeMismatchException;
import org.apache.phoenix.schema.types.PhoenixArray;
import org.junit.Test;
-public class ArrayPrependFunctionIT extends BaseHBaseManagedTimeIT {
+public class ArrayPrependFunctionIT extends BaseHBaseManagedTimeTableReuseIT {
- private void initTableWithVarArray(Connection conn, String type, Object[] objectArray, String value) throws SQLException {
- conn.createStatement().execute("CREATE TABLE t ( k VARCHAR PRIMARY KEY, a " + type + "[],b " + type + ")");
+ private void initTableWithVarArray(Connection conn, String tableName, String type, Object[] objectArray, String value) throws SQLException {
+ conn.createStatement().execute("CREATE TABLE " + tableName + " ( k VARCHAR PRIMARY KEY, a " + type + "[],b " + type + ")");
conn.commit();
- PreparedStatement stmt = conn.prepareStatement("UPSERT INTO t VALUES(?,?," + value + ")");
+ PreparedStatement stmt = conn.prepareStatement("UPSERT INTO " + tableName + " VALUES(?,?," + value + ")");
PhoenixArray array = (PhoenixArray) conn.createArrayOf(type, objectArray);
stmt.setString(1, "a");
stmt.setArray(2, array);
@@ -41,10 +41,10 @@ public class ArrayPrependFunctionIT extends BaseHBaseManagedTimeIT {
}
- private void initTables(Connection conn) throws Exception {
- String ddl = "CREATE TABLE regions (region_name VARCHAR PRIMARY KEY,varchars VARCHAR[],integers INTEGER[],doubles DOUBLE[],bigints BIGINT[],chars CHAR(15)[],double1 DOUBLE,char1 CHAR(17),nullcheck INTEGER,chars2 CHAR(15)[])";
+ private void initTables(Connection conn, String tableName) throws Exception {
+ String ddl = "CREATE TABLE " + tableName + " (region_name VARCHAR PRIMARY KEY,varchars VARCHAR[],integers INTEGER[],doubles DOUBLE[],bigints BIGINT[],chars CHAR(15)[],double1 DOUBLE,char1 CHAR(17),nullcheck INTEGER,chars2 CHAR(15)[])";
conn.createStatement().execute(ddl);
- String dml = "UPSERT INTO regions(region_name,varchars,integers,doubles,bigints,chars,double1,char1,nullcheck,chars2) VALUES('SF Bay Area'," +
+ String dml = "UPSERT INTO " + tableName + " (region_name,varchars,integers,doubles,bigints,chars,double1,char1,nullcheck,chars2) VALUES('SF Bay Area'," +
"ARRAY['2345','46345','23234']," +
"ARRAY[2345,46345,23234,456]," +
"ARRAY[23.45,46.345,23.234,45.6,5.78]," +
@@ -60,10 +60,10 @@ public class ArrayPrependFunctionIT extends BaseHBaseManagedTimeIT {
conn.commit();
}
- private void initTablesDesc(Connection conn, String type, String val) throws Exception {
- String ddl = "CREATE TABLE regions (pk " + type + " PRIMARY KEY DESC,varchars VARCHAR[],integers INTEGER[],doubles DOUBLE[],bigints BIGINT[],chars CHAR(15)[],chars2 CHAR(15)[], bools BOOLEAN[])";
+ private void initTablesDesc(Connection conn, String tableName, String type, String val) throws Exception {
+ String ddl = "CREATE TABLE " + tableName + " (pk " + type + " PRIMARY KEY DESC,varchars VARCHAR[],integers INTEGER[],doubles DOUBLE[],bigints BIGINT[],chars CHAR(15)[],chars2 CHAR(15)[], bools BOOLEAN[])";
conn.createStatement().execute(ddl);
- String dml = "UPSERT INTO regions(pk,varchars,integers,doubles,bigints,chars,chars2,bools) VALUES(" + val + "," +
+ String dml = "UPSERT INTO " + tableName + "(pk,varchars,integers,doubles,bigints,chars,chars2,bools) VALUES(" + val + "," +
"ARRAY['2345','46345','23234']," +
"ARRAY[2345,46345,23234,456]," +
"ARRAY[23.45,46.345,23.234,45.6,5.78]," +
@@ -80,10 +80,11 @@ public class ArrayPrependFunctionIT extends BaseHBaseManagedTimeIT {
@Test
public void testArrayPrependFunctionInteger() throws Exception {
Connection conn = DriverManager.getConnection(getUrl());
- initTables(conn);
+ String tableName = generateRandomString();
+ initTables(conn, tableName);
ResultSet rs;
- rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND(1234,integers) FROM regions WHERE region_name = 'SF Bay Area'");
+ rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND(1234,integers) FROM " + tableName + " WHERE region_name = 'SF Bay Area'");
assertTrue(rs.next());
Integer[] integers = new Integer[]{1234, 2345, 46345, 23234, 456};
@@ -97,10 +98,11 @@ public class ArrayPrependFunctionIT extends BaseHBaseManagedTimeIT {
@Test
public void testArrayPrependFunctionVarchar() throws Exception {
Connection conn = DriverManager.getConnection(getUrl());
- initTables(conn);
+ String tableName = generateRandomString();
+ initTables(conn, tableName);
ResultSet rs;
- rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND('34567',varchars) FROM regions WHERE region_name = 'SF Bay Area'");
+ rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND('34567',varchars) FROM " + tableName + " WHERE region_name = 'SF Bay Area'");
assertTrue(rs.next());
String[] strings = new String[]{"34567", "2345", "46345", "23234"};
@@ -115,12 +117,13 @@ public class ArrayPrependFunctionIT extends BaseHBaseManagedTimeIT {
public void testArrayPrependFunctionNulls1() throws Exception {
Connection conn = DriverManager.getConnection(getUrl());
String[] s = new String[]{null, null, "1", "2"};
- initTableWithVarArray(conn, "VARCHAR", s, null);
+ String tableName = generateRandomString();
+ initTableWithVarArray(conn, tableName, "VARCHAR", s, null);
String[] s2 = new String[]{null, null, null, "1", "2"};
PhoenixArray array2 = (PhoenixArray) conn.createArrayOf("VARCHAR", s2);
conn = DriverManager.getConnection(getUrl());
ResultSet rs;
- rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND(b,a) FROM t WHERE k = 'a'");
+ rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND(b,a) FROM " + tableName + " WHERE k = 'a'");
assertTrue(rs.next());
assertEquals(array2, rs.getArray(1));
}
@@ -129,12 +132,13 @@ public class ArrayPrependFunctionIT extends BaseHBaseManagedTimeIT {
public void testArrayPrependFunctionNulls2() throws Exception {
Connection conn = DriverManager.getConnection(getUrl());
String[] s = new String[]{"1", "2"};
- initTableWithVarArray(conn, "VARCHAR", s, null);
+ String tableName = generateRandomString();
+ initTableWithVarArray(conn, tableName, "VARCHAR", s, null);
String[] s2 = new String[]{null, "1", "2"};
PhoenixArray array2 = (PhoenixArray) conn.createArrayOf("VARCHAR", s2);
conn = DriverManager.getConnection(getUrl());
ResultSet rs;
- rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND(b,a) FROM t WHERE k = 'a'");
+ rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND(b,a) FROM " + tableName + " WHERE k = 'a'");
assertTrue(rs.next());
assertEquals(array2, rs.getArray(1));
}
@@ -143,12 +147,13 @@ public class ArrayPrependFunctionIT extends BaseHBaseManagedTimeIT {
public void testArrayPrependFunctionNulls3() throws Exception {
Connection conn = DriverManager.getConnection(getUrl());
String[] s = new String[]{"176", null, "212"};
- initTableWithVarArray(conn, "VARCHAR", s, null);
+ String tableName = generateRandomString();
+ initTableWithVarArray(conn, tableName, "VARCHAR", s, null);
String[] s2 = new String[]{null, "176", null, "212"};
PhoenixArray array2 = (PhoenixArray) conn.createArrayOf("VARCHAR", s2);
conn = DriverManager.getConnection(getUrl());
ResultSet rs;
- rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND(b,a) FROM t WHERE k = 'a'");
+ rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND(b,a) FROM " + tableName + " WHERE k = 'a'");
assertTrue(rs.next());
assertEquals(array2, rs.getArray(1));
}
@@ -157,12 +162,13 @@ public class ArrayPrependFunctionIT extends BaseHBaseManagedTimeIT {
public void testArrayPrependFunctionNulls4() throws Exception {
Connection conn = DriverManager.getConnection(getUrl());
String[] s = new String[]{"176", null, "212"};
- initTableWithVarArray(conn, "VARCHAR", s, "'foo'");
+ String tableName = generateRandomString();
+ initTableWithVarArray(conn, tableName, "VARCHAR", s, "'foo'");
String[] s2 = new String[]{"foo", "176", null, "212"};
PhoenixArray array2 = (PhoenixArray) conn.createArrayOf("VARCHAR", s2);
conn = DriverManager.getConnection(getUrl());
ResultSet rs;
- rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND(b,a) FROM t WHERE k = 'a'");
+ rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND(b,a) FROM " + tableName + " WHERE k = 'a'");
assertTrue(rs.next());
assertEquals(array2, rs.getArray(1));
}
@@ -170,10 +176,11 @@ public class ArrayPrependFunctionIT extends BaseHBaseManagedTimeIT {
@Test
public void testArrayPrependFunctionDouble() throws Exception {
Connection conn = DriverManager.getConnection(getUrl());
- initTables(conn);
+ String tableName = generateRandomString();
+ initTables(conn, tableName);
ResultSet rs;
- rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND(double1,doubles) FROM regions WHERE region_name = 'SF Bay Area'");
+ rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND(double1,doubles) FROM " + tableName + " WHERE region_name = 'SF Bay Area'");
assertTrue(rs.next());
Double[] doubles = new Double[]{23.45, 23.45, 46.345, 23.234, 45.6, 5.78};
@@ -187,10 +194,11 @@ public class ArrayPrependFunctionIT extends BaseHBaseManagedTimeIT {
@Test
public void testArrayPrependFunctionDouble2() throws Exception {
Connection conn = DriverManager.getConnection(getUrl());
- initTables(conn);
+ String tableName = generateRandomString();
+ initTables(conn, tableName);
ResultSet rs;
- rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND(23,doubles) FROM regions WHERE region_name = 'SF Bay Area'");
+ rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND(23,doubles) FROM " + tableName + " WHERE region_name = 'SF Bay Area'");
assertTrue(rs.next());
Double[] doubles = new Double[]{new Double(23), 23.45, 46.345, 23.234, 45.6, 5.78};
@@ -204,9 +212,10 @@ public class ArrayPrependFunctionIT extends BaseHBaseManagedTimeIT {
@Test
public void testArrayPrependFunctionBigint() throws Exception {
Connection conn = DriverManager.getConnection(getUrl());
- initTables(conn);
+ String tableName = generateRandomString();
+ initTables(conn, tableName);
ResultSet rs;
- rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND(1112,bigints) FROM regions WHERE region_name = 'SF Bay Area'");
+ rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND(1112,bigints) FROM " + tableName + " WHERE region_name = 'SF Bay Area'");
assertTrue(rs.next());
Long[] longs = new Long[]{1112l, 12l, 34l, 56l, 78l, 910l};
@@ -220,9 +229,10 @@ public class ArrayPrependFunctionIT extends BaseHBaseManagedTimeIT {
@Test
public void testArrayPrependFunctionChar() throws Exception {
Connection conn = DriverManager.getConnection(getUrl());
- initTables(conn);
+ String tableName = generateRandomString();
+ initTables(conn, tableName);
ResultSet rs;
- rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND('fac',chars) FROM regions WHERE region_name = 'SF Bay Area'");
+ rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND('fac',chars) FROM " + tableName + " WHERE region_name = 'SF Bay Area'");
assertTrue(rs.next());
String[] strings = new String[]{"fac", "a", "bbbb", "c", "ddd", "e"};
@@ -236,28 +246,31 @@ public class ArrayPrependFunctionIT extends BaseHBaseManagedTimeIT {
@Test(expected = TypeMismatchException.class)
public void testArrayPrependFunctionIntToCharArray() throws Exception {
Connection conn = DriverManager.getConnection(getUrl());
- initTables(conn);
+ String tableName = generateRandomString();
+ initTables(conn, tableName);
ResultSet rs;
- rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND(234,varchars) FROM regions WHERE region_name = 'SF Bay Area'");
+ rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND(234,varchars) FROM " + tableName + " WHERE region_name = 'SF Bay Area'");
}
@Test(expected = TypeMismatchException.class)
public void testArrayPrependFunctionVarcharToIntegerArray() throws Exception {
Connection conn = DriverManager.getConnection(getUrl());
- initTables(conn);
+ String tableName = generateRandomString();
+ initTables(conn, tableName);
ResultSet rs;
- rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND('234',integers) FROM regions WHERE region_name = 'SF Bay Area'");
+ rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND('234',integers) FROM " + tableName + " WHERE region_name = 'SF Bay Area'");
}
@Test(expected = SQLException.class)
public void testArrayPrependFunctionChar2() throws Exception {
Connection conn = DriverManager.getConnection(getUrl());
- initTables(conn);
+ String tableName = generateRandomString();
+ initTables(conn, tableName);
ResultSet rs;
- rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND('facfacfacfacfacfacfac',chars) FROM regions WHERE region_name = 'SF Bay Area'");
+ rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND('facfacfacfacfacfacfac',chars) FROM " + tableName + " WHERE region_name = 'SF Bay Area'");
rs.next();
rs.getArray(1);
}
@@ -265,10 +278,11 @@ public class ArrayPrependFunctionIT extends BaseHBaseManagedTimeIT {
@Test
public void testArrayPrependFunctionIntegerToDoubleArray() throws Exception {
Connection conn = DriverManager.getConnection(getUrl());
- initTables(conn);
+ String tableName = generateRandomString();
+ initTables(conn, tableName);
ResultSet rs;
- rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND(45,doubles) FROM regions WHERE region_name = 'SF Bay Area'");
+ rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND(45,doubles) FROM " + tableName + " WHERE region_name = 'SF Bay Area'");
assertTrue(rs.next());
Double[] doubles = new Double[]{45.0, 23.45, 46.345, 23.234, 45.6, 5.78};
@@ -282,10 +296,11 @@ public class ArrayPrependFunctionIT extends BaseHBaseManagedTimeIT {
@Test
public void testArrayPrependFunctionWithNestedFunctions1() throws Exception {
Connection conn = DriverManager.getConnection(getUrl());
- initTables(conn);
+ String tableName = generateRandomString();
+ initTables(conn, tableName);
ResultSet rs;
- rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND(integers[1],ARRAY[23,45]) FROM regions WHERE region_name = 'SF Bay Area'");
+ rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND(integers[1],ARRAY[23,45]) FROM " + tableName + " WHERE region_name = 'SF Bay Area'");
assertTrue(rs.next());
Integer[] integers = new Integer[]{2345, 23, 45};
@@ -299,10 +314,11 @@ public class ArrayPrependFunctionIT extends BaseHBaseManagedTimeIT {
@Test
public void testArrayPrependFunctionWithNestedFunctions2() throws Exception {
Connection conn = DriverManager.getConnection(getUrl());
- initTables(conn);
+ String tableName = generateRandomString();
+ initTables(conn, tableName);
ResultSet rs;
- rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND(ARRAY_ELEM(ARRAY[2,4],1),integers) FROM regions WHERE region_name = 'SF Bay Area'");
+ rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND(ARRAY_ELEM(ARRAY[2,4],1),integers) FROM " + tableName+ " WHERE region_name = 'SF Bay Area'");
assertTrue(rs.next());
Integer[] integers = new Integer[]{2, 2345, 46345, 23234, 456};
@@ -316,10 +332,11 @@ public class ArrayPrependFunctionIT extends BaseHBaseManagedTimeIT {
@Test
public void testArrayPrependFunctionWithNestedFunctions3() throws Exception {
Connection conn = DriverManager.getConnection(getUrl());
- initTables(conn);
+ String tableName = generateRandomString();
+ initTables(conn, tableName);
ResultSet rs;
- rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND(ARRAY_ELEM(doubles,2),doubles) FROM regions WHERE region_name = 'SF Bay Area'");
+ rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND(ARRAY_ELEM(doubles,2),doubles) FROM " + tableName + " WHERE region_name = 'SF Bay Area'");
assertTrue(rs.next());
Double[] doubles = new Double[]{46.345, 23.45, 46.345, 23.234, 45.6, 5.78};
@@ -333,16 +350,16 @@ public class ArrayPrependFunctionIT extends BaseHBaseManagedTimeIT {
@Test
public void testArrayPrependFunctionWithUpsert1() throws Exception {
Connection conn = DriverManager.getConnection(getUrl());
-
- String ddl = "CREATE TABLE regions (region_name VARCHAR PRIMARY KEY,varchars VARCHAR[])";
+ String tableName = generateRandomString();
+ String ddl = "CREATE TABLE " + tableName + " (region_name VARCHAR PRIMARY KEY,varchars VARCHAR[])";
conn.createStatement().execute(ddl);
- String dml = "UPSERT INTO regions(region_name,varchars) VALUES('SF Bay Area',ARRAY_PREPEND(':-)',ARRAY['hello','world']))";
+ String dml = "UPSERT INTO " + tableName + " (region_name,varchars) VALUES('SF Bay Area',ARRAY_PREPEND(':-)',ARRAY['hello','world']))";
conn.createStatement().execute(dml);
conn.commit();
ResultSet rs;
- rs = conn.createStatement().executeQuery("SELECT varchars FROM regions WHERE region_name = 'SF Bay Area'");
+ rs = conn.createStatement().executeQuery("SELECT varchars FROM " + tableName + " WHERE region_name = 'SF Bay Area'");
assertTrue(rs.next());
String[] strings = new String[]{":-)", "hello", "world"};
@@ -356,16 +373,17 @@ public class ArrayPrependFunctionIT extends BaseHBaseManagedTimeIT {
@Test
public void testArrayPrependFunctionWithUpsert2() throws Exception {
Connection conn = DriverManager.getConnection(getUrl());
+ String tableName = generateRandomString();
- String ddl = "CREATE TABLE regions (region_name VARCHAR PRIMARY KEY,integers INTEGER[])";
+ String ddl = "CREATE TABLE " + tableName + " (region_name VARCHAR PRIMARY KEY,integers INTEGER[])";
conn.createStatement().execute(ddl);
- String dml = "UPSERT INTO regions(region_name,integers) VALUES('SF Bay Area',ARRAY_PREPEND(6,ARRAY[4,5]))";
+ String dml = "UPSERT INTO " + tableName + "(region_name,integers) VALUES('SF Bay Area',ARRAY_PREPEND(6,ARRAY[4,5]))";
conn.createStatement().execute(dml);
conn.commit();
ResultSet rs;
- rs = conn.createStatement().executeQuery("SELECT integers FROM regions WHERE region_name = 'SF Bay Area'");
+ rs = conn.createStatement().executeQuery("SELECT integers FROM " + tableName + " WHERE region_name = 'SF Bay Area'");
assertTrue(rs.next());
Integer[] integers = new Integer[]{6, 4, 5};
@@ -379,16 +397,16 @@ public class ArrayPrependFunctionIT extends BaseHBaseManagedTimeIT {
@Test
public void testArrayPrependFunctionWithUpsert3() throws Exception {
Connection conn = DriverManager.getConnection(getUrl());
-
- String ddl = "CREATE TABLE regions (region_name VARCHAR PRIMARY KEY,doubles DOUBLE[])";
+ String tableName = generateRandomString();
+ String ddl = "CREATE TABLE " + tableName + "(region_name VARCHAR PRIMARY KEY,doubles DOUBLE[])";
conn.createStatement().execute(ddl);
- String dml = "UPSERT INTO regions(region_name,doubles) VALUES('SF Bay Area',ARRAY_PREPEND(9.0,ARRAY[5.67,7.87]))";
+ String dml = "UPSERT INTO " + tableName + "(region_name,doubles) VALUES('SF Bay Area',ARRAY_PREPEND(9.0,ARRAY[5.67,7.87]))";
conn.createStatement().execute(dml);
conn.commit();
ResultSet rs;
- rs = conn.createStatement().executeQuery("SELECT doubles FROM regions WHERE region_name = 'SF Bay Area'");
+ rs = conn.createStatement().executeQuery("SELECT doubles FROM " + tableName + " WHERE region_name = 'SF Bay Area'");
assertTrue(rs.next());
Double[] doubles = new Double[]{new Double(9), 5.67, 7.87};
@@ -402,26 +420,28 @@ public class ArrayPrependFunctionIT extends BaseHBaseManagedTimeIT {
@Test
public void testArrayPrependFunctionWithUpsertSelect1() throws Exception {
Connection conn = DriverManager.getConnection(getUrl());
-
- String ddl = "CREATE TABLE source (region_name VARCHAR PRIMARY KEY,doubles DOUBLE[])";
+ String baseTable = generateRandomString();
+ String source = baseTable + "_SOURCE";
+ String target = baseTable + "_TARGET";
+ String ddl = "CREATE TABLE " + source + " (region_name VARCHAR PRIMARY KEY,doubles DOUBLE[])";
conn.createStatement().execute(ddl);
- ddl = "CREATE TABLE target (region_name VARCHAR PRIMARY KEY,doubles DOUBLE[])";
+ ddl = "CREATE TABLE " + target + "(region_name VARCHAR PRIMARY KEY,doubles DOUBLE[])";
conn.createStatement().execute(ddl);
- String dml = "UPSERT INTO source(region_name,doubles) VALUES('SF Bay Area',ARRAY_PREPEND(9.0,ARRAY[5.67,7.87]))";
+ String dml = "UPSERT INTO " + source + "(region_name,doubles) VALUES('SF Bay Area',ARRAY_PREPEND(9.0,ARRAY[5.67,7.87]))";
conn.createStatement().execute(dml);
- dml = "UPSERT INTO source(region_name,doubles) VALUES('SF Bay Area2',ARRAY_PREPEND(9.2,ARRAY[56.7,7.87]))";
+ dml = "UPSERT INTO " + source + "(region_name,doubles) VALUES('SF Bay Area2',ARRAY_PREPEND(9.2,ARRAY[56.7,7.87]))";
conn.createStatement().execute(dml);
conn.commit();
- dml = "UPSERT INTO target(region_name, doubles) SELECT region_name, ARRAY_PREPEND(5,doubles) FROM source";
+ dml = "UPSERT INTO " + target + "(region_name, doubles) SELECT region_name, ARRAY_PREPEND(5,doubles) FROM " + source;
conn.createStatement().execute(dml);
conn.commit();
ResultSet rs;
- rs = conn.createStatement().executeQuery("SELECT doubles FROM target");
+ rs = conn.createStatement().executeQuery("SELECT doubles FROM " + target);
assertTrue(rs.next());
Double[] doubles = new Double[]{new Double(5), new Double(9), 5.67, 7.87};
@@ -440,26 +460,28 @@ public class ArrayPrependFunctionIT extends BaseHBaseManagedTimeIT {
@Test
public void testArrayPrependFunctionWithUpsertSelect2() throws Exception {
Connection conn = DriverManager.getConnection(getUrl());
-
- String ddl = "CREATE TABLE source (region_name VARCHAR PRIMARY KEY,varchars VARCHAR[])";
+ String baseTable = generateRandomString();
+ String source = baseTable + "_SOURCE";
+ String target = baseTable + "_TARGET";
+ String ddl = "CREATE TABLE " + source + " (region_name VARCHAR PRIMARY KEY,varchars VARCHAR[])";
conn.createStatement().execute(ddl);
- ddl = "CREATE TABLE target (region_name VARCHAR PRIMARY KEY,varchars VARCHAR[])";
+ ddl = "CREATE TABLE " + target + " (region_name VARCHAR PRIMARY KEY,varchars VARCHAR[])";
conn.createStatement().execute(ddl);
- String dml = "UPSERT INTO source(region_name,varchars) VALUES('SF Bay Area',ARRAY_PREPEND('c',ARRAY['abcd','b']))";
+ String dml = "UPSERT INTO " + source + "(region_name,varchars) VALUES('SF Bay Area',ARRAY_PREPEND('c',ARRAY['abcd','b']))";
conn.createStatement().execute(dml);
- dml = "UPSERT INTO source(region_name,varchars) VALUES('SF Bay Area2',ARRAY_PREPEND('something',ARRAY['d','fgh']))";
+ dml = "UPSERT INTO " + source + "(region_name,varchars) VALUES('SF Bay Area2',ARRAY_PREPEND('something',ARRAY['d','fgh']))";
conn.createStatement().execute(dml);
conn.commit();
- dml = "UPSERT INTO target(region_name, varchars) SELECT region_name, ARRAY_PREPEND('stu',varchars) FROM source";
+ dml = "UPSERT INTO " + target + "(region_name, varchars) SELECT region_name, ARRAY_PREPEND('stu',varchars) FROM " + source;
conn.createStatement().execute(dml);
conn.commit();
ResultSet rs;
- rs = conn.createStatement().executeQuery("SELECT varchars FROM target");
+ rs = conn.createStatement().executeQuery("SELECT varchars FROM " + target);
assertTrue(rs.next());
String[] strings = new String[]{"stu", "c", "abcd", "b"};
@@ -478,10 +500,11 @@ public class ArrayPrependFunctionIT extends BaseHBaseManagedTimeIT {
@Test
public void testArrayPrependFunctionInWhere1() throws Exception {
Connection conn = DriverManager.getConnection(getUrl());
- initTables(conn);
+ String tableName = generateRandomString();
+ initTables(conn, tableName);
ResultSet rs;
- rs = conn.createStatement().executeQuery("SELECT region_name FROM regions WHERE ARRAY[123,2345,46345,23234,456]=ARRAY_PREPEND(123,integers)");
+ rs = conn.createStatement().executeQuery("SELECT region_name FROM " + tableName + " WHERE ARRAY[123,2345,46345,23234,456]=ARRAY_PREPEND(123,integers)");
assertTrue(rs.next());
assertEquals("SF Bay Area", rs.getString(1));
@@ -491,10 +514,11 @@ public class ArrayPrependFunctionIT extends BaseHBaseManagedTimeIT {
@Test
public void testArrayPrependFunctionInWhere2() throws Exception {
Connection conn = DriverManager.getConnection(getUrl());
- initTables(conn);
+ String tableName = generateRandomString();
+ initTables(conn, tableName);
ResultSet rs;
- rs = conn.createStatement().executeQuery("SELECT region_name FROM regions WHERE varchars[1]=ANY(ARRAY_PREPEND('1234',ARRAY['2345','46345','23234']))");
+ rs = conn.createStatement().executeQuery("SELECT region_name FROM " + tableName + " WHERE varchars[1]=ANY(ARRAY_PREPEND('1234',ARRAY['2345','46345','23234']))");
assertTrue(rs.next());
assertEquals("SF Bay Area", rs.getString(1));
@@ -504,10 +528,11 @@ public class ArrayPrependFunctionIT extends BaseHBaseManagedTimeIT {
@Test
public void testArrayPrependFunctionInWhere3() throws Exception {
Connection conn = DriverManager.getConnection(getUrl());
- initTables(conn);
+ String tableName = generateRandomString();
+ initTables(conn, tableName);
ResultSet rs;
- rs = conn.createStatement().executeQuery("SELECT region_name FROM regions WHERE ARRAY['1234','2345','46345','23234']=ARRAY_PREPEND('1234',ARRAY['2345','46345','23234'])");
+ rs = conn.createStatement().executeQuery("SELECT region_name FROM " + tableName + " WHERE ARRAY['1234','2345','46345','23234']=ARRAY_PREPEND('1234',ARRAY['2345','46345','23234'])");
assertTrue(rs.next());
assertEquals("SF Bay Area", rs.getString(1));
@@ -517,10 +542,11 @@ public class ArrayPrependFunctionIT extends BaseHBaseManagedTimeIT {
@Test
public void testArrayPrependFunctionInWhere4() throws Exception {
Connection conn = DriverManager.getConnection(getUrl());
- initTables(conn);
+ String tableName = generateRandomString();
+ initTables(conn, tableName);
ResultSet rs;
- rs = conn.createStatement().executeQuery("SELECT region_name FROM regions WHERE ARRAY[123.4,23.45,4634.5,2.3234]=ARRAY_PREPEND(123.4,ARRAY[23.45,4634.5,2.3234])");
+ rs = conn.createStatement().executeQuery("SELECT region_name FROM " + tableName + " WHERE ARRAY[123.4,23.45,4634.5,2.3234]=ARRAY_PREPEND(123.4,ARRAY[23.45,4634.5,2.3234])");
assertTrue(rs.next());
assertEquals("SF Bay Area", rs.getString(1));
@@ -530,10 +556,11 @@ public class ArrayPrependFunctionIT extends BaseHBaseManagedTimeIT {
@Test
public void testArrayPrependFunctionInWhere5() throws Exception {
Connection conn = DriverManager.getConnection(getUrl());
- initTables(conn);
+ String tableName = generateRandomString();
+ initTables(conn, tableName);
ResultSet rs;
- rs = conn.createStatement().executeQuery("SELECT region_name FROM regions WHERE ARRAY['foo','2345','46345','23234']=ARRAY_PREPEND('foo',varchars)");
+ rs = conn.createStatement().executeQuery("SELECT region_name FROM " + tableName + " WHERE ARRAY['foo','2345','46345','23234']=ARRAY_PREPEND('foo',varchars)");
assertTrue(rs.next());
assertEquals("SF Bay Area", rs.getString(1));
@@ -543,10 +570,11 @@ public class ArrayPrependFunctionIT extends BaseHBaseManagedTimeIT {
@Test
public void testArrayPrependFunctionInWhere6() throws Exception {
Connection conn = DriverManager.getConnection(getUrl());
- initTables(conn);
+ String tableName = generateRandomString();
+ initTables(conn, tableName);
ResultSet rs;
- rs = conn.createStatement().executeQuery("SELECT region_name FROM regions WHERE chars2=ARRAY_PREPEND('foo',chars)");
+ rs = conn.createStatement().executeQuery("SELECT region_name FROM " + tableName + " WHERE chars2=ARRAY_PREPEND('foo',chars)");
assertTrue(rs.next());
assertEquals("SF Bay Area", rs.getString(1));
@@ -556,10 +584,11 @@ public class ArrayPrependFunctionIT extends BaseHBaseManagedTimeIT {
@Test
public void testArrayPrependFunctionInWhere7() throws Exception {
Connection conn = DriverManager.getConnection(getUrl());
- initTables(conn);
+ String tableName = generateRandomString();
+ initTables(conn, tableName);
ResultSet rs;
- rs = conn.createStatement().executeQuery("SELECT region_name FROM regions WHERE ARRAY[4,2,3]=ARRAY_PREPEND(4,ARRAY[2,3])");
+ rs = conn.createStatement().executeQuery("SELECT region_name FROM " + tableName + " WHERE ARRAY[4,2,3]=ARRAY_PREPEND(4,ARRAY[2,3])");
assertTrue(rs.next());
assertEquals("SF Bay Area", rs.getString(1));
@@ -569,10 +598,11 @@ public class ArrayPrependFunctionIT extends BaseHBaseManagedTimeIT {
@Test(expected = SQLException.class)
public void testArrayPrependFunctionCharLimitCheck() throws Exception {
Connection conn = DriverManager.getConnection(getUrl());
- initTables(conn);
+ String tableName = generateRandomString();
+ initTables(conn, tableName);
ResultSet rs;
- rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND(char1,chars) FROM regions WHERE region_name = 'SF Bay Area'");
+ rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND(char1,chars) FROM " + tableName + " WHERE region_name = 'SF Bay Area'");
assertTrue(rs.next());
String[] strings = new String[]{"wert", "a", "bbbb", "c", "ddd", "e"};
@@ -586,10 +616,11 @@ public class ArrayPrependFunctionIT extends BaseHBaseManagedTimeIT {
@Test
public void testArrayPrependFunctionIntegerDesc() throws Exception {
Connection conn = DriverManager.getConnection(getUrl());
- initTablesDesc(conn, "INTEGER", "23");
+ String tableName = generateRandomString();
+ initTablesDesc(conn, tableName, "INTEGER", "23");
ResultSet rs;
- rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND(pk,integers) FROM regions");
+ rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND(pk,integers) FROM " + tableName);
assertTrue(rs.next());
Integer[] integers = new Integer[]{23, 2345, 46345, 23234, 456};
@@ -604,10 +635,11 @@ public class ArrayPrependFunctionIT extends BaseHBaseManagedTimeIT {
@Test
public void testArrayPrependFunctionVarcharDesc() throws Exception {
Connection conn = DriverManager.getConnection(getUrl());
- initTablesDesc(conn, "VARCHAR", "'e'");
+ String tableName = generateRandomString();
+ initTablesDesc(conn, tableName, "VARCHAR", "'e'");
ResultSet rs;
- rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND(pk,varchars) FROM regions");
+ rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND(pk,varchars) FROM " + tableName);
assertTrue(rs.next());
String[] strings = new String[]{"e", "2345", "46345", "23234"};
@@ -621,9 +653,10 @@ public class ArrayPrependFunctionIT extends BaseHBaseManagedTimeIT {
@Test
public void testArrayPrependFunctionBigIntDesc() throws Exception {
Connection conn = DriverManager.getConnection(getUrl());
- initTablesDesc(conn, "BIGINT", "1112");
+ String tableName = generateRandomString();
+ initTablesDesc(conn, tableName, "BIGINT", "1112");
ResultSet rs;
- rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND(pk,bigints) FROM regions");
+ rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND(pk,bigints) FROM " + tableName);
assertTrue(rs.next());
Long[] longs = new Long[]{1112l, 12l, 34l, 56l, 78l, 910l};
@@ -637,9 +670,10 @@ public class ArrayPrependFunctionIT extends BaseHBaseManagedTimeIT {
@Test
public void testArrayPrependFunctionBooleanDesc() throws Exception {
Connection conn = DriverManager.getConnection(getUrl());
- initTablesDesc(conn, "BOOLEAN", "false");
+ String tableName = generateRandomString();
+ initTablesDesc(conn, tableName, "BOOLEAN", "false");
ResultSet rs;
- rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND(pk,bools) FROM regions");
+ rs = conn.createStatement().executeQuery("SELECT ARRAY_PREPEND(pk,bools) FROM " + tableName);
assertTrue(rs.next());
Boolean[] booleans = new Boolean[]{false, true, false};
http://git-wip-us.apache.org/repos/asf/phoenix/blob/03df8ab5/phoenix-core/src/it/java/org/apache/phoenix/end2end/AutoPartitionViewsIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/AutoPartitionViewsIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/AutoPartitionViewsIT.java
index c66a7c8..95ac2cb 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/AutoPartitionViewsIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/AutoPartitionViewsIT.java
@@ -47,7 +47,7 @@ import org.junit.runners.Parameterized;
import org.junit.runners.Parameterized.Parameters;
@RunWith(Parameterized.class)
-public class AutoPartitionViewsIT extends BaseHBaseManagedTimeIT {
+public class AutoPartitionViewsIT extends BaseHBaseManagedTimeTableReuseIT {
private String tableDDLOptions;
private boolean isMultiTenant;
@@ -64,7 +64,7 @@ public class AutoPartitionViewsIT extends BaseHBaseManagedTimeIT {
public AutoPartitionViewsIT(boolean salted, boolean isMultiTenant) {
this.isMultiTenant = isMultiTenant;
- StringBuilder optionBuilder = new StringBuilder(" AUTO_PARTITION_SEQ=\"TSDB.METRIC_ID_SEQ\"");
+ StringBuilder optionBuilder = new StringBuilder(" AUTO_PARTITION_SEQ=\"%s\"");
if (salted) optionBuilder.append(", SALTED=4 ");
if (isMultiTenant) optionBuilder.append(", MULTI_TENANT=true ");
this.tableDDLOptions = optionBuilder.toString();
@@ -79,13 +79,17 @@ public class AutoPartitionViewsIT extends BaseHBaseManagedTimeIT {
Connection viewConn2 =
isMultiTenant ? DriverManager.getConnection(TENANT_SPECIFIC_URL1)
: DriverManager.getConnection(getUrl())) {
+ String tableName = generateRandomString();
+ String autoSeqName = generateRandomString();
+
try {
+
String ddl =
String.format(
- "CREATE TABLE metric_table (%s metricId VARCHAR, val1 DOUBLE, val2 DOUBLE CONSTRAINT PK PRIMARY KEY( %s metricId)) %s",
+ "CREATE TABLE " + tableName + " (%s metricId VARCHAR, val1 DOUBLE, val2 DOUBLE CONSTRAINT PK PRIMARY KEY( %s metricId)) %s",
isMultiTenant ? "tenantId VARCHAR, " : "",
- isMultiTenant ? "tenantId, ": "",
- tableDDLOptions);
+ isMultiTenant ? "tenantId, ": "", String.format(tableDDLOptions, autoSeqName)
+ );
conn.createStatement().execute(ddl);
fail("Sequence value must be castable to the auto partition id column data type");
} catch (SQLException e) {
@@ -94,36 +98,41 @@ public class AutoPartitionViewsIT extends BaseHBaseManagedTimeIT {
.getErrorCode(),
e.getErrorCode());
}
-
String ddl =
String.format(
- "CREATE TABLE metric_table (%s metricId INTEGER NOT NULL, val1 DOUBLE, val2 DOUBLE CONSTRAINT PK PRIMARY KEY( %s metricId)) %s",
+ "CREATE TABLE " + tableName + " (%s metricId INTEGER NOT NULL, val1 DOUBLE, val2 DOUBLE CONSTRAINT PK PRIMARY KEY( %s metricId)) %s",
isMultiTenant ? "tenantId VARCHAR NOT NULL, " : "",
- isMultiTenant ? "tenantId, ": "",
- tableDDLOptions);
+ isMultiTenant ? "tenantId, ": "",
+ String.format(tableDDLOptions, autoSeqName));
conn.createStatement().execute(ddl);
-
+
+
+ String baseViewName = generateRandomString();
+ String metricView1 = baseViewName + "_VIEW1";
+ String metricView2 = baseViewName + "_VIEW2";
+ String metricView3 = baseViewName + "_VIEW3";
+ String metricView4 = baseViewName + "_VIEW4";
try {
viewConn1.createStatement().execute(
- "CREATE VIEW metric1 AS SELECT * FROM metric_table");
+ "CREATE VIEW " + metricView1 + " AS SELECT * FROM " + tableName);
fail("Auto-partition sequence must be created before view is created");
} catch (SequenceNotFoundException e) {
}
conn.createStatement().execute(
- "CREATE SEQUENCE TSDB.metric_id_seq start with " + (Integer.MAX_VALUE-2) + " cache 1");
+ "CREATE SEQUENCE " + autoSeqName + " start with " + (Integer.MAX_VALUE-2) + " cache 1");
viewConn1.createStatement().execute(
- "CREATE VIEW metric1 AS SELECT * FROM metric_table WHERE val2=1.2");
+ "CREATE VIEW " + metricView1 + " AS SELECT * FROM " + tableName + " WHERE val2=1.2");
// create a view without a where clause
viewConn1.createStatement().execute(
- "CREATE VIEW metric2 AS SELECT * FROM metric_table");
+ "CREATE VIEW " + metricView2 + " AS SELECT * FROM " + tableName);
// create a view with a complex where clause
viewConn1.createStatement().execute(
- "CREATE VIEW metric3 AS SELECT * FROM metric_table WHERE val1=1.0 OR val2=2.0");
+ "CREATE VIEW " + metricView3 + " AS SELECT * FROM " + tableName + " WHERE val1=1.0 OR val2=2.0");
try {
viewConn1.createStatement().execute(
- "CREATE VIEW metric4 AS SELECT * FROM metric_table");
+ "CREATE VIEW " + metricView4 + " AS SELECT * FROM " + tableName);
fail("Creating a view with a partition id that is too large should fail");
} catch (SQLException e) {
assertEquals(SQLExceptionCode.CANNOT_COERCE_AUTO_PARTITION_ID.getErrorCode(),
@@ -132,23 +141,23 @@ public class AutoPartitionViewsIT extends BaseHBaseManagedTimeIT {
if (isMultiTenant) {
// load tables into cache
- viewConn1.createStatement().execute("SELECT * FROM METRIC1");
- viewConn1.createStatement().execute("SELECT * FROM METRIC2");
- viewConn1.createStatement().execute("SELECT * FROM METRIC3");
+ viewConn1.createStatement().execute("SELECT * FROM " + metricView1);
+ viewConn1.createStatement().execute("SELECT * FROM " + metricView2);
+ viewConn1.createStatement().execute("SELECT * FROM " + metricView3);
}
PhoenixConnection pconn = viewConn1.unwrap(PhoenixConnection.class);
- PTable view1 = pconn.getTable(new PTableKey(pconn.getTenantId(), "METRIC1"));
- PTable view2 = pconn.getTable(new PTableKey(pconn.getTenantId(), "METRIC2"));
- PTable view3 = pconn.getTable(new PTableKey(pconn.getTenantId(), "METRIC3"));
+ PTable view1 = pconn.getTable(new PTableKey(pconn.getTenantId(), metricView1));
+ PTable view2 = pconn.getTable(new PTableKey(pconn.getTenantId(), metricView2));
+ PTable view3 = pconn.getTable(new PTableKey(pconn.getTenantId(), metricView3));
// verify the view statement was set correctly
String expectedViewStatement1 =
- "SELECT * FROM \"METRIC_TABLE\" WHERE VAL2 = 1.2 AND METRICID = "
+ "SELECT * FROM \"" + tableName + "\" WHERE VAL2 = 1.2 AND METRICID = "
+ (Integer.MAX_VALUE - 2);
String expectedViewStatement2 =
- "SELECT * FROM \"METRIC_TABLE\" WHERE METRICID = " + (Integer.MAX_VALUE - 1);
+ "SELECT * FROM \"" + tableName + "\" WHERE METRICID = " + (Integer.MAX_VALUE - 1);
String expectedViewStatement3 =
- "SELECT * FROM \"METRIC_TABLE\" WHERE (VAL1 = 1.0 OR VAL2 = 2.0) AND METRICID = " + Integer.MAX_VALUE;
+ "SELECT * FROM \"" + tableName + "\" WHERE (VAL1 = 1.0 OR VAL2 = 2.0) AND METRICID = " + Integer.MAX_VALUE;
assertEquals("Unexpected view statement", expectedViewStatement1,
view1.getViewStatement());
assertEquals("Unexpected view statement", expectedViewStatement2,
@@ -181,13 +190,13 @@ public class AutoPartitionViewsIT extends BaseHBaseManagedTimeIT {
expectedPartition3, partitionCol3.getViewConstant());
// verify that the table was created correctly on the server
- viewConn2.createStatement().execute("SELECT * FROM METRIC1");
- viewConn2.createStatement().execute("SELECT * FROM METRIC2");
- viewConn2.createStatement().execute("SELECT * FROM METRIC3");
+ viewConn2.createStatement().execute("SELECT * FROM " + metricView1);
+ viewConn2.createStatement().execute("SELECT * FROM " + metricView2 );
+ viewConn2.createStatement().execute("SELECT * FROM " + metricView3);
pconn = viewConn2.unwrap(PhoenixConnection.class);
- view1 = pconn.getTable(new PTableKey(pconn.getTenantId(), "METRIC1"));
- view2 = pconn.getTable(new PTableKey(pconn.getTenantId(), "METRIC2"));
- view3 = pconn.getTable(new PTableKey(pconn.getTenantId(), "METRIC3"));
+ view1 = pconn.getTable(new PTableKey(pconn.getTenantId(), metricView1));
+ view2 = pconn.getTable(new PTableKey(pconn.getTenantId(), metricView2));
+ view3 = pconn.getTable(new PTableKey(pconn.getTenantId(), metricView3));
// verify the view statement was set correctly
assertEquals("Unexpected view statement", expectedViewStatement1,
@@ -225,37 +234,44 @@ public class AutoPartitionViewsIT extends BaseHBaseManagedTimeIT {
Connection viewConn2 =
isMultiTenant ? DriverManager.getConnection(TENANT_SPECIFIC_URL2)
: DriverManager.getConnection(getUrl())) {
+ String tableName = generateRandomString();
+ String autoSeqName = generateRandomString();
+
String ddl =
String.format(
- "CREATE TABLE hbase.metric_table (%s metricId INTEGER NOT NULL, val1 DOUBLE, val2 DOUBLE CONSTRAINT PK PRIMARY KEY( %s metricId)) %s",
+ "CREATE TABLE " + tableName + " (%s metricId INTEGER NOT NULL, val1 DOUBLE, val2 DOUBLE CONSTRAINT PK PRIMARY KEY( %s metricId)) %s",
isMultiTenant ? "tenantId VARCHAR NOT NULL, " : "",
isMultiTenant ? "tenantId, ": "",
- tableDDLOptions);
+ String.format(tableDDLOptions, autoSeqName));
conn.createStatement().execute(ddl);
- conn.createStatement().execute("CREATE SEQUENCE TSDB.metric_id_seq CACHE 1");
+ conn.createStatement().execute("CREATE SEQUENCE " + autoSeqName + " CACHE 1");
+
+ String baseViewName = generateRandomString();
+ String metricView1 = baseViewName + "_VIEW1";
+ String metricView2 = baseViewName + "_VIEW2";
// create a view
viewConn1.createStatement().execute(
- "CREATE VIEW metric1 AS SELECT * FROM hbase.metric_table WHERE val2=1.2");
+ "CREATE VIEW " + metricView1 + " AS SELECT * FROM " + tableName + " WHERE val2=1.2");
try {
// create the same view which should fail
viewConn1.createStatement()
- .execute("CREATE VIEW metric1 AS SELECT * FROM hbase.metric_table");
+ .execute("CREATE VIEW " + metricView1 + " AS SELECT * FROM " + tableName);
fail("view should already exist");
} catch (TableAlreadyExistsException e) {
}
// create a second view (without a where clause)
viewConn2.createStatement().execute(
- "CREATE VIEW metric2 AS SELECT * FROM hbase.metric_table");
+ "CREATE VIEW " + metricView2 + " AS SELECT * FROM " + tableName);
// upsert a row into each view
- viewConn1.createStatement().execute("UPSERT INTO metric1(val1) VALUES(1.1)");
+ viewConn1.createStatement().execute("UPSERT INTO " + metricView1 + "(val1) VALUES(1.1)");
viewConn1.commit();
- viewConn2.createStatement().execute("UPSERT INTO metric2(val1,val2) VALUES(2.1,2.2)");
+ viewConn2.createStatement().execute("UPSERT INTO " + metricView2 + "(val1,val2) VALUES(2.1,2.2)");
viewConn2.commit();
// query the base table
- ResultSet rs = conn.createStatement().executeQuery("SELECT * FROM hbase.metric_table");
+ ResultSet rs = conn.createStatement().executeQuery("SELECT * FROM " + tableName);
assertTrue(rs.next());
int offset = 0;
if (isMultiTenant) {
@@ -276,7 +292,7 @@ public class AutoPartitionViewsIT extends BaseHBaseManagedTimeIT {
assertFalse(rs.next());
// query the first view
- rs = viewConn1.createStatement().executeQuery("SELECT * FROM metric1");
+ rs = viewConn1.createStatement().executeQuery("SELECT * FROM " + metricView1);
assertTrue(rs.next());
assertEquals(1, rs.getInt(1));
assertEquals(1.1, rs.getDouble(2), 1e-6);
@@ -284,7 +300,7 @@ public class AutoPartitionViewsIT extends BaseHBaseManagedTimeIT {
assertFalse(rs.next());
// query the second view
- rs = viewConn2.createStatement().executeQuery("SELECT * FROM metric2");
+ rs = viewConn2.createStatement().executeQuery("SELECT * FROM " + metricView2);
assertTrue(rs.next());
assertEquals(2, rs.getInt(1));
assertEquals(2.1, rs.getDouble(2), 1e-6);
@@ -299,32 +315,37 @@ public class AutoPartitionViewsIT extends BaseHBaseManagedTimeIT {
Connection viewConn1 =
isMultiTenant ? DriverManager.getConnection(TENANT_SPECIFIC_URL1)
: DriverManager.getConnection(getUrl())) {
+ String tableName = generateRandomString();
+ String autoSeqName = generateRandomString();
+
String ddl =
String.format(
- "CREATE TABLE hbase.metric_table (%s metricId INTEGER NOT NULL, val1 DOUBLE, CONSTRAINT PK PRIMARY KEY( %s metricId)) %s",
+ "CREATE TABLE " + tableName + " (%s metricId INTEGER NOT NULL, val1 DOUBLE, CONSTRAINT PK PRIMARY KEY( %s metricId)) %s",
isMultiTenant ? "tenantId VARCHAR NOT NULL, " : "",
isMultiTenant ? "tenantId, ": "",
- tableDDLOptions);
+ String.format(tableDDLOptions, autoSeqName));
conn.createStatement().execute(ddl);
- conn.createStatement().execute("CREATE SEQUENCE TSDB.metric_id_seq CACHE 1");
+ conn.createStatement().execute("CREATE SEQUENCE " + autoSeqName + " CACHE 1");
+
+ String metricView = generateRandomString() + "_VIEW";
// create a view
viewConn1.createStatement().execute(
- "CREATE VIEW metric1 AS SELECT * FROM hbase.metric_table");
+ "CREATE VIEW " + metricView + " AS SELECT * FROM " + tableName);
// add a column to the base table
conn.createStatement().execute(
- "ALTER TABLE hbase.metric_table add val2 DOUBLE");
+ "ALTER TABLE " + tableName + " add val2 DOUBLE");
// add a column to the view
viewConn1.createStatement().execute(
- "ALTER VIEW metric1 add val3 DOUBLE");
+ "ALTER VIEW " + metricView + " add val3 DOUBLE");
// upsert a row into the view
- viewConn1.createStatement().execute("UPSERT INTO metric1(val1,val2,val3) VALUES(1.1,1.2,1.3)");
+ viewConn1.createStatement().execute("UPSERT INTO " + metricView + "(val1,val2,val3) VALUES(1.1,1.2,1.3)");
viewConn1.commit();
// query the base table
- ResultSet rs = conn.createStatement().executeQuery("SELECT * FROM hbase.metric_table");
+ ResultSet rs = conn.createStatement().executeQuery("SELECT * FROM " + tableName);
assertTrue(rs.next());
int offset = 0;
if (isMultiTenant) {
@@ -337,7 +358,7 @@ public class AutoPartitionViewsIT extends BaseHBaseManagedTimeIT {
assertFalse(rs.next());
// query the view
- rs = viewConn1.createStatement().executeQuery("SELECT * FROM metric1");
+ rs = viewConn1.createStatement().executeQuery("SELECT * FROM " + metricView);
assertTrue(rs.next());
assertEquals(1, rs.getInt(1));
assertEquals(1.1, rs.getDouble(2), 1e-6);
@@ -347,21 +368,21 @@ public class AutoPartitionViewsIT extends BaseHBaseManagedTimeIT {
// drop a column from the base table
conn.createStatement().execute(
- "ALTER TABLE hbase.metric_table DROP COLUMN val2");
+ "ALTER TABLE " + tableName + " DROP COLUMN val2");
// add a column to the view
viewConn1.createStatement().execute(
- "ALTER VIEW metric1 DROP COLUMN val3");
+ "ALTER VIEW " + metricView + " DROP COLUMN val3");
// verify columns don't exist
try {
- viewConn1.createStatement().executeQuery("SELECT val2 FROM metric1");
+ viewConn1.createStatement().executeQuery("SELECT val2 FROM " + metricView);
fail("column should have been dropped");
}
catch (ColumnNotFoundException e) {
}
try {
- viewConn1.createStatement().executeQuery("SELECT val3 FROM metric1");
+ viewConn1.createStatement().executeQuery("SELECT val3 FROM " + metricView);
fail("column should have been dropped");
}
catch (ColumnNotFoundException e) {
http://git-wip-us.apache.org/repos/asf/phoenix/blob/03df8ab5/phoenix-core/src/it/java/org/apache/phoenix/end2end/BaseHBaseManagedTimeTableReuseIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/BaseHBaseManagedTimeTableReuseIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/BaseHBaseManagedTimeTableReuseIT.java
index 02ebf98..c40ec59 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/BaseHBaseManagedTimeTableReuseIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/BaseHBaseManagedTimeTableReuseIT.java
@@ -20,6 +20,7 @@ package org.apache.phoenix.end2end;
import javax.annotation.concurrent.NotThreadSafe;
+import org.apache.hadoop.conf.Configuration;
import org.apache.phoenix.query.BaseTest;
import org.apache.phoenix.util.ReadOnlyProps;
import org.junit.After;
@@ -47,6 +48,10 @@ import org.junit.experimental.categories.Category;
@NotThreadSafe
@Category(HBaseManagedTimeTableReuseTest.class)
public class BaseHBaseManagedTimeTableReuseIT extends BaseTest {
+ protected static Configuration getTestClusterConfig() {
+ // don't want callers to modify config.
+ return new Configuration(config);
+ }
@BeforeClass
public static void doSetup() throws Exception {
http://git-wip-us.apache.org/repos/asf/phoenix/blob/03df8ab5/phoenix-core/src/it/java/org/apache/phoenix/end2end/BaseQueryIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/BaseQueryIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/BaseQueryIT.java
index aa5068b..9ad12e5 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/BaseQueryIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/BaseQueryIT.java
@@ -18,6 +18,7 @@
package org.apache.phoenix.end2end;
import static org.apache.phoenix.util.TestUtil.TEST_PROPERTIES;
+import static org.apache.phoenix.util.TestUtil.ATABLE_NAME;
import java.io.IOException;
import java.sql.Connection;
@@ -29,7 +30,6 @@ import java.util.List;
import java.util.Map;
import java.util.Properties;
import java.util.concurrent.atomic.AtomicInteger;
-
import org.apache.hadoop.hbase.filter.CompareFilter.CompareOp;
import org.apache.hadoop.hbase.io.ImmutableBytesWritable;
import org.apache.hadoop.hbase.util.Bytes;
@@ -61,7 +61,7 @@ public abstract class BaseQueryIT extends BaseClientManagedTimeIT {
protected static final String tenantId = getOrganizationId();
protected static final String ATABLE_INDEX_NAME = "ATABLE_IDX";
protected static final long BATCH_SIZE = 3;
-
+
@BeforeClass
@Shadower(classBeingShadowed = BaseClientManagedTimeIT.class)
public static void doSetup() throws Exception {
@@ -90,7 +90,7 @@ public abstract class BaseQueryIT extends BaseClientManagedTimeIT {
@Before
public void initTable() throws Exception {
ts = nextTimestamp();
- initATableValues(tenantId, getDefaultSplits(tenantId), date=new Date(System.currentTimeMillis()), ts);
+ initATableValues(ATABLE_NAME, tenantId, getDefaultSplits(tenantId), date=new Date(System.currentTimeMillis()), ts, getUrl());
if (indexDDL != null && indexDDL.length() > 0) {
Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
props.setProperty(PhoenixRuntime.CURRENT_SCN_ATTRIB, Long.toString(ts));
http://git-wip-us.apache.org/repos/asf/phoenix/blob/03df8ab5/phoenix-core/src/it/java/org/apache/phoenix/end2end/BaseTenantSpecificViewIndexIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/BaseTenantSpecificViewIndexIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/BaseTenantSpecificViewIndexIT.java
index 04f4268..e0916a9 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/BaseTenantSpecificViewIndexIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/BaseTenantSpecificViewIndexIT.java
@@ -35,7 +35,7 @@ import org.apache.phoenix.util.QueryUtil;
import com.google.common.collect.Lists;
-public class BaseTenantSpecificViewIndexIT extends BaseHBaseManagedTimeIT {
+public class BaseTenantSpecificViewIndexIT extends BaseHBaseManagedTimeTableReuseIT {
public static final String TENANT1_ID = "tenant1";
public static final String TENANT2_ID = "tenant2";
@@ -48,24 +48,26 @@ public class BaseTenantSpecificViewIndexIT extends BaseHBaseManagedTimeIT {
}
protected void testUpdatableView(Integer saltBuckets, boolean localIndex) throws Exception {
- createBaseTable("t", saltBuckets, true);
+ String tableName = generateRandomString();
+ createBaseTable(tableName, saltBuckets, true);
Connection conn = createTenantConnection(TENANT1_ID);
try {
- createAndPopulateTenantView(conn, TENANT1_ID, "t", "");
- createAndVerifyIndex(conn, saltBuckets, TENANT1_ID, "", localIndex);
- verifyViewData(conn, "");
+ String viewName = createAndPopulateTenantView(conn, TENANT1_ID, tableName, "");
+ createAndVerifyIndex(conn, viewName, tableName, saltBuckets, TENANT1_ID, "", localIndex);
+ verifyViewData(conn, viewName, "");
} finally {
try { conn.close();} catch (Exception ignored) {}
}
}
protected void testUpdatableViewNonString(Integer saltBuckets, boolean localIndex) throws Exception {
- createBaseTable("t", saltBuckets, false);
+ String tableName = generateRandomString();
+ createBaseTable(tableName, saltBuckets, false);
Connection conn = createTenantConnection(NON_STRING_TENANT_ID);
try {
- createAndPopulateTenantView(conn, NON_STRING_TENANT_ID, "t", "");
- createAndVerifyIndexNonStringTenantId(conn, NON_STRING_TENANT_ID, "");
- verifyViewData(conn, "");
+ String viewName = createAndPopulateTenantView(conn, NON_STRING_TENANT_ID, tableName, "");
+ createAndVerifyIndexNonStringTenantId(conn, viewName, tableName, NON_STRING_TENANT_ID, "");
+ verifyViewData(conn, viewName, "");
} finally {
try { conn.close();} catch (Exception ignored) {}
}
@@ -76,7 +78,8 @@ public class BaseTenantSpecificViewIndexIT extends BaseHBaseManagedTimeIT {
}
protected void testUpdatableViewsWithSameNameDifferentTenants(Integer saltBuckets, boolean localIndex) throws Exception {
- createBaseTable("t", saltBuckets, true);
+ String tableName = generateRandomString();
+ createBaseTable(tableName, saltBuckets, true);
Connection conn1 = createTenantConnection(TENANT1_ID);
Connection conn2 = createTenantConnection(TENANT2_ID);
try {
@@ -84,14 +87,14 @@ public class BaseTenantSpecificViewIndexIT extends BaseHBaseManagedTimeIT {
String prefixForTenant2Data = "TII";
// tenant views with same name for two different tables
- createAndPopulateTenantView(conn1, TENANT1_ID, "t", prefixForTenant1Data);
- createAndPopulateTenantView(conn2, TENANT2_ID, "t", prefixForTenant2Data);
+ String viewName1 = createAndPopulateTenantView(conn1, TENANT1_ID, tableName, prefixForTenant1Data);
+ String viewName2 = createAndPopulateTenantView(conn2, TENANT2_ID, tableName, prefixForTenant2Data);
- createAndVerifyIndex(conn1, saltBuckets, TENANT1_ID, prefixForTenant1Data, localIndex);
- createAndVerifyIndex(conn2, saltBuckets, TENANT2_ID, prefixForTenant2Data, localIndex);
+ createAndVerifyIndex(conn1, viewName1, tableName, saltBuckets, TENANT1_ID, prefixForTenant1Data, localIndex);
+ createAndVerifyIndex(conn2, viewName2, tableName, saltBuckets, TENANT2_ID, prefixForTenant2Data, localIndex);
- verifyViewData(conn1, prefixForTenant1Data);
- verifyViewData(conn2, prefixForTenant2Data);
+ verifyViewData(conn1, viewName1, prefixForTenant1Data);
+ verifyViewData(conn2, viewName2, prefixForTenant2Data);
} finally {
try { conn1.close();} catch (Exception ignored) {}
try { conn2.close();} catch (Exception ignored) {}
@@ -111,51 +114,56 @@ public class BaseTenantSpecificViewIndexIT extends BaseHBaseManagedTimeIT {
conn.close();
}
- private void createAndPopulateTenantView(Connection conn, String tenantId, String baseTable, String valuePrefix) throws SQLException {
- String ddl = "CREATE VIEW v(v2 VARCHAR) AS SELECT * FROM " + baseTable + " WHERE k1 = 1";
+ private String createAndPopulateTenantView(Connection conn, String tenantId, String baseTable, String valuePrefix) throws SQLException {
+ String viewName = generateRandomString();
+ String ddl = "CREATE VIEW " + viewName + "(v2 VARCHAR) AS SELECT * FROM " + baseTable + " WHERE k1 = 1";
conn.createStatement().execute(ddl);
- tenantViewsToDelete.add(new Pair<String, String>(tenantId, "v"));
+ tenantViewsToDelete.add(new Pair<String, String>(tenantId, viewName ));
for (int i = 0; i < 10; i++) {
- conn.createStatement().execute("UPSERT INTO v(k2,v1,v2) VALUES(" + i + ",'" + valuePrefix + "v1-" + (i%5) + "','" + valuePrefix + "v2-" + (i%2) + "')");
+ conn.createStatement().execute("UPSERT INTO " + viewName + "(k2,v1,v2) VALUES(" + i + ",'" + valuePrefix + "v1-" + (i%5) + "','" + valuePrefix + "v2-" + (i%2) + "')");
}
conn.commit();
+ return viewName;
}
- private void createAndVerifyIndex(Connection conn, Integer saltBuckets, String tenantId, String valuePrefix, boolean localIndex) throws SQLException {
+ private void createAndVerifyIndex(Connection conn, String viewName, String tableName, Integer saltBuckets, String tenantId, String valuePrefix, boolean localIndex) throws SQLException {
+ String indexName = generateRandomString();
if(localIndex){
- conn.createStatement().execute("CREATE LOCAL INDEX i ON v(v2)");
+ conn.createStatement().execute("CREATE LOCAL INDEX " + indexName + " ON " + viewName + "(v2)");
} else {
- conn.createStatement().execute("CREATE INDEX i ON v(v2)");
+ conn.createStatement().execute("CREATE INDEX " + indexName + " ON " + viewName + "(v2)");
}
- conn.createStatement().execute("UPSERT INTO v(k2,v1,v2) VALUES (-1, 'blah', 'superblah')"); // sanity check that we can upsert after index is there
+ conn.createStatement().execute("UPSERT INTO " + viewName + "(k2,v1,v2) VALUES (-1, 'blah', 'superblah')"); // sanity check that we can upsert after index is there
conn.commit();
- ResultSet rs = conn.createStatement().executeQuery("EXPLAIN SELECT k1, k2, v2 FROM v WHERE v2='" + valuePrefix + "v2-1'");
+ ResultSet rs = conn.createStatement().executeQuery("EXPLAIN SELECT k1, k2, v2 FROM " + viewName + " WHERE v2='" + valuePrefix + "v2-1'");
if(localIndex){
assertEquals(saltBuckets == null ?
- "CLIENT PARALLEL 1-WAY RANGE SCAN OVER T [1,'" + tenantId + "','" + valuePrefix + "v2-1']\n"
+ "CLIENT PARALLEL 1-WAY RANGE SCAN OVER " + tableName + " [1,'" + tenantId + "','" + valuePrefix + "v2-1']\n"
+ " SERVER FILTER BY FIRST KEY ONLY\n"
+ "CLIENT MERGE SORT" :
- "CLIENT PARALLEL 3-WAY RANGE SCAN OVER T [1,'" + tenantId + "','" + valuePrefix + "v2-1']\n"
+ "CLIENT PARALLEL 3-WAY RANGE SCAN OVER " + tableName + " [1,'" + tenantId + "','" + valuePrefix + "v2-1']\n"
+ " SERVER FILTER BY FIRST KEY ONLY\n"
+ "CLIENT MERGE SORT", QueryUtil.getExplainPlan(rs));
} else {
String expected = saltBuckets == null ?
- "CLIENT PARALLEL 1-WAY RANGE SCAN OVER _IDX_T [-32768,'" + tenantId + "','" + valuePrefix + "v2-1']\n"
+ "CLIENT PARALLEL 1-WAY RANGE SCAN OVER _IDX_" + tableName + " [-32768,'" + tenantId + "','" + valuePrefix + "v2-1']\n"
+ " SERVER FILTER BY FIRST KEY ONLY" :
- "CLIENT PARALLEL 3-WAY RANGE SCAN OVER _IDX_T [0,-32768,'" + tenantId + "','" + valuePrefix + "v2-1'] - ["+(saltBuckets.intValue()-1)+",-32768,'" + tenantId + "','" + valuePrefix + "v2-1']\n"
+ "CLIENT PARALLEL 3-WAY RANGE SCAN OVER _IDX_" + tableName + " [0,-32768,'" + tenantId + "','" + valuePrefix + "v2-1'] - ["+(saltBuckets.intValue()-1)+",-32768,'" + tenantId + "','" + valuePrefix + "v2-1']\n"
+
+ " SERVER FILTER BY FIRST KEY ONLY\n"
+ "CLIENT MERGE SORT";
assertEquals(expected, QueryUtil.getExplainPlan(rs));
}
}
- private void createAndVerifyIndexNonStringTenantId(Connection conn, String tenantId, String valuePrefix) throws SQLException {
- conn.createStatement().execute("CREATE LOCAL INDEX i ON v(v2)");
- conn.createStatement().execute("UPSERT INTO v(k2,v1,v2) VALUES (-1, 'blah', 'superblah')"); // sanity check that we can upsert after index is there
+ private void createAndVerifyIndexNonStringTenantId(Connection conn, String viewName, String tableName, String tenantId, String valuePrefix) throws SQLException {
+ String indexName = generateRandomString();
+ conn.createStatement().execute("CREATE LOCAL INDEX " + indexName + " ON " + viewName + "(v2)");
+ conn.createStatement().execute("UPSERT INTO " + viewName + "(k2,v1,v2) VALUES (-1, 'blah', 'superblah')"); // sanity check that we can upsert after index is there
conn.commit();
- ResultSet rs = conn.createStatement().executeQuery("EXPLAIN SELECT k1, k2, v2 FROM v WHERE v2='" + valuePrefix + "v2-1'");
+ ResultSet rs = conn.createStatement().executeQuery("EXPLAIN SELECT k1, k2, v2 FROM " + viewName + " WHERE v2='" + valuePrefix + "v2-1'");
assertEquals(
- "CLIENT PARALLEL 1-WAY RANGE SCAN OVER T [1," + tenantId + ",'" + valuePrefix + "v2-1']\n"
+ "CLIENT PARALLEL 1-WAY RANGE SCAN OVER " + tableName + " [1," + tenantId + ",'" + valuePrefix + "v2-1']\n"
+ " SERVER FILTER BY FIRST KEY ONLY\n"
+ "CLIENT MERGE SORT", QueryUtil.getExplainPlan(rs));
}
@@ -167,8 +175,8 @@ public class BaseTenantSpecificViewIndexIT extends BaseHBaseManagedTimeIT {
}
@SuppressWarnings("unchecked")
- private void verifyViewData(Connection conn, String valuePrefix) throws SQLException {
- String query = "SELECT k1, k2, v2 FROM v WHERE v2='" + valuePrefix + "v2-1'";
+ private void verifyViewData(Connection conn, String viewName, String valuePrefix) throws SQLException {
+ String query = "SELECT k1, k2, v2 FROM " + viewName + " WHERE v2='" + valuePrefix + "v2-1'";
ResultSet rs = conn.createStatement().executeQuery(query);
List<List<Object>> expectedResultsA = Lists.newArrayList(
Arrays.<Object>asList(1,1, valuePrefix + "v2-1"),
http://git-wip-us.apache.org/repos/asf/phoenix/blob/03df8ab5/phoenix-core/src/it/java/org/apache/phoenix/end2end/BinaryRowKeyIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/BinaryRowKeyIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/BinaryRowKeyIT.java
index 544284d..5f656e9 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/BinaryRowKeyIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/BinaryRowKeyIT.java
@@ -34,15 +34,16 @@ import org.apache.phoenix.util.PropertiesUtil;
import org.junit.Test;
-public class BinaryRowKeyIT extends BaseHBaseManagedTimeIT {
+public class BinaryRowKeyIT extends BaseHBaseManagedTimeTableReuseIT {
- private static void initTableValues() throws SQLException {
+ private static void initTableValues(String tableName) throws SQLException {
Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
Connection conn = DriverManager.getConnection(getUrl(), props);
conn.setAutoCommit(false);
try {
- String ddl = "CREATE TABLE test_table" +
+
+ String ddl = "CREATE TABLE " + tableName +
" (a_binary binary(10) not null, \n" +
" a_string varchar not null, \n" +
" b_binary varbinary \n" +
@@ -52,7 +53,7 @@ public class BinaryRowKeyIT extends BaseHBaseManagedTimeIT {
String query;
PreparedStatement stmt;
- query = "UPSERT INTO test_table"
+ query = "UPSERT INTO " + tableName
+ "(a_binary, a_string) "
+ "VALUES(?,?)";
stmt = conn.prepareStatement(query);
@@ -76,11 +77,12 @@ public class BinaryRowKeyIT extends BaseHBaseManagedTimeIT {
Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
Connection conn = DriverManager.getConnection(getUrl(), props);
try {
- initTableValues();
+ String tableName = generateRandomString();
+ initTableValues(tableName);
conn.setAutoCommit(true);
- conn.createStatement().execute("DELETE FROM test_table");
+ conn.createStatement().execute("DELETE FROM " + tableName );
- String query = "UPSERT INTO test_table"
+ String query = "UPSERT INTO " + tableName
+ "(a_binary, a_string) "
+ "VALUES(?,?)";
PreparedStatement stmt = conn.prepareStatement(query);
@@ -88,7 +90,7 @@ public class BinaryRowKeyIT extends BaseHBaseManagedTimeIT {
stmt.setString(2, "a");
stmt.execute();
- ResultSet rs = conn.createStatement().executeQuery("SELECT a_string FROM test_table");
+ ResultSet rs = conn.createStatement().executeQuery("SELECT a_string FROM " + tableName);
assertTrue(rs.next());
assertEquals("a",rs.getString(1));
assertFalse(rs.next());
@@ -103,9 +105,9 @@ public class BinaryRowKeyIT extends BaseHBaseManagedTimeIT {
Connection conn = DriverManager.getConnection(getUrl(), props);
try {
- initTableValues();
-
- String query = "SELECT * FROM test_table";
+ String tableName = generateRandomString();
+ initTableValues(tableName);
+ String query = "SELECT * FROM " + tableName;
PreparedStatement stmt = conn.prepareStatement(query);
ResultSet rs = stmt.executeQuery();
@@ -129,15 +131,16 @@ public class BinaryRowKeyIT extends BaseHBaseManagedTimeIT {
Connection conn = DriverManager.getConnection(getUrl(), props);
try {
- initTableValues();
+ String tableName = generateRandomString();
+ initTableValues(tableName);
- String query = "UPSERT INTO test_table (a_binary, a_string, b_binary) "
- + " SELECT a_binary, a_string, a_binary FROM test_table";
+ String query = "UPSERT INTO " + tableName + " (a_binary, a_string, b_binary) "
+ + " SELECT a_binary, a_string, a_binary FROM " + tableName;
PreparedStatement stmt = conn.prepareStatement(query);
stmt.execute();
conn.commit();
- query = "SELECT a_binary, b_binary FROM test_table";
+ query = "SELECT a_binary, b_binary FROM " + tableName;
stmt = conn.prepareStatement(query);
ResultSet rs = stmt.executeQuery();