phoenix-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From jamestay...@apache.org
Subject [14/41] PHOENIX-130 Separate execution of slow (integration) tests from fast unit tests (Gabriel Reid)
Date Wed, 12 Mar 2014 21:31:41 GMT
http://git-wip-us.apache.org/repos/asf/incubator-phoenix/blob/8d6e2a58/phoenix-core/src/test/java/org/apache/phoenix/end2end/InMemoryOrderByTest.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/test/java/org/apache/phoenix/end2end/InMemoryOrderByTest.java b/phoenix-core/src/test/java/org/apache/phoenix/end2end/InMemoryOrderByTest.java
deleted file mode 100644
index 059d2f9..0000000
--- a/phoenix-core/src/test/java/org/apache/phoenix/end2end/InMemoryOrderByTest.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.phoenix.end2end;
-
-import java.util.Map;
-
-import org.junit.BeforeClass;
-
-import com.google.common.collect.Maps;
-import org.apache.phoenix.query.QueryServices;
-import org.apache.phoenix.util.ReadOnlyProps;
-
-public class InMemoryOrderByTest extends OrderByTest {
-
-    public InMemoryOrderByTest() {
-    }
-
-    @BeforeClass
-    public static void doSetup() throws Exception {
-        Map<String,String> props = Maps.newHashMapWithExpectedSize(3);
-        props.put(QueryServices.SPOOL_THRESHOLD_BYTES_ATTRIB, Integer.toString(1024*1024));
-        // Must update config before starting server
-        startServer(getUrl(), new ReadOnlyProps(props.entrySet().iterator()));
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-phoenix/blob/8d6e2a58/phoenix-core/src/test/java/org/apache/phoenix/end2end/IsNullTest.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/test/java/org/apache/phoenix/end2end/IsNullTest.java b/phoenix-core/src/test/java/org/apache/phoenix/end2end/IsNullTest.java
deleted file mode 100644
index 3338261..0000000
--- a/phoenix-core/src/test/java/org/apache/phoenix/end2end/IsNullTest.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.phoenix.end2end;
-
-import static org.apache.phoenix.util.TestUtil.PHOENIX_JDBC_URL;
-import static org.junit.Assert.*;
-
-import java.sql.*;
-import java.util.Properties;
-
-import org.junit.Test;
-
-import org.apache.phoenix.util.PhoenixRuntime;
-
-
-public class IsNullTest extends BaseClientManagedTimeTest {
-    @Test
-    public void testIsNullInPk() throws Exception {
-        long ts = nextTimestamp();
-        ensureTableCreated(getUrl(),"IntIntKeyTest",null, ts-2);
-        Properties props = new Properties();
-        props.setProperty(PhoenixRuntime.CURRENT_SCN_ATTRIB, Long.toString(ts + 1)); // Execute at timestamp 1
-        Connection conn = DriverManager.getConnection(PHOENIX_JDBC_URL, props);
-        String upsert = "UPSERT INTO IntIntKeyTest VALUES(4,2)";
-        PreparedStatement upsertStmt = conn.prepareStatement(upsert);
-        int rowsInserted = upsertStmt.executeUpdate();
-        assertEquals(1, rowsInserted);
-        upsert = "UPSERT INTO IntIntKeyTest VALUES(6)";
-        upsertStmt = conn.prepareStatement(upsert);
-        rowsInserted = upsertStmt.executeUpdate();
-        assertEquals(1, rowsInserted);
-        conn.commit();
-        conn.close();
-        
-        props.setProperty(PhoenixRuntime.CURRENT_SCN_ATTRIB, Long.toString(ts + 2)); // Execute at timestamp 1
-        conn = DriverManager.getConnection(PHOENIX_JDBC_URL, props);
-        String select = "SELECT i/j FROM IntIntKeyTest WHERE j IS NULL";
-        ResultSet rs;
-        rs = conn.createStatement().executeQuery(select);
-        assertTrue(rs.next());
-        assertEquals(0,rs.getInt(1));
-        assertTrue(rs.wasNull());
-        assertFalse(rs.next());
-        select = "SELECT i/j FROM IntIntKeyTest WHERE j IS NOT NULL";
-        rs = conn.createStatement().executeQuery(select);
-        assertTrue(rs.next());
-        assertEquals(2,rs.getInt(1));
-        assertFalse(rs.next());
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-phoenix/blob/8d6e2a58/phoenix-core/src/test/java/org/apache/phoenix/end2end/KeyOnlyTest.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/test/java/org/apache/phoenix/end2end/KeyOnlyTest.java b/phoenix-core/src/test/java/org/apache/phoenix/end2end/KeyOnlyTest.java
deleted file mode 100644
index 9c36dac..0000000
--- a/phoenix-core/src/test/java/org/apache/phoenix/end2end/KeyOnlyTest.java
+++ /dev/null
@@ -1,146 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.phoenix.end2end;
-
-import static org.apache.phoenix.util.TestUtil.KEYONLY_NAME;
-import static org.apache.phoenix.util.TestUtil.PHOENIX_JDBC_URL;
-import static org.apache.phoenix.util.TestUtil.TEST_PROPERTIES;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertTrue;
-
-import java.sql.Connection;
-import java.sql.DriverManager;
-import java.sql.PreparedStatement;
-import java.sql.ResultSet;
-import java.util.Properties;
-
-import org.junit.Test;
-
-import org.apache.phoenix.util.PhoenixRuntime;
-
-
-public class KeyOnlyTest extends BaseClientManagedTimeTest {
-    @Test
-    public void testKeyOnly() throws Exception {
-        long ts = nextTimestamp();
-        ensureTableCreated(getUrl(),KEYONLY_NAME,null, ts);
-        initTableValues(ts+1);
-        Properties props = new Properties();
-        
-        props.setProperty(PhoenixRuntime.CURRENT_SCN_ATTRIB, Long.toString(ts+5));
-        Connection conn5 = DriverManager.getConnection(getUrl(), props);
-        String query = "SELECT i1, i2 FROM KEYONLY";
-        PreparedStatement statement = conn5.prepareStatement(query);
-        ResultSet rs = statement.executeQuery();
-        assertTrue(rs.next());
-        assertEquals(1, rs.getInt(1));
-        assertEquals(2, rs.getInt(2));
-        assertTrue(rs.next());
-        assertEquals(3, rs.getInt(1));
-        assertEquals(4, rs.getInt(2));
-        assertFalse(rs.next());
-        conn5.close();
-        
-        props.setProperty(PhoenixRuntime.CURRENT_SCN_ATTRIB, Long.toString(ts+6));
-        Connection conn6 = DriverManager.getConnection(getUrl(), props);
-        conn6.createStatement().execute("ALTER TABLE KEYONLY ADD s1 varchar");
-        conn6.close();
-        
-        props.setProperty(PhoenixRuntime.CURRENT_SCN_ATTRIB, Long.toString(ts+7));
-        Connection conn7 = DriverManager.getConnection(getUrl(), props);
-        PreparedStatement stmt = conn7.prepareStatement(
-                "upsert into " +
-                "KEYONLY VALUES (?, ?, ?)");
-        stmt.setInt(1, 5);
-        stmt.setInt(2, 6);
-        stmt.setString(3, "foo");
-        stmt.execute();
-        conn7.commit();
-        conn7.close();
-        
-        props.setProperty(PhoenixRuntime.CURRENT_SCN_ATTRIB, Long.toString(ts+8));
-        Connection conn8 = DriverManager.getConnection(getUrl(), props);
-        query = "SELECT i1 FROM KEYONLY";
-        statement = conn8.prepareStatement(query);
-        rs = statement.executeQuery();
-        assertTrue(rs.next());
-        assertEquals(1, rs.getInt(1));
-        assertTrue(rs.next());
-        assertEquals(3, rs.getInt(1));
-        assertTrue(rs.next());
-        assertEquals(5, rs.getInt(1));
-        assertFalse(rs.next());
-        
-        query = "SELECT i1,s1 FROM KEYONLY";
-        statement = conn8.prepareStatement(query);
-        rs = statement.executeQuery();
-        assertTrue(rs.next());
-        assertEquals(1, rs.getInt(1));
-        assertEquals(null, rs.getString(2));
-        assertTrue(rs.next());
-        assertEquals(3, rs.getInt(1));
-        assertEquals(null, rs.getString(2));
-        assertTrue(rs.next());
-        assertEquals(5, rs.getInt(1));
-        assertEquals("foo", rs.getString(2));
-        assertFalse(rs.next());
-
-        conn8.close();
-    }
-    
-    @Test
-    public void testOr() throws Exception {
-        long ts = nextTimestamp();
-        ensureTableCreated(getUrl(),KEYONLY_NAME,null, ts);
-        initTableValues(ts+1);
-        Properties props = new Properties();
-        
-        props.setProperty(PhoenixRuntime.CURRENT_SCN_ATTRIB, Long.toString(ts+5));
-        Connection conn5 = DriverManager.getConnection(getUrl(), props);
-        String query = "SELECT i1 FROM KEYONLY WHERE i1 < 2 or i1 = 3";
-        PreparedStatement statement = conn5.prepareStatement(query);
-        ResultSet rs = statement.executeQuery();
-        assertTrue(rs.next());
-        assertEquals(1, rs.getInt(1));
-        assertTrue(rs.next());
-        assertEquals(3, rs.getInt(1));
-        assertFalse(rs.next());
-        conn5.close();
-    }
-        
-    protected static void initTableValues(long ts) throws Exception {
-        String url = PHOENIX_JDBC_URL + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + ts;
-        Properties props = new Properties(TEST_PROPERTIES);
-        Connection conn = DriverManager.getConnection(url, props);
-        PreparedStatement stmt = conn.prepareStatement(
-            "upsert into " +
-            "KEYONLY VALUES (?, ?)");
-        stmt.setInt(1, 1);
-        stmt.setInt(2, 2);
-        stmt.execute();
-        
-        stmt.setInt(1, 3);
-        stmt.setInt(2, 4);
-        stmt.execute();
-        
-        conn.commit();
-        conn.close();
-    }
-        
-}

http://git-wip-us.apache.org/repos/asf/incubator-phoenix/blob/8d6e2a58/phoenix-core/src/test/java/org/apache/phoenix/end2end/MD5FunctionTest.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/test/java/org/apache/phoenix/end2end/MD5FunctionTest.java b/phoenix-core/src/test/java/org/apache/phoenix/end2end/MD5FunctionTest.java
deleted file mode 100644
index 6396cb1..0000000
--- a/phoenix-core/src/test/java/org/apache/phoenix/end2end/MD5FunctionTest.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.phoenix.end2end;
-
-import static org.junit.Assert.assertArrayEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertTrue;
-
-import java.security.MessageDigest;
-import java.sql.Connection;
-import java.sql.DriverManager;
-import java.sql.PreparedStatement;
-import java.sql.ResultSet;
-
-import org.junit.Test;
-
-public class MD5FunctionTest extends BaseHBaseManagedTimeTest {
-  
-  @Test
-  public void testRetrieve() throws Exception {
-      String testString = "mwalsh";
-      
-      Connection conn = DriverManager.getConnection(getUrl());
-      String ddl = "CREATE TABLE IF NOT EXISTS MD5_RETRIEVE_TEST (pk VARCHAR NOT NULL PRIMARY KEY)";
-      conn.createStatement().execute(ddl);
-      String dml = String.format("UPSERT INTO MD5_RETRIEVE_TEST VALUES('%s')", testString);
-      conn.createStatement().execute(dml);
-      conn.commit();
-      
-      ResultSet rs = conn.createStatement().executeQuery("SELECT MD5(pk) FROM MD5_RETRIEVE_TEST");
-      assertTrue(rs.next());
-      byte[] first = MessageDigest.getInstance("MD5").digest(testString.getBytes());
-      byte[] second = rs.getBytes(1);
-      assertArrayEquals(first, second);
-      assertFalse(rs.next());
-  }      
-  
-  @Test
-  public void testUpsert() throws Exception {
-      String testString1 = "mwalsh1";
-      String testString2 = "mwalsh2";
-      
-      Connection conn = DriverManager.getConnection(getUrl());
-      String ddl = "CREATE TABLE IF NOT EXISTS MD5_UPSERT_TEST (k1 binary(16) NOT NULL,k2 binary(16) NOT NULL  CONSTRAINT pk PRIMARY KEY (k1, k2))";
-      conn.createStatement().execute(ddl);
-      String dml = String.format("UPSERT INTO MD5_UPSERT_TEST VALUES(md5('%s'),md5('%s'))", testString1, testString2);
-      conn.createStatement().execute(dml);
-      conn.commit();
-      
-      ResultSet rs = conn.createStatement().executeQuery("SELECT k1,k2 FROM MD5_UPSERT_TEST");
-      assertTrue(rs.next());
-      byte[] pk1 = MessageDigest.getInstance("MD5").digest(testString1.getBytes());
-      byte[] pk2 = MessageDigest.getInstance("MD5").digest(testString2.getBytes());
-      assertArrayEquals(pk1, rs.getBytes(1));
-      assertArrayEquals(pk2, rs.getBytes(2));
-      assertFalse(rs.next());
-      PreparedStatement stmt = conn.prepareStatement("SELECT k1,k2 FROM MD5_UPSERT_TEST WHERE k1=md5(?)");
-      stmt.setString(1, testString1);
-      rs = stmt.executeQuery();
-      assertTrue(rs.next());
-      byte[] second1 = rs.getBytes(1);
-      byte[] second2 = rs.getBytes(2);
-      assertArrayEquals(pk1, second1);
-      assertArrayEquals(pk2, second2);
-      assertFalse(rs.next());
-  }                                                           
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-phoenix/blob/8d6e2a58/phoenix-core/src/test/java/org/apache/phoenix/end2end/MultiCfQueryExecTest.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/test/java/org/apache/phoenix/end2end/MultiCfQueryExecTest.java b/phoenix-core/src/test/java/org/apache/phoenix/end2end/MultiCfQueryExecTest.java
deleted file mode 100644
index 73a9c53..0000000
--- a/phoenix-core/src/test/java/org/apache/phoenix/end2end/MultiCfQueryExecTest.java
+++ /dev/null
@@ -1,229 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.phoenix.end2end;
-
-import static org.apache.phoenix.util.TestUtil.PHOENIX_JDBC_URL;
-import static org.apache.phoenix.util.TestUtil.TEST_PROPERTIES;
-import static org.junit.Assert.*;
-
-import java.math.BigDecimal;
-import java.sql.*;
-import java.util.Properties;
-
-import org.junit.Test;
-
-import org.apache.phoenix.util.PhoenixRuntime;
-
-
-public class MultiCfQueryExecTest extends BaseClientManagedTimeTest {
-    private static final String MULTI_CF = "MULTI_CF";
-    
-    protected static void initTableValues(long ts) throws Exception {
-        ensureTableCreated(getUrl(),MULTI_CF,null, ts-2);
-        
-        String url = PHOENIX_JDBC_URL + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + ts;
-        Properties props = new Properties(TEST_PROPERTIES);
-        Connection conn = DriverManager.getConnection(url, props);
-        conn.setAutoCommit(true);
-        // Insert all rows at ts
-        PreparedStatement stmt = conn.prepareStatement(
-                "upsert into " +
-                "MULTI_CF(" +
-                "    ID, " +
-                "    TRANSACTION_COUNT, " +
-                "    CPU_UTILIZATION, " +
-                "    DB_CPU_UTILIZATION," +
-                "    UNIQUE_USER_COUNT," +
-                "    F.RESPONSE_TIME," +
-                "    G.RESPONSE_TIME)" +
-                "VALUES (?, ?, ?, ?, ?, ?, ?)");
-        stmt.setString(1, "000000000000001");
-        stmt.setInt(2, 100);
-        stmt.setBigDecimal(3, BigDecimal.valueOf(0.5));
-        stmt.setBigDecimal(4, BigDecimal.valueOf(0.2));
-        stmt.setInt(5, 1000);
-        stmt.setLong(6, 11111);
-        stmt.setLong(7, 11112);
-        stmt.execute();
-        stmt.setString(1, "000000000000002");
-        stmt.setInt(2, 200);
-        stmt.setBigDecimal(3, BigDecimal.valueOf(2.5));
-        stmt.setBigDecimal(4, BigDecimal.valueOf(2.2));
-        stmt.setInt(5, 2000);
-        stmt.setLong(6, 2222);
-        stmt.setLong(7, 22222);
-        stmt.execute();
-    }
-    
-    @Test
-    public void testConstantCount() throws Exception {
-        long ts = nextTimestamp();
-        String query = "SELECT count(1) from multi_cf";
-        String url = PHOENIX_JDBC_URL + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
-        Properties props = new Properties(TEST_PROPERTIES);
-        Connection conn = DriverManager.getConnection(url, props);
-        try {
-            initTableValues(ts);
-            PreparedStatement statement = conn.prepareStatement(query);
-            ResultSet rs = statement.executeQuery();
-            assertTrue(rs.next());
-            assertEquals(2, rs.getLong(1));
-            assertFalse(rs.next());
-        } finally {
-            conn.close();
-        }
-    }
-    
-    @Test
-    public void testCFToDisambiguateInSelectOnly1() throws Exception {
-        long ts = nextTimestamp();
-        String query = "SELECT F.RESPONSE_TIME,G.RESPONSE_TIME from multi_cf where ID = '000000000000002'";
-        String url = PHOENIX_JDBC_URL + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
-        Properties props = new Properties(TEST_PROPERTIES);
-        Connection conn = DriverManager.getConnection(url, props);
-        try {
-            initTableValues(ts);
-            PreparedStatement statement = conn.prepareStatement(query);
-            ResultSet rs = statement.executeQuery();
-            assertTrue(rs.next());
-            assertEquals(2222, rs.getLong(1));
-            assertEquals(22222, rs.getLong(2));
-            assertFalse(rs.next());
-        } finally {
-            conn.close();
-        }
-    }
-    
-    @Test
-    public void testCFToDisambiguateInSelectOnly2() throws Exception {
-        long ts = nextTimestamp();
-        String query = "SELECT F.RESPONSE_TIME,G.RESPONSE_TIME from multi_cf where TRANSACTION_COUNT = 200";
-        String url = PHOENIX_JDBC_URL + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
-        Properties props = new Properties(TEST_PROPERTIES);
-        Connection conn = DriverManager.getConnection(url, props);
-        try {
-            initTableValues(ts);
-            PreparedStatement statement = conn.prepareStatement(query);
-            ResultSet rs = statement.executeQuery();
-            assertTrue(rs.next());
-            assertEquals(2222, rs.getLong(1));
-            assertEquals(22222, rs.getLong(2));
-            assertFalse(rs.next());
-        } finally {
-            conn.close();
-        }
-    }
-    
-    @Test
-    public void testCFToDisambiguate1() throws Exception {
-        long ts = nextTimestamp();
-        String query = "SELECT F.RESPONSE_TIME,G.RESPONSE_TIME from multi_cf where F.RESPONSE_TIME = 2222";
-        String url = PHOENIX_JDBC_URL + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
-        Properties props = new Properties(TEST_PROPERTIES);
-        Connection conn = DriverManager.getConnection(url, props);
-        try {
-            initTableValues(ts);
-            PreparedStatement statement = conn.prepareStatement(query);
-            ResultSet rs = statement.executeQuery();
-            assertTrue(rs.next());
-            assertEquals(2222, rs.getLong(1));
-            assertEquals(22222, rs.getLong(2));
-            assertFalse(rs.next());
-        } finally {
-            conn.close();
-        }
-    }
-    
-    @Test
-    public void testCFToDisambiguate2() throws Exception {
-        long ts = nextTimestamp();
-        String query = "SELECT F.RESPONSE_TIME,G.RESPONSE_TIME from multi_cf where G.RESPONSE_TIME-1 = F.RESPONSE_TIME";
-        String url = PHOENIX_JDBC_URL + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
-        Properties props = new Properties(TEST_PROPERTIES);
-        Connection conn = DriverManager.getConnection(url, props);
-        try {
-            initTableValues(ts);
-            PreparedStatement statement = conn.prepareStatement(query);
-            ResultSet rs = statement.executeQuery();
-            assertTrue(rs.next());
-            assertEquals(11111, rs.getLong(1));
-            assertEquals(11112, rs.getLong(2));
-            assertFalse(rs.next());
-        } finally {
-            conn.close();
-        }
-    }
-    
-    @Test
-    public void testDefaultCFToDisambiguate() throws Exception {
-        long ts = nextTimestamp();
-        initTableValues(ts);
-        
-        String ddl = "ALTER TABLE multi_cf ADD response_time BIGINT";
-        String url = PHOENIX_JDBC_URL + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 3);
-        Connection conn = DriverManager.getConnection(url);
-        conn.createStatement().execute(ddl);
-        conn.close();
-       
-        String dml = "upsert into " +
-        "MULTI_CF(" +
-        "    ID, " +
-        "    RESPONSE_TIME)" +
-        "VALUES ('000000000000003', 333)";
-        url = PHOENIX_JDBC_URL + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 4); // Run query at timestamp 5
-        conn = DriverManager.getConnection(url);
-        conn.createStatement().execute(dml);
-        conn.commit();
-        conn.close();
-
-        String query = "SELECT ID,RESPONSE_TIME from multi_cf where RESPONSE_TIME = 333";
-        url = PHOENIX_JDBC_URL + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
-        conn = DriverManager.getConnection(url);
-        try {
-            PreparedStatement statement = conn.prepareStatement(query);
-            ResultSet rs = statement.executeQuery();
-            assertTrue(rs.next());
-            assertEquals("000000000000003", rs.getString(1));
-            assertEquals(333, rs.getLong(2));
-            assertFalse(rs.next());
-        } finally {
-            conn.close();
-        }
-    }
-    
-    @Test
-    public void testEssentialColumnFamilyForRowKeyFilter() throws Exception {
-        long ts = nextTimestamp();
-        String query = "SELECT F.RESPONSE_TIME,G.RESPONSE_TIME from multi_cf where SUBSTR(ID, 15) = '2'";
-        String url = PHOENIX_JDBC_URL + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
-        Properties props = new Properties(TEST_PROPERTIES);
-        Connection conn = DriverManager.getConnection(url, props);
-        try {
-            initTableValues(ts);
-            PreparedStatement statement = conn.prepareStatement(query);
-            ResultSet rs = statement.executeQuery();
-            assertTrue(rs.next());
-            assertEquals(2222, rs.getLong(1));
-            assertEquals(22222, rs.getLong(2));
-            assertFalse(rs.next());
-        } finally {
-            conn.close();
-        }
-    }
-    
-}

http://git-wip-us.apache.org/repos/asf/incubator-phoenix/blob/8d6e2a58/phoenix-core/src/test/java/org/apache/phoenix/end2end/NativeHBaseTypesTest.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/test/java/org/apache/phoenix/end2end/NativeHBaseTypesTest.java b/phoenix-core/src/test/java/org/apache/phoenix/end2end/NativeHBaseTypesTest.java
deleted file mode 100644
index 9a2a8f6..0000000
--- a/phoenix-core/src/test/java/org/apache/phoenix/end2end/NativeHBaseTypesTest.java
+++ /dev/null
@@ -1,305 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.phoenix.end2end;
-
-import static org.apache.phoenix.util.TestUtil.HBASE_NATIVE;
-import static org.apache.phoenix.util.TestUtil.HBASE_NATIVE_SCHEMA_NAME;
-import static org.apache.phoenix.util.TestUtil.PHOENIX_JDBC_URL;
-import static org.apache.phoenix.util.TestUtil.TEST_PROPERTIES;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
-
-import java.sql.Connection;
-import java.sql.DriverManager;
-import java.sql.PreparedStatement;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Properties;
-
-import org.apache.hadoop.hbase.HColumnDescriptor;
-import org.apache.hadoop.hbase.HTableDescriptor;
-import org.apache.hadoop.hbase.client.Delete;
-import org.apache.hadoop.hbase.client.Get;
-import org.apache.hadoop.hbase.client.HBaseAdmin;
-import org.apache.hadoop.hbase.client.HTableInterface;
-import org.apache.hadoop.hbase.client.Put;
-import org.apache.hadoop.hbase.client.Result;
-import org.apache.hadoop.hbase.client.Row;
-import org.apache.hadoop.hbase.util.Bytes;
-import org.junit.BeforeClass;
-import org.junit.Test;
-
-import org.apache.phoenix.jdbc.PhoenixConnection;
-import org.apache.phoenix.query.ConnectionQueryServices;
-import org.apache.phoenix.query.QueryConstants;
-import org.apache.phoenix.util.ByteUtil;
-import org.apache.phoenix.util.PhoenixRuntime;
-import org.apache.phoenix.util.SchemaUtil;
-
-
-/**
- * 
- * Tests using native HBase types (i.e. Bytes.toBytes methods) for
- * integers and longs. Phoenix can support this if the numbers are
- * positive.
- *
- * 
- * @since 0.1
- */
-public class NativeHBaseTypesTest extends BaseClientManagedTimeTest {
-    private static final byte[] HBASE_NATIVE_BYTES = SchemaUtil.getTableNameAsBytes(HBASE_NATIVE_SCHEMA_NAME, HBASE_NATIVE);
-    private static final byte[] FAMILY_NAME = Bytes.toBytes(SchemaUtil.normalizeIdentifier("1"));
-    private static final byte[][] SPLITS = new byte[][] {Bytes.toBytes(20), Bytes.toBytes(30)};
-    private static final long ts = nextTimestamp();
-    
-    @BeforeClass
-    public static void doBeforeTestSetup() throws Exception {
-        HBaseAdmin admin = driver.getConnectionQueryServices(getUrl(), TEST_PROPERTIES).getAdmin();
-        try {
-            try {
-                admin.disableTable(HBASE_NATIVE_BYTES);
-                admin.deleteTable(HBASE_NATIVE_BYTES);
-            } catch (org.apache.hadoop.hbase.TableNotFoundException e) {
-            }
-            HTableDescriptor descriptor = new HTableDescriptor(HBASE_NATIVE_BYTES);
-            HColumnDescriptor columnDescriptor =  new HColumnDescriptor(FAMILY_NAME);
-            columnDescriptor.setKeepDeletedCells(true);
-            descriptor.addFamily(columnDescriptor);
-            admin.createTable(descriptor, SPLITS);
-            initTableValues();
-        } finally {
-            admin.close();
-        }
-    }
-    
-    private static void initTableValues() throws Exception {
-        ConnectionQueryServices services = driver.getConnectionQueryServices(getUrl(), TEST_PROPERTIES);
-        HTableInterface hTable = services.getTable(SchemaUtil.getTableNameAsBytes(HBASE_NATIVE_SCHEMA_NAME, HBASE_NATIVE));
-        try {
-            // Insert rows using standard HBase mechanism with standard HBase "types"
-            List<Row> mutations = new ArrayList<Row>();
-            byte[] family = Bytes.toBytes("1");
-            byte[] uintCol = Bytes.toBytes("UINT_COL");
-            byte[] ulongCol = Bytes.toBytes("ULONG_COL");
-            byte[] key, bKey;
-            Put put;
-            
-            key = ByteUtil.concat(Bytes.toBytes(10), Bytes.toBytes(100L), Bytes.toBytes("a"));
-            put = new Put(key);
-            put.add(family, uintCol, ts-2, Bytes.toBytes(5));
-            put.add(family, ulongCol, ts-2, Bytes.toBytes(50L));
-            mutations.add(put);
-            put = new Put(key);
-            put.add(family, uintCol, ts, Bytes.toBytes(10));
-            put.add(family, ulongCol, ts, Bytes.toBytes(100L));
-            mutations.add(put);
-            
-            bKey = key = ByteUtil.concat(Bytes.toBytes(20), Bytes.toBytes(200L), Bytes.toBytes("b"));
-            put = new Put(key);
-            put.add(family, uintCol, ts-4, Bytes.toBytes(5000));
-            put.add(family, ulongCol, ts-4, Bytes.toBytes(50000L));
-            mutations.add(put);
-            @SuppressWarnings("deprecation") // FIXME: Remove when unintentionally deprecated method is fixed (HBASE-7870).
-            // FIXME: the version of the Delete constructor without the lock args was introduced
-            // in 0.94.4, thus if we try to use it here we can no longer use the 0.94.2 version
-            // of the client.
-            Delete del = new Delete(key, ts-2, null);
-            mutations.add(del);
-            put = new Put(key);
-            put.add(family, uintCol, ts, Bytes.toBytes(2000));
-            put.add(family, ulongCol, ts, Bytes.toBytes(20000L));
-            mutations.add(put);
-            
-            key = ByteUtil.concat(Bytes.toBytes(30), Bytes.toBytes(300L), Bytes.toBytes("c"));
-            put = new Put(key);
-            put.add(family, uintCol, ts, Bytes.toBytes(3000));
-            put.add(family, ulongCol, ts, Bytes.toBytes(30000L));
-            mutations.add(put);
-            
-            key = ByteUtil.concat(Bytes.toBytes(40), Bytes.toBytes(400L), Bytes.toBytes("d"));
-            put = new Put(key);
-            put.add(family, uintCol, ts, Bytes.toBytes(4000));
-            put.add(family, ulongCol, ts, Bytes.toBytes(40000L));
-            mutations.add(put);
-            
-            hTable.batch(mutations);
-            
-            Result r = hTable.get(new Get(bKey));
-            assertFalse(r.isEmpty());
-        } finally {
-            hTable.close();
-        }
-        // Create Phoenix table after HBase table was created through the native APIs
-        // The timestamp of the table creation must be later than the timestamp of the data
-        ensureTableCreated(getUrl(),HBASE_NATIVE,null, ts+1);
-    }
-    
-    @Test
-    public void testRangeQuery1() throws Exception {
-        String query = "SELECT uint_key, ulong_key, string_key FROM HBASE_NATIVE WHERE uint_key > 20 and ulong_key >= 400";
-        String url = PHOENIX_JDBC_URL + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
-        Properties props = new Properties(TEST_PROPERTIES);
-        Connection conn = DriverManager.getConnection(url, props);
-        try {
-            PreparedStatement statement = conn.prepareStatement(query);
-            ResultSet rs = statement.executeQuery();
-            assertTrue(rs.next());
-            assertEquals(40, rs.getInt(1));
-            assertEquals(400L, rs.getLong(2));
-            assertEquals("d", rs.getString(3));
-            assertFalse(rs.next());
-        } finally {
-            conn.close();
-        }
-    }
-    
-    @Test
-    public void testRangeQuery2() throws Exception {
-        String query = "SELECT uint_key, ulong_key, string_key FROM HBASE_NATIVE WHERE uint_key > 20 and uint_key < 40";
-        String url = PHOENIX_JDBC_URL + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
-        Properties props = new Properties(TEST_PROPERTIES);
-        Connection conn = DriverManager.getConnection(url, props);
-        try {
-            PreparedStatement statement = conn.prepareStatement(query);
-            ResultSet rs = statement.executeQuery();
-            assertTrue(rs.next());
-            assertEquals(30, rs.getInt(1));
-            assertEquals(300L, rs.getLong(2));
-            assertEquals("c", rs.getString(3));
-            assertFalse(rs.next());
-        } finally {
-            conn.close();
-        }
-    }
-    
-    @Test
-    public void testRangeQuery3() throws Exception {
-        String query = "SELECT uint_key, ulong_key, string_key FROM HBASE_NATIVE WHERE ulong_key > 200 and ulong_key < 400";
-        String url = PHOENIX_JDBC_URL + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
-        Properties props = new Properties(TEST_PROPERTIES);
-        Connection conn = DriverManager.getConnection(url, props);
-        try {
-            PreparedStatement statement = conn.prepareStatement(query);
-            ResultSet rs = statement.executeQuery();
-            assertTrue(rs.next());
-            assertEquals(30, rs.getInt(1));
-            assertEquals(300L, rs.getLong(2));
-            assertEquals("c", rs.getString(3));
-            assertFalse(rs.next());
-        } finally {
-            conn.close();
-        }
-    }
-    
-    @Test
-    public void testNegativeAgainstUnsignedNone() throws Exception {
-        String query = "SELECT uint_key, ulong_key, string_key FROM HBASE_NATIVE WHERE ulong_key < -1";
-        String url = PHOENIX_JDBC_URL + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
-        Properties props = new Properties(TEST_PROPERTIES);
-        Connection conn = DriverManager.getConnection(url, props);
-        try {
-            PreparedStatement statement = conn.prepareStatement(query);
-            ResultSet rs = statement.executeQuery();
-            assertFalse(rs.next());
-        } finally {
-            conn.close();
-        }
-    }
-    
-    @Test
-    public void testNegativeAgainstUnsignedAll() throws Exception {
-        String query = "SELECT string_key FROM HBASE_NATIVE WHERE ulong_key > -100";
-        String url = PHOENIX_JDBC_URL + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
-        Properties props = new Properties(TEST_PROPERTIES);
-        Connection conn = DriverManager.getConnection(url, props);
-        try {
-            PreparedStatement statement = conn.prepareStatement(query);
-            ResultSet rs = statement.executeQuery();
-            assertTrue(rs.next());
-            assertEquals("a", rs.getString(1));
-            assertTrue(rs.next());
-            assertEquals("b", rs.getString(1));
-            assertTrue(rs.next());
-            assertEquals("c", rs.getString(1));
-            assertTrue(rs.next());
-            assertEquals("d", rs.getString(1));
-            assertFalse(rs.next());
-        } finally {
-            conn.close();
-        }
-    }
-    
-    @Test
-    public void testNegativeAddNegativeValue() throws Exception {
-        String url = PHOENIX_JDBC_URL + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
-        Properties props = new Properties(TEST_PROPERTIES);
-        Connection conn = DriverManager.getConnection(url, props);
-        try {
-            PreparedStatement stmt = conn.prepareStatement("UPSERT INTO HBASE_NATIVE(uint_key,ulong_key,string_key, uint_col) VALUES(?,?,?,?)");
-            stmt.setInt(1, -1);
-            stmt.setLong(2, 2L);
-            stmt.setString(3,"foo");
-            stmt.setInt(4, 3);
-            stmt.execute();
-            fail();
-        } catch (SQLException e) {
-            assertTrue(e.getMessage().contains("Type mismatch"));
-        }
-    }
-    
-    @Test
-    public void testNegativeCompareNegativeValue() throws Exception {
-        String query = "SELECT string_key FROM HBASE_NATIVE WHERE uint_key > 100000";
-        String url = PHOENIX_JDBC_URL + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 7); // Run query at timestamp 7
-        Properties props = new Properties(TEST_PROPERTIES);
-        PhoenixConnection conn = DriverManager.getConnection(url, props).unwrap(PhoenixConnection.class);
-        HTableInterface hTable = conn.getQueryServices().getTable(SchemaUtil.getTableNameAsBytes(HBASE_NATIVE_SCHEMA_NAME, HBASE_NATIVE));
-        
-        List<Row> mutations = new ArrayList<Row>();
-        byte[] family = Bytes.toBytes("1");
-        byte[] uintCol = Bytes.toBytes("UINT_COL");
-        byte[] ulongCol = Bytes.toBytes("ULONG_COL");
-        byte[] key;
-        Put put;
-        
-        // Need to use native APIs because the Phoenix APIs wouldn't let you insert a
-        // negative number for an unsigned type
-        key = ByteUtil.concat(Bytes.toBytes(-10), Bytes.toBytes(100L), Bytes.toBytes("e"));
-        put = new Put(key);
-        // Insert at later timestamp than other queries in this test are using, so that
-        // we don't affect them
-        put.add(family, uintCol, ts+6, Bytes.toBytes(10));
-        put.add(family, ulongCol, ts+6, Bytes.toBytes(100L));
-        put.add(family, QueryConstants.EMPTY_COLUMN_BYTES, ts+6, ByteUtil.EMPTY_BYTE_ARRAY);
-        mutations.add(put);
-        hTable.batch(mutations);
-    
-        // Demonstrates weakness of HBase Bytes serialization. Negative numbers
-        // show up as bigger than positive numbers
-        PreparedStatement statement = conn.prepareStatement(query);
-        ResultSet rs = statement.executeQuery();
-        assertTrue(rs.next());
-        assertEquals("e", rs.getString(1));
-        assertFalse(rs.next());
-    }
-}
-    

http://git-wip-us.apache.org/repos/asf/incubator-phoenix/blob/8d6e2a58/phoenix-core/src/test/java/org/apache/phoenix/end2end/OrderByTest.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/test/java/org/apache/phoenix/end2end/OrderByTest.java b/phoenix-core/src/test/java/org/apache/phoenix/end2end/OrderByTest.java
deleted file mode 100644
index bc8ce98..0000000
--- a/phoenix-core/src/test/java/org/apache/phoenix/end2end/OrderByTest.java
+++ /dev/null
@@ -1,153 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.phoenix.end2end;
-
-import static org.apache.phoenix.util.TestUtil.PHOENIX_JDBC_URL;
-import static org.apache.phoenix.util.TestUtil.ROW1;
-import static org.apache.phoenix.util.TestUtil.ROW2;
-import static org.apache.phoenix.util.TestUtil.ROW3;
-import static org.apache.phoenix.util.TestUtil.ROW4;
-import static org.apache.phoenix.util.TestUtil.ROW5;
-import static org.apache.phoenix.util.TestUtil.ROW6;
-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.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertTrue;
-
-import java.sql.Connection;
-import java.sql.DriverManager;
-import java.sql.PreparedStatement;
-import java.sql.ResultSet;
-import java.util.Properties;
-
-import org.junit.Ignore;
-import org.junit.Test;
-
-import org.apache.phoenix.util.PhoenixRuntime;
-
-public class OrderByTest extends BaseClientManagedTimeTest {
-
-    @Test
-    public void testMultiOrderByExpr() throws Exception {
-        long ts = nextTimestamp();
-        String tenantId = getOrganizationId();
-        initATableValues(tenantId, getDefaultSplits(tenantId), null, ts);
-        String query = "SELECT entity_id FROM aTable ORDER BY b_string, entity_id";
-        Properties props = new Properties(TEST_PROPERTIES);
-        props.setProperty(PhoenixRuntime.CURRENT_SCN_ATTRIB, Long.toString(ts + 2)); // Execute at timestamp 2
-        Connection conn = DriverManager.getConnection(PHOENIX_JDBC_URL, props);
-        try {
-            PreparedStatement statement = conn.prepareStatement(query);
-            ResultSet rs = statement.executeQuery();
-            assertTrue (rs.next());
-            assertEquals(ROW1,rs.getString(1));
-            assertTrue (rs.next());
-            assertEquals(ROW4,rs.getString(1));
-            assertTrue (rs.next());
-            assertEquals(ROW7,rs.getString(1));
-            assertTrue (rs.next());
-            assertEquals(ROW2,rs.getString(1));
-            assertTrue (rs.next());
-            assertEquals(ROW5,rs.getString(1));
-            assertTrue (rs.next());
-            assertEquals(ROW8,rs.getString(1));
-            assertTrue (rs.next());
-            assertEquals(ROW3,rs.getString(1));
-            assertTrue (rs.next());
-            assertEquals(ROW6,rs.getString(1));
-            assertTrue (rs.next());
-            assertEquals(ROW9,rs.getString(1));
-
-            assertFalse(rs.next());
-        } finally {
-            conn.close();
-        }
-    }
-    
-
-    @Test
-    public void testDescMultiOrderByExpr() throws Exception {
-        long ts = nextTimestamp();
-        String tenantId = getOrganizationId();
-        initATableValues(tenantId, getDefaultSplits(tenantId), null, ts);
-        String query = "SELECT entity_id FROM aTable ORDER BY b_string || entity_id desc";
-        Properties props = new Properties(TEST_PROPERTIES);
-        props.setProperty(PhoenixRuntime.CURRENT_SCN_ATTRIB, Long.toString(ts + 2)); // Execute at timestamp 2
-        Connection conn = DriverManager.getConnection(PHOENIX_JDBC_URL, props);
-        try {
-            PreparedStatement statement = conn.prepareStatement(query);
-            ResultSet rs = statement.executeQuery();
-            assertTrue (rs.next());
-            assertEquals(ROW9,rs.getString(1));
-            assertTrue (rs.next());
-            assertEquals(ROW6,rs.getString(1));
-            assertTrue (rs.next());
-            assertEquals(ROW3,rs.getString(1));
-            assertTrue (rs.next());
-            assertEquals(ROW8,rs.getString(1));
-            assertTrue (rs.next());
-            assertEquals(ROW5,rs.getString(1));
-            assertTrue (rs.next());
-            assertEquals(ROW2,rs.getString(1));
-            assertTrue (rs.next());
-            assertEquals(ROW7,rs.getString(1));
-            assertTrue (rs.next());
-            assertEquals(ROW4,rs.getString(1));
-            assertTrue (rs.next());
-            assertEquals(ROW1,rs.getString(1));
-
-            assertFalse(rs.next());
-        } finally {
-            conn.close();
-        }
-    }
-        
-
-    @Ignore("When reverse scan is in HBase re-enable this test")
-    @Test
-    public void testReverseScan() throws Exception {
-        long ts = nextTimestamp();
-        String tenantId = getOrganizationId();
-        initATableValues(tenantId, getDefaultSplits(tenantId), null, ts);
-        String query = "SELECT entity_id FROM aTable WHERE entity_id >= ? ORDER BY organization_id DESC, entity_id DESC";
-        Properties props = new Properties(TEST_PROPERTIES);
-        props.setProperty(PhoenixRuntime.CURRENT_SCN_ATTRIB, Long.toString(ts + 2)); // Execute at timestamp 2
-        Connection conn = DriverManager.getConnection(PHOENIX_JDBC_URL, props);
-        try {
-            PreparedStatement statement = conn.prepareStatement(query);
-            statement.setString(1, ROW7);
-            ResultSet rs = statement.executeQuery();
-
-            assertTrue (rs.next());
-            assertEquals(ROW9,rs.getString(1));
-            assertTrue (rs.next());
-            assertEquals(ROW8,rs.getString(1));
-            assertTrue (rs.next());
-            assertEquals(ROW7,rs.getString(1));
-
-            assertFalse(rs.next());
-        } finally {
-            conn.close();
-        }
-    }
-    
-
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-phoenix/blob/8d6e2a58/phoenix-core/src/test/java/org/apache/phoenix/end2end/PercentileTest.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/test/java/org/apache/phoenix/end2end/PercentileTest.java b/phoenix-core/src/test/java/org/apache/phoenix/end2end/PercentileTest.java
deleted file mode 100644
index e67393f..0000000
--- a/phoenix-core/src/test/java/org/apache/phoenix/end2end/PercentileTest.java
+++ /dev/null
@@ -1,687 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.phoenix.end2end;
-
-import static org.apache.phoenix.util.TestUtil.*;
-import static org.junit.Assert.*;
-
-import java.math.BigDecimal;
-import java.math.RoundingMode;
-import java.sql.*;
-import java.util.Properties;
-
-import org.apache.phoenix.query.QueryConstants;
-import org.apache.phoenix.util.PhoenixRuntime;
-import org.junit.Test;
-
-public class PercentileTest extends BaseClientManagedTimeTest {
-
-    @Test
-    public void testPercentile() throws Exception {
-        long ts = nextTimestamp();
-        String tenantId = getOrganizationId();
-        initATableValues(tenantId, null, getDefaultSplits(tenantId), null, ts);
-
-        String query = "SELECT PERCENTILE_CONT(0.9) WITHIN GROUP (ORDER BY A_INTEGER ASC) FROM aTable";
-
-        Properties props = new Properties(TEST_PROPERTIES);
-        props.setProperty(PhoenixRuntime.CURRENT_SCN_ATTRIB, Long.toString(ts + 2)); // Execute at
-                                                                                     // timestamp 2
-        Connection conn = DriverManager.getConnection(PHOENIX_JDBC_URL, props);
-        try {
-            PreparedStatement statement = conn.prepareStatement(query);
-            ResultSet rs = statement.executeQuery();
-            assertTrue(rs.next());
-            BigDecimal percentile = rs.getBigDecimal(1);
-            percentile = percentile.setScale(1, RoundingMode.HALF_UP);
-            assertEquals(8.6, percentile.doubleValue(),0.0);
-            assertFalse(rs.next());
-        } finally {
-            conn.close();
-        }
-    }
-
-    @Test
-    public void testPercentileDesc() throws Exception {
-        long ts = nextTimestamp();
-        String tenantId = getOrganizationId();
-        initATableValues(tenantId, null, getDefaultSplits(tenantId), null, ts);
-
-        String query = "SELECT PERCENTILE_CONT(0.9) WITHIN GROUP (ORDER BY A_INTEGER DESC) FROM aTable";
-
-        Properties props = new Properties(TEST_PROPERTIES);
-        props.setProperty(PhoenixRuntime.CURRENT_SCN_ATTRIB, Long.toString(ts + 2)); // Execute at
-                                                                                     // timestamp 2
-        Connection conn = DriverManager.getConnection(PHOENIX_JDBC_URL, props);
-        try {
-            PreparedStatement statement = conn.prepareStatement(query);
-            ResultSet rs = statement.executeQuery();
-            assertTrue(rs.next());
-            BigDecimal percentile = rs.getBigDecimal(1);
-            percentile = percentile.setScale(1, RoundingMode.HALF_UP);
-            assertEquals(1.4, percentile.doubleValue(),0.0);
-            assertFalse(rs.next());
-        } finally {
-            conn.close();
-        }
-    }
-    
-    @Test
-    public void testPercentileWithGroupby() throws Exception {
-        long ts = nextTimestamp();
-        String tenantId = getOrganizationId();
-        initATableValues(tenantId, null, getDefaultSplits(tenantId), null, ts);
-
-        String query = "SELECT A_STRING, PERCENTILE_CONT(0.9) WITHIN GROUP (ORDER BY A_INTEGER ASC) FROM aTable GROUP BY A_STRING";
-
-        Properties props = new Properties(TEST_PROPERTIES);
-        props.setProperty(PhoenixRuntime.CURRENT_SCN_ATTRIB, Long.toString(ts + 2)); // Execute at
-                                                                                     // timestamp 2
-        Connection conn = DriverManager.getConnection(PHOENIX_JDBC_URL, props);
-        try {
-            PreparedStatement statement = conn.prepareStatement(query);
-            ResultSet rs = statement.executeQuery();
-            assertTrue(rs.next());
-            assertEquals("a",rs.getString(1));
-            BigDecimal percentile = rs.getBigDecimal(2);
-            percentile = percentile.setScale(1, RoundingMode.HALF_UP);
-            assertEquals(7.0, percentile.doubleValue(),0.0);
-            assertTrue(rs.next());
-            assertEquals("b",rs.getString(1));
-            percentile = rs.getBigDecimal(2);
-            percentile = percentile.setScale(1, RoundingMode.HALF_UP);
-            assertEquals(9.0, percentile.doubleValue(),0.0);
-            assertTrue(rs.next());
-            assertEquals("c",rs.getString(1));
-            percentile = rs.getBigDecimal(2);
-            percentile = percentile.setScale(1, RoundingMode.HALF_UP);
-            assertEquals(8.0, percentile.doubleValue(),0.0);
-            assertFalse(rs.next());
-        } finally {
-            conn.close();
-        }
-    }
-
-    @Test
-    public void testPercentileWithGroupbyAndOrderBy() throws Exception {
-        long ts = nextTimestamp();
-        String tenantId = getOrganizationId();
-        initATableValues(tenantId, null, getDefaultSplits(tenantId), null, ts);
-
-        String query = "SELECT A_STRING, PERCENTILE_CONT(0.9) WITHIN GROUP (ORDER BY A_INTEGER ASC) AS PC FROM aTable GROUP BY A_STRING ORDER BY PC";
-
-        Properties props = new Properties(TEST_PROPERTIES);
-        props.setProperty(PhoenixRuntime.CURRENT_SCN_ATTRIB, Long.toString(ts + 2)); // Execute at
-                                                                                     // timestamp 2
-        Connection conn = DriverManager.getConnection(PHOENIX_JDBC_URL, props);
-        try {
-            PreparedStatement statement = conn.prepareStatement(query);
-            ResultSet rs = statement.executeQuery();
-            assertTrue(rs.next());
-            assertEquals("a",rs.getString(1));
-            BigDecimal percentile = rs.getBigDecimal(2);
-            percentile = percentile.setScale(1, RoundingMode.HALF_UP);
-            assertEquals(7.0, percentile.doubleValue(),0.0);
-            assertTrue(rs.next());
-            assertEquals("c",rs.getString(1));
-            percentile = rs.getBigDecimal(2);
-            percentile = percentile.setScale(1, RoundingMode.HALF_UP);
-            assertEquals(8.0, percentile.doubleValue(),0.0);
-            assertTrue(rs.next());
-            assertEquals("b",rs.getString(1));
-            percentile = rs.getBigDecimal(2);
-            percentile = percentile.setScale(1, RoundingMode.HALF_UP);
-            assertEquals(9.0, percentile.doubleValue(),0.0);
-            assertFalse(rs.next());
-        } finally {
-            conn.close();
-        }
-    }
-
-    @Test
-	public void testPercentileDiscAsc() throws Exception {
-		long ts = nextTimestamp();
-		String tenantId = getOrganizationId();
-		initATableValues(tenantId, null, getDefaultSplits(tenantId), null, ts);
-
-		String query = "SELECT PERCENTILE_DISC(0.9) WITHIN GROUP (ORDER BY A_INTEGER ASC) FROM aTable";
-
-		Properties props = new Properties(TEST_PROPERTIES);
-		props.setProperty(PhoenixRuntime.CURRENT_SCN_ATTRIB,
-				Long.toString(ts + 2)); // Execute at
-										// timestamp 2
-		Connection conn = DriverManager.getConnection(PHOENIX_JDBC_URL, props);
-		try {
-			PreparedStatement statement = conn.prepareStatement(query);
-			ResultSet rs = statement.executeQuery();
-			assertTrue(rs.next());
-			int percentile_disc = rs.getInt(1);
-			assertEquals(9, percentile_disc);
-			assertFalse(rs.next());
-		} finally {
-			conn.close();
-		}
-	}
-	
-	@Test
-	public void testPercentileDiscDesc() throws Exception {
-		long ts = nextTimestamp();
-		String tenantId = getOrganizationId();
-		initATableValues(tenantId, null, getDefaultSplits(tenantId), null, ts);
-
-		String query = "SELECT PERCENTILE_DISC(0.9) WITHIN GROUP (ORDER BY A_INTEGER DESC) FROM aTable";
-
-		Properties props = new Properties(TEST_PROPERTIES);
-		props.setProperty(PhoenixRuntime.CURRENT_SCN_ATTRIB,
-				Long.toString(ts + 2)); // Execute at
-										// timestamp 2
-		Connection conn = DriverManager.getConnection(PHOENIX_JDBC_URL, props);
-		try {
-			PreparedStatement statement = conn.prepareStatement(query);
-			ResultSet rs = statement.executeQuery();
-			assertTrue(rs.next());
-			int percentile_disc = rs.getInt(1);
-			assertEquals(1, percentile_disc);
-			assertFalse(rs.next());
-		} finally {
-			conn.close();
-		}
-	}
-    
-    @Test
-    public void testPercentileDiscWithGroupby() throws Exception {
-        long ts = nextTimestamp();
-        String tenantId = getOrganizationId();
-        initATableValues(tenantId, null, getDefaultSplits(tenantId), null, ts);
-
-        String query = "SELECT A_STRING, PERCENTILE_DISC(0.5) WITHIN GROUP (ORDER BY A_INTEGER ASC) FROM aTable GROUP BY A_STRING";
-
-        Properties props = new Properties(TEST_PROPERTIES);
-        props.setProperty(PhoenixRuntime.CURRENT_SCN_ATTRIB, Long.toString(ts + 2)); // Execute at
-                                                                                     // timestamp 2
-        Connection conn = DriverManager.getConnection(PHOENIX_JDBC_URL, props);
-        try {
-            PreparedStatement statement = conn.prepareStatement(query);
-            ResultSet rs = statement.executeQuery();
-            assertTrue(rs.next());
-            assertEquals("a",rs.getString(1));
-            int percentile_disc = rs.getInt(2);
-            assertEquals(2, percentile_disc);
-            assertTrue(rs.next());
-            assertEquals("b",rs.getString(1));
-            percentile_disc = rs.getInt(2);
-            assertEquals(5, percentile_disc);
-            assertTrue(rs.next());
-            assertEquals("c",rs.getString(1));
-            percentile_disc = rs.getInt(2);
-            assertEquals(8, percentile_disc);
-            assertFalse(rs.next());
-        } finally {
-            conn.close();
-        }
-    }
-
-    @Test
-    public void testPercentileDiscWithGroupbyAndOrderBy() throws Exception {
-        long ts = nextTimestamp();
-        String tenantId = getOrganizationId();
-        initATableValues(tenantId, null, getDefaultSplits(tenantId), null, ts);
-
-        String query = "SELECT A_STRING, PERCENTILE_DISC(0.5) WITHIN GROUP (ORDER BY A_INTEGER ASC) FROM aTable GROUP BY A_STRING ORDER BY A_STRING DESC";
-
-        Properties props = new Properties(TEST_PROPERTIES);
-        props.setProperty(PhoenixRuntime.CURRENT_SCN_ATTRIB, Long.toString(ts + 2)); // Execute at
-                                                                                     // timestamp 2
-        Connection conn = DriverManager.getConnection(PHOENIX_JDBC_URL, props);
-        try {
-            PreparedStatement statement = conn.prepareStatement(query);
-            ResultSet rs = statement.executeQuery();
-            assertTrue(rs.next());
-            assertEquals("c",rs.getString(1));
-            int percentile_disc = rs.getInt(2);
-            assertEquals(8, percentile_disc);
-            assertTrue(rs.next());
-            assertEquals("b",rs.getString(1));
-            percentile_disc = rs.getInt(2);
-            assertEquals(5, percentile_disc);
-            assertTrue(rs.next());
-            assertEquals("a",rs.getString(1));
-            percentile_disc = rs.getInt(2);
-            assertEquals(2, percentile_disc);
-            assertFalse(rs.next());
-        } finally {
-            conn.close();
-        }
-    }
-
-    @Test
-    public void testPercentRank() throws Exception {
-        long ts = nextTimestamp();
-        String tenantId = getOrganizationId();
-        initATableValues(tenantId, null, getDefaultSplits(tenantId), null, ts);
-
-        String query = "SELECT PERCENT_RANK(5) WITHIN GROUP (ORDER BY A_INTEGER ASC) FROM aTable";
-
-        Properties props = new Properties(TEST_PROPERTIES);
-        props.setProperty(PhoenixRuntime.CURRENT_SCN_ATTRIB, Long.toString(ts + 2)); // Execute at
-                                                                                     // timestamp 2
-        Connection conn = DriverManager.getConnection(PHOENIX_JDBC_URL, props);
-        try {
-            PreparedStatement statement = conn.prepareStatement(query);
-            ResultSet rs = statement.executeQuery();
-            assertTrue(rs.next());
-            BigDecimal rank = rs.getBigDecimal(1);
-            rank = rank.setScale(2, RoundingMode.HALF_UP);
-            assertEquals(0.56, rank.doubleValue(), 0.0);
-            assertFalse(rs.next());
-        } finally {
-            conn.close();
-        }
-    }
-
-    @Test
-    public void testPercentRankWithNegativeNumeric() throws Exception {
-        long ts = nextTimestamp();
-        String tenantId = getOrganizationId();
-        initATableValues(tenantId, null, getDefaultSplits(tenantId), null, ts);
-
-        String query = "SELECT PERCENT_RANK(-2) WITHIN GROUP (ORDER BY A_INTEGER ASC) FROM aTable";
-
-        Properties props = new Properties(TEST_PROPERTIES);
-        props.setProperty(PhoenixRuntime.CURRENT_SCN_ATTRIB, Long.toString(ts + 2)); // Execute at
-                                                                                     // timestamp 2
-        Connection conn = DriverManager.getConnection(PHOENIX_JDBC_URL, props);
-        try {
-            PreparedStatement statement = conn.prepareStatement(query);
-            ResultSet rs = statement.executeQuery();
-            assertTrue(rs.next());
-            BigDecimal rank = rs.getBigDecimal(1);
-            rank = rank.setScale(2, RoundingMode.HALF_UP);
-            assertEquals(0.0, rank.doubleValue(), 0.0);
-            assertFalse(rs.next());
-        } finally {
-            conn.close();
-        }
-    }
-
-    @Test
-    public void testPercentRankDesc() throws Exception {
-        long ts = nextTimestamp();
-        String tenantId = getOrganizationId();
-        initATableValues(tenantId, null, getDefaultSplits(tenantId), null, ts);
-
-        String query = "SELECT PERCENT_RANK(8.9) WITHIN GROUP (ORDER BY A_INTEGER DESC) FROM aTable";
-
-        Properties props = new Properties(TEST_PROPERTIES);
-        props.setProperty(PhoenixRuntime.CURRENT_SCN_ATTRIB, Long.toString(ts + 2)); // Execute at
-                                                                                     // timestamp 2
-        Connection conn = DriverManager.getConnection(PHOENIX_JDBC_URL, props);
-        try {
-            PreparedStatement statement = conn.prepareStatement(query);
-            ResultSet rs = statement.executeQuery();
-            assertTrue(rs.next());
-            BigDecimal rank = rs.getBigDecimal(1);
-            rank = rank.setScale(2, RoundingMode.HALF_UP);
-            assertEquals(0.11, rank.doubleValue(), 0.0);
-            assertFalse(rs.next());
-        } finally {
-            conn.close();
-        }
-    }
-
-    @Test
-    public void testPercentRankDescOnVARCHARColumn() throws Exception {
-        long ts = nextTimestamp();
-        String tenantId = getOrganizationId();
-        initATableValues(tenantId, null, getDefaultSplits(tenantId), null, ts);
-
-        String query = "SELECT PERCENT_RANK('ba') WITHIN GROUP (ORDER BY A_STRING DESC) FROM aTable";
-
-        Properties props = new Properties(TEST_PROPERTIES);
-        props.setProperty(PhoenixRuntime.CURRENT_SCN_ATTRIB, Long.toString(ts + 2)); // Execute at
-                                                                                     // timestamp 2
-        Connection conn = DriverManager.getConnection(PHOENIX_JDBC_URL, props);
-        try {
-            PreparedStatement statement = conn.prepareStatement(query);
-            ResultSet rs = statement.executeQuery();
-            assertTrue(rs.next());
-            BigDecimal rank = rs.getBigDecimal(1);
-            rank = rank.setScale(2, RoundingMode.HALF_UP);
-            assertEquals(0.11, rank.doubleValue(), 0.0);
-            assertFalse(rs.next());
-        } finally {
-            conn.close();
-        }
-    }
-
-    @Test
-    public void testPercentRankDescOnDECIMALColumn() throws Exception {
-        long ts = nextTimestamp();
-        String tenantId = getOrganizationId();
-        initATableValues(tenantId, null, getDefaultSplits(tenantId), null, ts);
-
-        String query = "SELECT PERCENT_RANK(2) WITHIN GROUP (ORDER BY x_decimal ASC) FROM aTable";
-
-        Properties props = new Properties(TEST_PROPERTIES);
-        props.setProperty(PhoenixRuntime.CURRENT_SCN_ATTRIB, Long.toString(ts + 2)); // Execute at
-                                                                                     // timestamp 2
-        Connection conn = DriverManager.getConnection(PHOENIX_JDBC_URL, props);
-        try {
-            PreparedStatement statement = conn.prepareStatement(query);
-            ResultSet rs = statement.executeQuery();
-            assertTrue(rs.next());
-            BigDecimal rank = rs.getBigDecimal(1);
-            rank = rank.setScale(2, RoundingMode.HALF_UP);
-            assertEquals(0.33, rank.doubleValue(), 0.0);
-            assertFalse(rs.next());
-        } finally {
-            conn.close();
-        }
-    }
-
-    @Test
-    public void testMultiplePercentRanksOnSelect() throws Exception {
-        long ts = nextTimestamp();
-        String tenantId = getOrganizationId();
-        initATableValues(tenantId, null, getDefaultSplits(tenantId), null, ts);
-
-        String query = "SELECT PERCENT_RANK(2) WITHIN GROUP (ORDER BY x_decimal ASC), PERCENT_RANK(8.9) WITHIN GROUP (ORDER BY A_INTEGER DESC) FROM aTable";
-
-        Properties props = new Properties(TEST_PROPERTIES);
-        props.setProperty(PhoenixRuntime.CURRENT_SCN_ATTRIB, Long.toString(ts + 2)); // Execute at
-                                                                                     // timestamp 2
-        Connection conn = DriverManager.getConnection(PHOENIX_JDBC_URL, props);
-        try {
-            PreparedStatement statement = conn.prepareStatement(query);
-            ResultSet rs = statement.executeQuery();
-            assertTrue(rs.next());
-            BigDecimal rank = rs.getBigDecimal(1);
-            rank = rank.setScale(2, RoundingMode.HALF_UP);
-            assertEquals(0.33, rank.doubleValue(), 0.0);
-            rank = rs.getBigDecimal(2);
-            rank = rank.setScale(2, RoundingMode.HALF_UP);
-            assertEquals(0.11, rank.doubleValue(), 0.0);
-            assertFalse(rs.next());
-        } finally {
-            conn.close();
-        }
-    }
-
-    @Test
-    public void testPercentileContOnDescPKColumn() throws Exception {
-        ensureTableCreated(getUrl(), INDEX_DATA_TABLE);
-        populateINDEX_DATA_TABLETable();
-
-        String query = "SELECT PERCENTILE_CONT(1) WITHIN GROUP (ORDER BY long_pk ASC) FROM " + INDEX_DATA_SCHEMA
-                + QueryConstants.NAME_SEPARATOR + INDEX_DATA_TABLE;
-
-        Connection conn = DriverManager.getConnection(PHOENIX_JDBC_URL);
-        try {
-            PreparedStatement statement = conn.prepareStatement(query);
-            ResultSet rs = statement.executeQuery();
-            assertTrue(rs.next());
-            BigDecimal percentile = rs.getBigDecimal(1);
-            percentile = percentile.setScale(1, RoundingMode.HALF_UP);
-            assertEquals(3.0, percentile.doubleValue(),0.0);
-            assertFalse(rs.next());
-        } finally {
-            conn.close();
-        }
-    }
-
-    @Test
-    public void testPercentRankOnDescPKColumn() throws Exception {
-        ensureTableCreated(getUrl(), INDEX_DATA_TABLE);
-        populateINDEX_DATA_TABLETable();
-
-        String query = "SELECT PERCENT_RANK(2) WITHIN GROUP (ORDER BY long_pk ASC) FROM " + INDEX_DATA_SCHEMA
-                + QueryConstants.NAME_SEPARATOR + INDEX_DATA_TABLE;
-
-        Connection conn = DriverManager.getConnection(PHOENIX_JDBC_URL);
-        try {
-            PreparedStatement statement = conn.prepareStatement(query);
-            ResultSet rs = statement.executeQuery();
-            assertTrue(rs.next());
-            BigDecimal rank = rs.getBigDecimal(1);
-            rank = rank.setScale(2, RoundingMode.HALF_UP);
-            assertEquals(0.67, rank.doubleValue(), 0.0);
-            assertFalse(rs.next());
-        } finally {
-            conn.close();
-        }
-    }
-
-    @Test
-    public void testPercentileDiscOnDescPKColumn() throws Exception {
-        ensureTableCreated(getUrl(), INDEX_DATA_TABLE);
-        populateINDEX_DATA_TABLETable();
-
-        String query = "SELECT PERCENTILE_DISC(0.4) WITHIN GROUP (ORDER BY long_pk DESC) FROM " + INDEX_DATA_SCHEMA
-                + QueryConstants.NAME_SEPARATOR + INDEX_DATA_TABLE;
-
-        Connection conn = DriverManager.getConnection(PHOENIX_JDBC_URL);
-        try {
-            PreparedStatement statement = conn.prepareStatement(query);
-            ResultSet rs = statement.executeQuery();
-            assertTrue(rs.next());
-            long percentile_disc = rs.getLong(1);
-            assertEquals(2, percentile_disc);
-            assertFalse(rs.next());
-        } finally {
-            conn.close();
-        }
-    }
-
-    private static void populateINDEX_DATA_TABLETable() throws SQLException {
-        Properties props = new Properties(TEST_PROPERTIES);
-        Connection conn = DriverManager.getConnection(getUrl(), props);
-        try {
-            String upsert = "UPSERT INTO " + INDEX_DATA_SCHEMA + QueryConstants.NAME_SEPARATOR + INDEX_DATA_TABLE
-                    + " VALUES(?, ?, ?, ?, ?)";
-            PreparedStatement stmt = conn.prepareStatement(upsert);
-            stmt.setString(1, "varchar1");
-            stmt.setString(2, "char1");
-            stmt.setInt(3, 1);
-            stmt.setLong(4, 1L);
-            stmt.setBigDecimal(5, new BigDecimal(1.0));
-            stmt.executeUpdate();
-            
-            stmt.setString(1, "varchar2");
-            stmt.setString(2, "char2");
-            stmt.setInt(3, 2);
-            stmt.setLong(4, 2L);
-            stmt.setBigDecimal(5, new BigDecimal(2.0));
-            stmt.executeUpdate();
-            
-            stmt.setString(1, "varchar3");
-            stmt.setString(2, "char3");
-            stmt.setInt(3, 3);
-            stmt.setLong(4, 3L);
-            stmt.setBigDecimal(5, new BigDecimal(3.0));
-            stmt.executeUpdate();
-            
-            conn.commit();
-        } finally {
-            conn.close();
-        }
-    }
-
-    protected static void initATableValues(String tenantId1, String tenantId2, byte[][] splits,
-            Date date, Long ts) throws Exception {
-        if (ts == null) {
-            ensureTableCreated(getUrl(), ATABLE_NAME, splits);
-        } else {
-            ensureTableCreated(getUrl(), ATABLE_NAME, splits, ts - 2);
-        }
-
-        Properties props = new Properties();
-        if (ts != null) {
-            props.setProperty(PhoenixRuntime.CURRENT_SCN_ATTRIB, ts.toString());
-        }
-        Connection conn = DriverManager.getConnection(getUrl(), props);
-        try {
-            // Insert all rows at ts
-            PreparedStatement stmt = conn.prepareStatement("upsert into " + "ATABLE("
-                    + "    ORGANIZATION_ID, " + "    ENTITY_ID, " + "    A_STRING, "
-                    + "    B_STRING, " + "    A_INTEGER, " + "    A_DATE, " + "    X_DECIMAL, "
-                    + "    X_LONG, " + "    X_INTEGER," + "    Y_INTEGER)"
-                    + "VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)");
-            if (tenantId1 != null) {
-                stmt.setString(1, tenantId1);
-                stmt.setString(2, ROW1);
-                stmt.setString(3, A_VALUE);
-                stmt.setString(4, B_VALUE);
-                stmt.setInt(5, 1);
-                stmt.setDate(6, date);
-                stmt.setBigDecimal(7, null);
-                stmt.setNull(8, Types.BIGINT);
-                stmt.setNull(9, Types.INTEGER);
-                stmt.setNull(10, Types.INTEGER);
-                stmt.execute();
-
-                stmt.setString(1, tenantId1);
-                stmt.setString(2, ROW2);
-                stmt.setString(3, A_VALUE);
-                stmt.setString(4, C_VALUE);
-                stmt.setInt(5, 2);
-                stmt.setDate(6, date == null ? null : new Date(date.getTime() + MILLIS_IN_DAY * 1));
-                stmt.setBigDecimal(7, null);
-                stmt.setNull(8, Types.BIGINT);
-                stmt.setNull(9, Types.INTEGER);
-                stmt.setNull(10, Types.INTEGER);
-                stmt.execute();
-
-                stmt.setString(1, tenantId1);
-                stmt.setString(2, ROW3);
-                stmt.setString(3, A_VALUE);
-                stmt.setString(4, C_VALUE);
-                stmt.setInt(5, 3);
-                stmt.setDate(6, date == null ? null : new Date(date.getTime() + MILLIS_IN_DAY * 2));
-                stmt.setBigDecimal(7, null);
-                stmt.setNull(8, Types.BIGINT);
-                stmt.setNull(9, Types.INTEGER);
-                stmt.setNull(10, Types.INTEGER);
-                stmt.execute();
-
-                stmt.setString(1, tenantId1);
-                stmt.setString(2, ROW4);
-                stmt.setString(3, A_VALUE);
-                stmt.setString(4, B_VALUE);
-                stmt.setInt(5, 7);
-                stmt.setDate(6, date == null ? null : date);
-                stmt.setBigDecimal(7, null);
-                stmt.setNull(8, Types.BIGINT);
-                stmt.setNull(9, Types.INTEGER);
-                stmt.setNull(10, Types.INTEGER);
-                stmt.execute();
-
-                stmt.setString(1, tenantId1);
-                stmt.setString(2, ROW5);
-                stmt.setString(3, B_VALUE);
-                stmt.setString(4, C_VALUE);
-                stmt.setInt(5, 6);
-                stmt.setDate(6, date == null ? null : new Date(date.getTime() + MILLIS_IN_DAY * 1));
-                stmt.setBigDecimal(7, null);
-                stmt.setNull(8, Types.BIGINT);
-                stmt.setNull(9, Types.INTEGER);
-                stmt.setNull(10, Types.INTEGER);
-                stmt.execute();
-
-                stmt.setString(1, tenantId1);
-                stmt.setString(2, ROW6);
-                stmt.setString(3, B_VALUE);
-                stmt.setString(4, C_VALUE);
-                stmt.setInt(5, 5);
-                stmt.setDate(6, date == null ? null : new Date(date.getTime() + MILLIS_IN_DAY * 2));
-                stmt.setBigDecimal(7, null);
-                stmt.setNull(8, Types.BIGINT);
-                stmt.setNull(9, Types.INTEGER);
-                stmt.setNull(10, Types.INTEGER);
-                stmt.execute();
-
-                stmt.setString(1, tenantId1);
-                stmt.setString(2, ROW7);
-                stmt.setString(3, B_VALUE);
-                stmt.setString(4, C_VALUE);
-                stmt.setInt(5, 4);
-                stmt.setDate(6, date == null ? null : date);
-                stmt.setBigDecimal(7, BigDecimal.valueOf(0.1));
-                stmt.setLong(8, 5L);
-                stmt.setInt(9, 5);
-                stmt.setNull(10, Types.INTEGER);
-                stmt.execute();
-
-                stmt.setString(1, tenantId1);
-                stmt.setString(2, ROW8);
-                stmt.setString(3, B_VALUE);
-                stmt.setString(4, C_VALUE);
-                stmt.setInt(5, 9);
-                stmt.setDate(6, date == null ? null : new Date(date.getTime() + MILLIS_IN_DAY * 1));
-                stmt.setBigDecimal(7, BigDecimal.valueOf(3.9));
-                long l = Integer.MIN_VALUE - 1L;
-                assert (l < Integer.MIN_VALUE);
-                stmt.setLong(8, l);
-                stmt.setInt(9, 4);
-                stmt.setNull(10, Types.INTEGER);
-                stmt.execute();
-
-                stmt.setString(1, tenantId1);
-                stmt.setString(2, ROW9);
-                stmt.setString(3, C_VALUE);
-                stmt.setString(4, C_VALUE);
-                stmt.setInt(5, 8);
-                stmt.setDate(6, date == null ? null : new Date(date.getTime() + MILLIS_IN_DAY * 2));
-                stmt.setBigDecimal(7, BigDecimal.valueOf(3.3));
-                l = Integer.MAX_VALUE + 1L;
-                assert (l > Integer.MAX_VALUE);
-                stmt.setLong(8, l);
-                stmt.setInt(9, 3);
-                stmt.setInt(10, 300);
-                stmt.execute();
-            }
-            if (tenantId2 != null) {
-                stmt.setString(1, tenantId2);
-                stmt.setString(2, ROW1);
-                stmt.setString(3, A_VALUE);
-                stmt.setString(4, B_VALUE);
-                stmt.setInt(5, 1);
-                stmt.setDate(6, date);
-                stmt.setBigDecimal(7, null);
-                stmt.setNull(8, Types.BIGINT);
-                stmt.setNull(9, Types.INTEGER);
-                stmt.setNull(10, Types.INTEGER);
-                stmt.execute();
-
-                stmt.setString(1, tenantId2);
-                stmt.setString(2, ROW2);
-                stmt.setString(3, A_VALUE);
-                stmt.setString(4, C_VALUE);
-                stmt.setInt(5, 2);
-                stmt.setDate(6, date == null ? null : new Date(date.getTime() + MILLIS_IN_DAY * 1));
-                stmt.setBigDecimal(7, null);
-                stmt.setNull(8, Types.BIGINT);
-                stmt.setNull(9, Types.INTEGER);
-                stmt.setNull(10, Types.INTEGER);
-                stmt.execute();
-            }
-            conn.commit();
-        } finally {
-            conn.close();
-        }
-    }
-}


Mime
View raw message