You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@phoenix.apache.org by ma...@apache.org on 2016/10/12 18:30:59 UTC

[1/2] phoenix git commit: PHOENIX-3265 Double-quote column names that use reserved keywords (Eric Lomore) [Forced Update!]

Repository: phoenix
Updated Branches:
  refs/heads/master fd1dac0d4 -> e280cb9b6 (forced update)


http://git-wip-us.apache.org/repos/asf/phoenix/blob/e280cb9b/phoenix-core/src/it/java/org/apache/phoenix/end2end/SortMergeJoinIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/SortMergeJoinIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/SortMergeJoinIT.java
index b387ee8..099f6f5 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/SortMergeJoinIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/SortMergeJoinIT.java
@@ -582,19 +582,19 @@ public class SortMergeJoinIT extends BaseJoinIT {
         String tableName3 = getTableName(conn, JOIN_CUSTOMER_TABLE_FULL_NAME);
         String tableName4 = getTableName(conn, JOIN_ORDER_TABLE_FULL_NAME);
         String[] query = new String[5];
-        query[0] = "SELECT /*+ USE_SORT_MERGE_JOIN*/ \"order_id\", c.name, i.name iname, quantity, o.date FROM " + tableName4 + " o JOIN " 
+        query[0] = "SELECT /*+ USE_SORT_MERGE_JOIN*/ \"order_id\", c.name, i.name iname, quantity, o.\"DATE\" FROM " + tableName4 + " o JOIN "
             + tableName3 + " c ON o.\"customer_id\" = c.\"customer_id\" JOIN " 
             + tableName1 + " i ON o.\"item_id\" = i.\"item_id\" ORDER BY \"order_id\"";
-        query[1] = "SELECT /*+ USE_SORT_MERGE_JOIN*/ \"order_id\", c.name, i.name iname, quantity, o.date FROM " + tableName4 + " o, " 
+        query[1] = "SELECT /*+ USE_SORT_MERGE_JOIN*/ \"order_id\", c.name, i.name iname, quantity, o.\"DATE\" FROM " + tableName4 + " o, "
                 + tableName3 + " c, " 
                 + tableName1 + " i WHERE o.\"item_id\" = i.\"item_id\" AND o.\"customer_id\" = c.\"customer_id\" ORDER BY \"order_id\"";
-        query[2] = "SELECT /*+ USE_SORT_MERGE_JOIN*/ \"order_id\", c.name, i.name iname, quantity, o.date FROM " + tableName4 + " o JOIN " 
+        query[2] = "SELECT /*+ USE_SORT_MERGE_JOIN*/ \"order_id\", c.name, i.name iname, quantity, o.\"DATE\" FROM " + tableName4 + " o JOIN "
                 + tableName3 + " c ON o.\"customer_id\" = c.\"customer_id\" JOIN " 
                 + tableName1 + " i ON o.\"item_id\" = i.\"item_id\" ORDER BY \"order_id\"";
-        query[3] = "SELECT /*+ USE_SORT_MERGE_JOIN*/ \"order_id\", c.name, i.name iname, quantity, o.date FROM (" + tableName4 + " o, " 
+        query[3] = "SELECT /*+ USE_SORT_MERGE_JOIN*/ \"order_id\", c.name, i.name iname, quantity, o.\"DATE\" FROM (" + tableName4 + " o, "
                 + tableName3 + " c), " 
                 + tableName1 + " i WHERE o.\"item_id\" = i.\"item_id\" AND o.\"customer_id\" = c.\"customer_id\" ORDER BY \"order_id\"";
-        query[4] = "SELECT /*+ USE_SORT_MERGE_JOIN*/ \"order_id\", c.name, i.name iname, quantity, o.date FROM " + tableName4 + " o, (" 
+        query[4] = "SELECT /*+ USE_SORT_MERGE_JOIN*/ \"order_id\", c.name, i.name iname, quantity, o.\"DATE\" FROM " + tableName4 + " o, ("
                 + tableName3 + " c, " 
                 + tableName1 + " i) WHERE o.\"item_id\" = i.\"item_id\" AND o.\"customer_id\" = c.\"customer_id\" ORDER BY \"order_id\"";
         try {
@@ -794,10 +794,10 @@ public class SortMergeJoinIT extends BaseJoinIT {
         String tableName1 = getTableName(conn, JOIN_ITEM_TABLE_FULL_NAME);
         String tableName2 = getTableName(conn, JOIN_SUPPLIER_TABLE_FULL_NAME);
         String tableName4 = getTableName(conn, JOIN_ORDER_TABLE_FULL_NAME);
-        String query1 = "SELECT /*+ USE_SORT_MERGE_JOIN*/ \"order_id\", i.name, s.name, quantity, date FROM " + tableName4 + " o LEFT JOIN " 
+        String query1 = "SELECT /*+ USE_SORT_MERGE_JOIN*/ \"order_id\", i.name, s.name, quantity, \"DATE\" FROM " + tableName4 + " o LEFT JOIN "
                 + tableName1 + " i ON o.\"item_id\" = i.\"item_id\" RIGHT JOIN "
                 + tableName2 + " s ON i.\"supplier_id\" = s.\"supplier_id\" ORDER BY \"order_id\", s.\"supplier_id\" DESC";
-        String query2 = "SELECT /*+ USE_SORT_MERGE_JOIN*/ \"order_id\", i.name, s.name, quantity, date FROM " + tableName4 + " o LEFT JOIN " 
+        String query2 = "SELECT /*+ USE_SORT_MERGE_JOIN*/ \"order_id\", i.name, s.name, quantity, \"DATE\" FROM " + tableName4 + " o LEFT JOIN "
                 + "(" + tableName1 + " i RIGHT JOIN " + tableName2 + " s ON i.\"supplier_id\" = s.\"supplier_id\")" 
                 + " ON o.\"item_id\" = i.\"item_id\" ORDER BY \"order_id\", s.\"supplier_id\" DESC";
         try {
@@ -900,10 +900,10 @@ public class SortMergeJoinIT extends BaseJoinIT {
         String tableName1 = getTableName(conn, JOIN_ITEM_TABLE_FULL_NAME);
         String tableName2 = getTableName(conn, JOIN_SUPPLIER_TABLE_FULL_NAME);
         String tableName4 = getTableName(conn, JOIN_ORDER_TABLE_FULL_NAME);
-        String query1 = "SELECT \"order_id\", i.name, s.name, quantity, date FROM " + tableName1 + " i RIGHT JOIN " 
+        String query1 = "SELECT \"order_id\", i.name, s.name, quantity, \"DATE\" FROM " + tableName1 + " i RIGHT JOIN "
                 + tableName4 + " o ON o.\"item_id\" = i.\"item_id\" LEFT JOIN "
                 + tableName2 + " s ON i.\"supplier_id\" = s.\"supplier_id\" ORDER BY \"order_id\"";
-        String query2 = "SELECT \"order_id\", i.name, s.name, quantity, date FROM " + tableName4 + " o RIGHT JOIN " 
+        String query2 = "SELECT \"order_id\", i.name, s.name, quantity, \"DATE\" FROM " + tableName4 + " o RIGHT JOIN "
                 + "(" + tableName1 + " i LEFT JOIN " + tableName2 + " s ON i.\"supplier_id\" = s.\"supplier_id\")" 
                 + " ON o.\"item_id\" = i.\"item_id\" ORDER BY \"order_id\", s.\"supplier_id\" DESC";
         try {
@@ -1007,10 +1007,10 @@ public class SortMergeJoinIT extends BaseJoinIT {
         String tableName2 = getTableName(conn, JOIN_SUPPLIER_TABLE_FULL_NAME);
         String tableName4 = getTableName(conn, JOIN_ORDER_TABLE_FULL_NAME);
         String[] queries = {
-                "SELECT /*+ USE_SORT_MERGE_JOIN*/ \"order_id\", i.name, s.name, quantity, date FROM " + tableName4 + " o LEFT JOIN " 
+                "SELECT /*+ USE_SORT_MERGE_JOIN*/ \"order_id\", i.name, s.name, quantity, \"DATE\" FROM " + tableName4 + " o LEFT JOIN "
                         + tableName1 + " i ON o.\"item_id\" = i.\"item_id\" LEFT JOIN "
                         + tableName2 + " s ON i.\"supplier_id\" = s.\"supplier_id\" ORDER BY \"order_id\"",
-                "SELECT /*+ USE_SORT_MERGE_JOIN*/ \"order_id\", i.name, s.name, quantity, date FROM " + tableName4 + " o LEFT JOIN " 
+                "SELECT /*+ USE_SORT_MERGE_JOIN*/ \"order_id\", i.name, s.name, quantity, \"DATE\" FROM " + tableName4 + " o LEFT JOIN "
                         + "(" + tableName1 + " i LEFT JOIN " + tableName2 + " s ON i.\"supplier_id\" = s.\"supplier_id\") " 
                         + "ON o.\"item_id\" = i.\"item_id\" ORDER BY \"order_id\""};
         try {
@@ -1062,7 +1062,7 @@ public class SortMergeJoinIT extends BaseJoinIT {
         String tableName1 = getTableName(conn, JOIN_ITEM_TABLE_FULL_NAME);
         String tableName2 = getTableName(conn, JOIN_SUPPLIER_TABLE_FULL_NAME);
         String tableName4 = getTableName(conn, JOIN_ORDER_TABLE_FULL_NAME);
-        String query = "SELECT /*+ USE_SORT_MERGE_JOIN*/ \"order_id\", i.name, s.name, quantity, date FROM " + tableName4 + " o RIGHT JOIN " 
+        String query = "SELECT /*+ USE_SORT_MERGE_JOIN*/ \"order_id\", i.name, s.name, quantity, \"DATE\" FROM " + tableName4 + " o RIGHT JOIN "
             + tableName1 + " i ON o.\"item_id\" = i.\"item_id\" RIGHT JOIN "
             + tableName2 + " s ON i.\"supplier_id\" = s.\"supplier_id\" ORDER BY \"order_id\", s.\"supplier_id\" DESC";
         try {
@@ -1140,7 +1140,7 @@ public class SortMergeJoinIT extends BaseJoinIT {
         String tableName1 = getTableName(conn, JOIN_ITEM_TABLE_FULL_NAME);
         String tableName2 = getTableName(conn, JOIN_SUPPLIER_TABLE_FULL_NAME);
         String tableName4 = getTableName(conn, JOIN_ORDER_TABLE_FULL_NAME);
-        String query = "SELECT /*+ USE_SORT_MERGE_JOIN*/ \"order_id\", i.name, s.name, quantity, date FROM " + tableName4 + " o RIGHT JOIN "
+        String query = "SELECT /*+ USE_SORT_MERGE_JOIN*/ \"order_id\", i.name, s.name, quantity, \"DATE\" FROM " + tableName4 + " o RIGHT JOIN "
                 + tableName1 + " i ON o.\"item_id\" = i.\"item_id\" RIGHT JOIN "
                 + tableName2 + " s ON i.\"supplier_id\" = s.\"supplier_id\" ORDER BY \"order_id\", s.\"supplier_id\" DESC";
         try {
@@ -1529,8 +1529,8 @@ public class SortMergeJoinIT extends BaseJoinIT {
         Connection conn = DriverManager.getConnection(getUrl(), props);
         String tableName3 = getTableName(conn, JOIN_CUSTOMER_TABLE_FULL_NAME);
         String tableName4 = getTableName(conn, JOIN_ORDER_TABLE_FULL_NAME);
-        String query = "SELECT /*+ USE_SORT_MERGE_JOIN*/ \"order_id\", c.name, o.date FROM " + tableName4 + " o INNER JOIN " 
-            + tableName3 + " c ON o.\"customer_id\" = c.\"customer_id\" AND o.date = c.date ORDER BY \"order_id\"";
+        String query = "SELECT /*+ USE_SORT_MERGE_JOIN*/ \"order_id\", c.name, o.\"DATE\" FROM " + tableName4 + " o INNER JOIN "
+            + tableName3 + " c ON o.\"customer_id\" = c.\"customer_id\" AND o.\"DATE\" = c.\"DATE\" ORDER BY \"order_id\"";
         try {
             PreparedStatement statement = conn.prepareStatement(query);
             ResultSet rs = statement.executeQuery();
@@ -1754,11 +1754,11 @@ public class SortMergeJoinIT extends BaseJoinIT {
                     + "    item_name varchar not null, " 
                     + "    supplier_name varchar, "
                     + "    quantity integer, "
-                    + "    date timestamp " 
+                    + "    \"DATE\" timestamp "
                     + "    CONSTRAINT pk PRIMARY KEY (\"order_id\", item_name))");
-            conn.createStatement().execute("UPSERT /*+ USE_SORT_MERGE_JOIN*/ INTO " + tempTable 
-                    + "(\"order_id\", item_name, supplier_name, quantity, date) " 
-                    + "SELECT \"order_id\", i.name, s.name, quantity, date FROM " 
+            conn.createStatement().execute("UPSERT /*+ USE_SORT_MERGE_JOIN*/ INTO " + tempTable
+                    + "(\"order_id\", item_name, supplier_name, quantity, \"DATE\") "
+                    + "SELECT \"order_id\", i.name, s.name, quantity, \"DATE\" FROM "
                     + tableName4 + " o LEFT JOIN " 
                     + tableName1 + " i ON o.\"item_id\" = i.\"item_id\" LEFT JOIN "
                     + tableName2 + " s ON i.\"supplier_id\" = s.\"supplier_id\"");
@@ -2227,9 +2227,9 @@ public class SortMergeJoinIT extends BaseJoinIT {
                 + "(SELECT /*+ USE_SORT_MERGE_JOIN*/ i.iid iid, s.name sname, i.name iname FROM (SELECT \"supplier_id\" sid, name FROM " + tableName2 + ") AS s RIGHT JOIN (SELECT \"item_id\" iid, name, \"supplier_id\" sid FROM " + tableName1 + ") AS i ON i.sid = s.sid) AS q" 
                 + " ON o.iid = q.iid LEFT JOIN (SELECT \"customer_id\" cid, name FROM " 
                 + tableName3 + ") AS c ON c.cid = o.cid GROUP BY q.iname ORDER BY q.iname";
-        String query2 = "SELECT /*+ USE_SORT_MERGE_JOIN*/ * FROM (SELECT \"customer_id\" cid, name, phone, address, loc_id, date FROM " + tableName3 + ") AS c INNER JOIN " 
-                + "(SELECT /*+ USE_SORT_MERGE_JOIN*/ o.oid ooid, o.cid ocid, o.iid oiid, o.price * o.quantity, o.date odate, qi.iiid iiid, qi.iname iname, qi.iprice iprice, qi.idiscount1 idiscount1, qi.idiscount2 idiscount2, qi.isid isid, qi.idescription idescription, qi.ssid ssid, qi.sname sname, qi.sphone sphone, qi.saddress saddress, qi.sloc_id sloc_id FROM (SELECT \"item_id\" iid, \"customer_id\" cid, \"order_id\" oid, price, quantity, date FROM " + tableName4 + ") AS o INNER JOIN " 
-                + "(SELECT /*+ USE_SORT_MERGE_JOIN*/ i.iid iiid, i.name iname, i.price iprice, i.discount1 idiscount1, i.discount2 idiscount2, i.sid isid, i.description idescription, s.sid ssid, s.name sname, s.phone sphone, s.address saddress, s.loc_id sloc_id FROM (SELECT \"supplier_id\" sid, name, phone, address, loc_id FROM " + tableName2 + ") AS s RIGHT JOIN (SELECT \"item_id\" iid, name, price, discount1, discount2, \"supplier_id\" sid, description FROM " + tableName1 + ") AS i ON i.sid = s.sid) as qi" 
+        String query2 = "SELECT /*+ USE_SORT_MERGE_JOIN*/ * FROM (SELECT \"customer_id\" cid, name, phone, address, loc_id, \"DATE\" FROM " + tableName3 + ") AS c INNER JOIN "
+                + "(SELECT /*+ USE_SORT_MERGE_JOIN*/ o.oid ooid, o.cid ocid, o.iid oiid, o.price * o.quantity, o.\"DATE\" odate, qi.iiid iiid, qi.iname iname, qi.iprice iprice, qi.idiscount1 idiscount1, qi.idiscount2 idiscount2, qi.isid isid, qi.idescription idescription, qi.ssid ssid, qi.sname sname, qi.sphone sphone, qi.saddress saddress, qi.sloc_id sloc_id FROM (SELECT \"item_id\" iid, \"customer_id\" cid, \"order_id\" oid, price, quantity, date FROM " + tableName4 + ") AS o INNER JOIN "
+                + "(SELECT /*+ USE_SORT_MERGE_JOIN*/ i.iid iiid, i.name iname, i.price iprice, i.discount1 idiscount1, i.discount2 idiscount2, i.sid isid, i.description idescription, s.sid ssid, s.name sname, s.phone sphone, s.address saddress, s.loc_id sloc_id FROM (SELECT \"supplier_id\" sid, name, phone, address, loc_id FROM " + tableName2 + ") AS s RIGHT JOIN (SELECT \"item_id\" iid, name, price, discount1, discount2, \"supplier_id\" sid, description FROM " + tableName1 + ") AS i ON i.sid = s.sid) as qi"
                 + " ON o.iid = qi.iiid) as qo ON c.cid = qo.ocid" 
                 + " WHERE c.cid <= '0000000005' AND qo.ooid != '000000000000003' AND qo.iname != 'T3' ORDER BY c.cid, qo.iname";
         try {

http://git-wip-us.apache.org/repos/asf/phoenix/blob/e280cb9b/phoenix-core/src/it/java/org/apache/phoenix/end2end/SortOrderIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/SortOrderIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/SortOrderIT.java
index e9c0c55..c810844 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/SortOrderIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/SortOrderIT.java
@@ -408,7 +408,7 @@ public class SortOrderIT extends ParallelStatsDisabledIT {
     @Test
     public void lessThanLeadingDescCompositePK() throws Exception {
         String table = generateUniqueName();
-        String ddl = "CREATE table " + table + " (id INTEGER NOT NULL, date DATE NOT NULL constraint pk primary key (id DESC, date))";
+        String ddl = "CREATE table " + table + " (id INTEGER NOT NULL, \"DATE\" DATE NOT NULL constraint pk primary key (id DESC, date))";
         Object[][] insertedRows = new Object[][]{{1, date(1, 1, 2012)}, {3, date(1, 1, 2013)}, {2, date(1, 1, 2011)}};
         Object[][] expectedRows = new Object[][]{{1, date(1, 1, 2012)}};
         runQueryTest(ddl, upsert("id", "date"), insertedRows, expectedRows, new WhereCondition("id", "<", "2"),
@@ -418,10 +418,10 @@ public class SortOrderIT extends ParallelStatsDisabledIT {
     @Test
     public void lessThanTrailingDescCompositePK() throws Exception {
         String table = generateUniqueName();
-        String ddl = "CREATE table " + table + " (id INTEGER NOT NULL, date DATE NOT NULL constraint pk primary key (id DESC, date))";
+        String ddl = "CREATE table " + table + " (id INTEGER NOT NULL, \"DATE\" DATE NOT NULL constraint pk primary key (id DESC, date))";
         Object[][] insertedRows = new Object[][]{{1, date(1, 1, 2002)}, {3, date(1, 1, 2003)}, {2, date(1, 1, 2001)}};
         Object[][] expectedRows = new Object[][]{{2, date(1, 1, 2001)}};
-        runQueryTest(ddl, upsert("id", "date"), insertedRows, expectedRows, new WhereCondition("date", "<", "TO_DATE('02-02-2001','mm-dd-yyyy')"),
+        runQueryTest(ddl, upsert("id", "DATE"), insertedRows, expectedRows, new WhereCondition("DATE", "<", "TO_DATE('02-02-2001','mm-dd-yyyy')"),
             table);
     }
     

http://git-wip-us.apache.org/repos/asf/phoenix/blob/e280cb9b/phoenix-core/src/it/java/org/apache/phoenix/end2end/SubqueryUsingSortMergeJoinIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/SubqueryUsingSortMergeJoinIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/SubqueryUsingSortMergeJoinIT.java
index e93052c..3e64169 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/SubqueryUsingSortMergeJoinIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/SubqueryUsingSortMergeJoinIT.java
@@ -240,7 +240,7 @@ public class SubqueryUsingSortMergeJoinIT extends BaseJoinIT {
                 }});
         return testCases;
     }    
-    
+
     @Test
     public void testInSubquery() throws Exception {
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);

http://git-wip-us.apache.org/repos/asf/phoenix/blob/e280cb9b/phoenix-core/src/it/java/org/apache/phoenix/end2end/UpsertValuesIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/UpsertValuesIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/UpsertValuesIT.java
index 21ccbf4..498c4a3 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/UpsertValuesIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/UpsertValuesIT.java
@@ -90,17 +90,17 @@ public class UpsertValuesIT extends BaseClientManagedTimeIT {
         props.setProperty(PhoenixRuntime.CURRENT_SCN_ATTRIB, Long.toString(ts + 1)); // Execute at timestamp 1
         Connection conn = DriverManager.getConnection(getUrl(), props);
         String dateString = "1999-01-01 02:00:00";
-        PreparedStatement upsertStmt = conn.prepareStatement("upsert into ptsdb(inst,host,date) values('aaa','bbb',to_date('" + dateString + "'))");
+        PreparedStatement upsertStmt = conn.prepareStatement("upsert into ptsdb(inst,host,\"DATE\") values('aaa','bbb',to_date('" + dateString + "'))");
         int rowsInserted = upsertStmt.executeUpdate();
         assertEquals(1, rowsInserted);
-        upsertStmt = conn.prepareStatement("upsert into ptsdb(inst,host,date) values('ccc','ddd',current_date())");
+        upsertStmt = conn.prepareStatement("upsert into ptsdb(inst,host,\"DATE\") values('ccc','ddd',current_date())");
         rowsInserted = upsertStmt.executeUpdate();
         assertEquals(1, rowsInserted);
         conn.commit();
         
         props.setProperty(PhoenixRuntime.CURRENT_SCN_ATTRIB, Long.toString(ts + 2)); // Execute at timestamp 1
         conn = DriverManager.getConnection(getUrl(), props);
-        String select = "SELECT date,current_date() FROM ptsdb";
+        String select = "SELECT \"DATE\",current_date() FROM ptsdb";
         ResultSet rs = conn.createStatement().executeQuery(select);
         Date then = new Date(System.currentTimeMillis());
         assertTrue(rs.next());
@@ -146,7 +146,7 @@ public class UpsertValuesIT extends BaseClientManagedTimeIT {
         Properties props = new Properties();
         props.setProperty(PhoenixRuntime.CURRENT_SCN_ATTRIB, Long.toString(ts));
         Connection conn = DriverManager.getConnection(getUrl(), props);
-        conn.createStatement().execute("create table UpsertDateTest (k VARCHAR not null primary key,date DATE)");
+        conn.createStatement().execute("create table UpsertDateTest (k VARCHAR not null primary key,\"DATE\" DATE)");
         conn.close();
 
         props.setProperty(PhoenixRuntime.CURRENT_SCN_ATTRIB, Long.toString(ts+5));
@@ -157,7 +157,7 @@ public class UpsertValuesIT extends BaseClientManagedTimeIT {
         
         props.setProperty(PhoenixRuntime.CURRENT_SCN_ATTRIB, Long.toString(ts+10));
         conn = DriverManager.getConnection(getUrl(), props);
-        ResultSet rs = conn.createStatement().executeQuery("select k,to_char(date) from UpsertDateTest");
+        ResultSet rs = conn.createStatement().executeQuery("select k,to_char(\"DATE\") from UpsertDateTest");
         assertTrue(rs.next());
         assertEquals("a", rs.getString(1));
         assertEquals("2013-06-08 00:00:00.000", rs.getString(2));

http://git-wip-us.apache.org/repos/asf/phoenix/blob/e280cb9b/phoenix-core/src/it/java/org/apache/phoenix/end2end/VariableLengthPKIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/VariableLengthPKIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/VariableLengthPKIT.java
index 4bc0f43..6a62673 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/VariableLengthPKIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/VariableLengthPKIT.java
@@ -69,7 +69,7 @@ public class VariableLengthPKIT extends BaseClientManagedTimeIT {
                 "PTSDB(" +
                 "    INST, " +
                 "    HOST," +
-                "    DATE)" +
+                "    \"DATE\")" +
                 "VALUES (?, ?, CURRENT_DATE())");
         stmt.setString(1, "ab");
         stmt.setString(2, "a");
@@ -97,7 +97,7 @@ public class VariableLengthPKIT extends BaseClientManagedTimeIT {
                 "PTSDB(" +
                 "    INST, " +
                 "    HOST," +
-                "    DATE," +
+                "    \"DATE\"," +
                 "    VAL)" +
                 "VALUES (?, ?, ?, ?)");
         stmt.setString(1, "abc");
@@ -260,7 +260,7 @@ public class VariableLengthPKIT extends BaseClientManagedTimeIT {
     @Test
     public void testSkipScan() throws Exception {
         long ts = nextTimestamp();
-        String query = "SELECT HOST FROM PTSDB WHERE INST='abc' AND DATE>=TO_DATE('1970-01-01 00:00:00') AND DATE <TO_DATE('2171-01-01 00:00:00')";
+        String query = "SELECT HOST FROM PTSDB WHERE INST='abc' AND \"DATE\">=TO_DATE('1970-01-01 00:00:00') AND \"DATE\" <TO_DATE('2171-01-01 00:00:00')";
         String url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
         Connection conn = DriverManager.getConnection(url, props);
@@ -279,7 +279,7 @@ public class VariableLengthPKIT extends BaseClientManagedTimeIT {
     @Test
     public void testSkipMax() throws Exception {
         long ts = nextTimestamp();
-        String query = "SELECT MAX(INST),MAX(DATE) FROM PTSDB WHERE INST='abc' AND DATE>=TO_DATE('1970-01-01 00:00:00') AND DATE <TO_DATE('2171-01-01 00:00:00')";
+        String query = "SELECT MAX(INST),MAX(\"DATE\") FROM PTSDB WHERE INST='abc' AND \"DATE\">=TO_DATE('1970-01-01 00:00:00') AND \"DATE\" <TO_DATE('2171-01-01 00:00:00')";
         String url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
         Connection conn = DriverManager.getConnection(url, props);
@@ -298,7 +298,7 @@ public class VariableLengthPKIT extends BaseClientManagedTimeIT {
     @Test
     public void testSkipMaxWithLimit() throws Exception {
         long ts = nextTimestamp();
-        String query = "SELECT MAX(INST),MAX(DATE) FROM PTSDB WHERE INST='abc' AND DATE>=TO_DATE('1970-01-01 00:00:00') AND DATE <TO_DATE('2171-01-01 00:00:00') LIMIT 2";
+        String query = "SELECT MAX(INST),MAX(\"DATE\") FROM PTSDB WHERE INST='abc' AND \"DATE\">=TO_DATE('1970-01-01 00:00:00') AND \"DATE\" <TO_DATE('2171-01-01 00:00:00') LIMIT 2";
         String url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
         Connection conn = DriverManager.getConnection(url, props);
@@ -444,7 +444,7 @@ public class VariableLengthPKIT extends BaseClientManagedTimeIT {
         conn.close();
 
         // Comparisons against null are always false.
-        String query = "SELECT HOST,DATE FROM PTSDB WHERE HOST='' AND INST=''";
+        String query = "SELECT HOST,\"DATE\" FROM PTSDB WHERE HOST='' AND INST=''";
         url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         conn = DriverManager.getConnection(url, props);
         try {
@@ -473,7 +473,7 @@ public class VariableLengthPKIT extends BaseClientManagedTimeIT {
         stmt.execute();
         conn.close();
 
-        String query = "SELECT HOST,DATE FROM PTSDB WHERE INST='x' AND HOST='y'";
+        String query = "SELECT HOST,\"DATE\" FROM PTSDB WHERE INST='x' AND HOST='y'";
         url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         conn = DriverManager.getConnection(url, props);
         try {
@@ -503,8 +503,8 @@ public class VariableLengthPKIT extends BaseClientManagedTimeIT {
         stmt.execute();
         conn.close();
 
-        String query1 = "SELECT INST,DATE FROM PTSDB WHERE INST='x''y'";
-        String query2 = "SELECT INST,DATE FROM PTSDB WHERE INST='x\\\'y'";
+        String query1 = "SELECT INST,\"DATE\" FROM PTSDB WHERE INST='x''y'";
+        String query2 = "SELECT INST,\"DATE\" FROM PTSDB WHERE INST='x\\\'y'";
         url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         conn = DriverManager.getConnection(url, props);
         try {
@@ -544,7 +544,7 @@ public class VariableLengthPKIT extends BaseClientManagedTimeIT {
         long ts = nextTimestamp();
         initPtsdbTableValues(ts);
 
-        String query = "SELECT HOST,DATE FROM PTSDB WHERE INST='x' AND HOST='y'";
+        String query = "SELECT HOST,\"DATE\" FROM PTSDB WHERE INST='x' AND HOST='y'";
         String url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
         Connection conn = DriverManager.getConnection(url, props);
@@ -566,7 +566,7 @@ public class VariableLengthPKIT extends BaseClientManagedTimeIT {
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
         Connection conn = DriverManager.getConnection(url, props);
         conn.setAutoCommit(true);
-        PreparedStatement stmt = conn.prepareStatement("upsert into "+PTSDB2_NAME+"(inst,date,val2) VALUES (?, ?, ?)");
+        PreparedStatement stmt = conn.prepareStatement("upsert into "+PTSDB2_NAME+"(inst,\"DATE\",val2) VALUES (?, ?, ?)");
         stmt.setString(1, "a");
         stmt.setDate(2, d);
         stmt.setDouble(3, 101.3);
@@ -603,7 +603,7 @@ public class VariableLengthPKIT extends BaseClientManagedTimeIT {
         String query = "SELECT MAX(val2)"
         + " FROM "+PTSDB2_NAME
         + " WHERE inst='a'"
-        + " GROUP BY ROUND(date,'day',1)"
+        + " GROUP BY ROUND(\"DATE\",'day',1)"
         + " ORDER BY MAX(val2)"; // disambiguate row order
         String url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
@@ -631,8 +631,8 @@ public class VariableLengthPKIT extends BaseClientManagedTimeIT {
 
         String query = "SELECT inst,MAX(val2),MIN(val2)"
         + " FROM "+PTSDB2_NAME
-        + " GROUP BY inst,ROUND(date,'day',1)"
-        + " ORDER BY inst,ROUND(date,'day',1)"
+        + " GROUP BY inst,ROUND(\"DATE\",'day',1)"
+        + " ORDER BY inst,ROUND(\"DATE\",'day',1)"
         ;
         String url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
@@ -701,9 +701,9 @@ public class VariableLengthPKIT extends BaseClientManagedTimeIT {
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
         props.setProperty(PhoenixRuntime.CURRENT_SCN_ATTRIB, Long.toString(ts));
         String query = "SELECT SUM(val1),SUM(val2),SUM(val3) FROM "+PTSDB2_NAME;
-        String sql1 = "UPSERT INTO "+PTSDB2_NAME+"(inst,date,val1) VALUES (?, ?, ?)";
-        String sql2 = "UPSERT INTO "+PTSDB2_NAME+"(inst,date,val2) VALUES (?, ?, ?)";
-        String sql3 = "UPSERT INTO "+PTSDB2_NAME+"(inst,date,val3) VALUES (?, ?, ?)";
+        String sql1 = "UPSERT INTO "+PTSDB2_NAME+"(inst,\"DATE\",val1) VALUES (?, ?, ?)";
+        String sql2 = "UPSERT INTO "+PTSDB2_NAME+"(inst,\"DATE\",val2) VALUES (?, ?, ?)";
+        String sql3 = "UPSERT INTO "+PTSDB2_NAME+"(inst,\"DATE\",val3) VALUES (?, ?, ?)";
         Connection conn = DriverManager.getConnection(getUrl(), props);
         conn.setAutoCommit(false);
         // conn.setAutoCommit(true);
@@ -801,7 +801,7 @@ public class VariableLengthPKIT extends BaseClientManagedTimeIT {
             assertTrue(rs.next());
             assertEquals("x",rs.getString("inst"));
             assertEquals("y",rs.getString("host"));
-            assertEquals(D1, rs.getDate("date"));
+            assertEquals(D1, rs.getDate("DATE"));
             assertEquals(BigDecimal.valueOf(0.5), rs.getBigDecimal("val"));
             assertFalse(rs.next());
         } finally {
@@ -814,7 +814,7 @@ public class VariableLengthPKIT extends BaseClientManagedTimeIT {
         long ts = nextTimestamp();
         initPtsdbTableValues(ts);
 
-        String query = "SELECT HOST,TO_CHAR(DATE) FROM PTSDB WHERE INST='x' AND HOST='y'";
+        String query = "SELECT HOST,TO_CHAR(\"DATE\") FROM PTSDB WHERE INST='x' AND HOST='y'";
         String url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
         Connection conn = DriverManager.getConnection(url, props);
@@ -835,7 +835,7 @@ public class VariableLengthPKIT extends BaseClientManagedTimeIT {
 
         String format = "HH:mm:ss";
         Format dateFormatter = DateUtil.getDateFormatter(format);
-        String query = "SELECT HOST,TO_CHAR(DATE,'" + format + "') FROM PTSDB WHERE INST='x' AND HOST='y'";
+        String query = "SELECT HOST,TO_CHAR(\"DATE\",'" + format + "') FROM PTSDB WHERE INST='x' AND HOST='y'";
         String url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
         Connection conn = DriverManager.getConnection(url, props);
@@ -856,7 +856,7 @@ public class VariableLengthPKIT extends BaseClientManagedTimeIT {
 
         String format = "yyyy-MM-dd HH:mm:ss.S";
         Format dateFormatter = DateUtil.getDateFormatter(format);
-        String query = "SELECT HOST,TO_CHAR(DATE,'" + format + "') FROM PTSDB WHERE INST='x' AND HOST='y' and DATE=TO_DATE(?,'" + format + "')";
+        String query = "SELECT HOST,TO_CHAR(\"DATE\",'" + format + "') FROM PTSDB WHERE INST='x' AND HOST='y' and \"DATE\"=TO_DATE(?,'" + format + "')";
         String url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
         Connection conn = DriverManager.getConnection(url, props);
@@ -1604,7 +1604,7 @@ public class VariableLengthPKIT extends BaseClientManagedTimeIT {
         String url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + ts;
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
         Connection conn = DriverManager.getConnection(url, props);
-        PreparedStatement stmt = conn.prepareStatement("upsert into PTSDB(INST, HOST, DATE, VAL, PATTERN VARCHAR) VALUES (?, ?, ?, 0.5, 'x_Z%')");
+        PreparedStatement stmt = conn.prepareStatement("upsert into PTSDB(INST, HOST, \"DATE\", VAL, PATTERN VARCHAR) VALUES (?, ?, ?, 0.5, 'x_Z%')");
         stmt.setDate(3, D1);
 
         stmt.setString(1, "a");
@@ -1742,7 +1742,7 @@ public class VariableLengthPKIT extends BaseClientManagedTimeIT {
         stmt.execute();
         conn.close();
 
-        String query = "SELECT HOST,INST,DATE FROM PTSDB WHERE HOST IS NULL AND INST IS NULL AND DATE=?";
+        String query = "SELECT HOST,INST,\"DATE\" FROM PTSDB WHERE HOST IS NULL AND INST IS NULL AND \"DATE\"=?";
         url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         conn = DriverManager.getConnection(url, props);
         try {

http://git-wip-us.apache.org/repos/asf/phoenix/blob/e280cb9b/phoenix-core/src/test/java/org/apache/phoenix/compile/JoinQueryCompilerTest.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/test/java/org/apache/phoenix/compile/JoinQueryCompilerTest.java b/phoenix-core/src/test/java/org/apache/phoenix/compile/JoinQueryCompilerTest.java
index 665af51..f62e716 100644
--- a/phoenix-core/src/test/java/org/apache/phoenix/compile/JoinQueryCompilerTest.java
+++ b/phoenix-core/src/test/java/org/apache/phoenix/compile/JoinQueryCompilerTest.java
@@ -86,7 +86,7 @@ public class JoinQueryCompilerTest extends BaseConnectionlessQueryTest {
     @Test
     public void testExplainPlan() throws Exception {
         Connection conn = DriverManager.getConnection(getUrl());
-        String query = "EXPLAIN SELECT s.\"supplier_id\", \"order_id\", c.name, i.name, quantity, o.date FROM " + JOIN_ORDER_TABLE_FULL_NAME + " o LEFT JOIN " 
+        String query = "EXPLAIN SELECT s.\"supplier_id\", \"order_id\", c.name, i.name, quantity, o.\"DATE\" FROM " + JOIN_ORDER_TABLE_FULL_NAME + " o LEFT JOIN "
     	+ JOIN_CUSTOMER_TABLE_FULL_NAME + " c ON o.\"customer_id\" = c.\"customer_id\" AND c.name LIKE 'C%' LEFT JOIN " 
     	+ JOIN_ITEM_TABLE_FULL_NAME + " i ON o.\"item_id\" = i.\"item_id\" RIGHT JOIN " 
     	+ JOIN_SUPPLIER_TABLE_FULL_NAME + " s ON s.\"supplier_id\" = i.\"supplier_id\" WHERE i.name LIKE 'T%'";

http://git-wip-us.apache.org/repos/asf/phoenix/blob/e280cb9b/phoenix-core/src/test/java/org/apache/phoenix/compile/QueryOptimizerTest.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/test/java/org/apache/phoenix/compile/QueryOptimizerTest.java b/phoenix-core/src/test/java/org/apache/phoenix/compile/QueryOptimizerTest.java
index 5f452f1..47dfcd3 100644
--- a/phoenix-core/src/test/java/org/apache/phoenix/compile/QueryOptimizerTest.java
+++ b/phoenix-core/src/test/java/org/apache/phoenix/compile/QueryOptimizerTest.java
@@ -444,12 +444,12 @@ public class QueryOptimizerTest extends BaseConnectionlessQueryTest {
             conn.createStatement().execute("create table "
                     + "XYZ.ABC"
                     + "   (organization_id char(15) not null, \n"
-                    + "    dec DECIMAL(10,2) not null,\n"
+                    + "    \"DEC\" DECIMAL(10,2) not null,\n"
                     + "    a_string_array varchar(100) array[] not null,\n"
                     + "    b_string varchar(100),\n"
                     + "    CF.a_integer integer,\n"
                     + "    a_date date,\n"
-                    + "    CONSTRAINT pk PRIMARY KEY (organization_id, dec, a_string_array)\n"
+                    + "    CONSTRAINT pk PRIMARY KEY (organization_id, \"DEC\", a_string_array)\n"
                     + ")" + (salted ? "SALT_BUCKETS=4" : "") + (multitenant == true ? (salted ? ",MULTI_TENANT=true" : "MULTI_TENANT=true") : ""));
 
             
@@ -470,10 +470,10 @@ public class QueryOptimizerTest extends BaseConnectionlessQueryTest {
             String expectedColumnNameDataTypes = multitenant ? "\"DEC\" DECIMAL(10,2),\"A_STRING_ARRAY\" VARCHAR(100) ARRAY" : "\"ORGANIZATION_ID\" CHAR(15),\"DEC\" DECIMAL(10,2),\"A_STRING_ARRAY\" VARCHAR(100) ARRAY";
             String tableName = multitenant ? "ABC_VIEW" : "XYZ.ABC";
             String tenantFilter = multitenant ? "" : "organization_id = ? AND ";
-            String orderByRowKeyClause = multitenant ? "dec" : "organization_id";
+            String orderByRowKeyClause = multitenant ? "DEC" : "organization_id";
             
             // Filter on row key columns of data table. No order by. No limit.
-            sql = "SELECT CF.a_integer FROM " + tableName + " where " + tenantFilter + " dec = ? and a_string_array = ?";
+            sql = "SELECT CF.a_integer FROM " + tableName + " where " + tenantFilter + " \"DEC\" = ? and a_string_array = ?";
             stmt = conn.prepareStatement(sql);
             int counter = 1;
             if (!multitenant) {
@@ -489,7 +489,7 @@ public class QueryOptimizerTest extends BaseConnectionlessQueryTest {
             
             counter = 1;
             // Filter on row key columns of data table. Order by row key columns. Limit specified.
-            sql = "SELECT CF.a_integer FROM " + tableName + " where " + tenantFilter + " dec = ? and a_string_array = ? ORDER BY " + orderByRowKeyClause + " LIMIT 100";
+            sql = "SELECT CF.a_integer FROM " + tableName + " where " + tenantFilter + " \"DEC\" = ? and a_string_array = ? ORDER BY " + orderByRowKeyClause + " LIMIT 100";
             stmt = conn.prepareStatement(sql);
             if (!multitenant) {
                 stmt.setString(counter++, "ORGID");
@@ -501,7 +501,7 @@ public class QueryOptimizerTest extends BaseConnectionlessQueryTest {
             
             counter = 1;
             // Filter on row key columns of data table. Order by non-row key columns. Limit specified.
-            sql = "SELECT CF.a_integer FROM " + tableName + " where " + tenantFilter + " dec = ? and a_string_array = ? ORDER BY a_date LIMIT 100";
+            sql = "SELECT CF.a_integer FROM " + tableName + " where " + tenantFilter + " \"DEC\" = ? and a_string_array = ? ORDER BY a_date LIMIT 100";
             stmt = conn.prepareStatement(sql);
             if (!multitenant) {
                 stmt.setString(counter++, "ORGID");

http://git-wip-us.apache.org/repos/asf/phoenix/blob/e280cb9b/phoenix-core/src/test/java/org/apache/phoenix/query/BaseTest.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/test/java/org/apache/phoenix/query/BaseTest.java b/phoenix-core/src/test/java/org/apache/phoenix/query/BaseTest.java
index bdcd520..a178491 100644
--- a/phoenix-core/src/test/java/org/apache/phoenix/query/BaseTest.java
+++ b/phoenix-core/src/test/java/org/apache/phoenix/query/BaseTest.java
@@ -353,7 +353,7 @@ public abstract class BaseTest {
                 "    io_time bigint,\n" +
                 "    region varchar,\n" +
                 "    unset_column decimal(31,10)\n" +
-                "    CONSTRAINT pk PRIMARY KEY (organization_id, DATe, feature, UNIQUE_USERS))");
+                "    CONSTRAINT pk PRIMARY KEY (organization_id, \"DATE\", feature, UNIQUE_USERS))");
         builder.put(CUSTOM_ENTITY_DATA_FULL_NAME,"create table " + CUSTOM_ENTITY_DATA_FULL_NAME +
                 "   (organization_id char(15) not null, \n" +
                 "    key_prefix char(3) not null,\n" +

http://git-wip-us.apache.org/repos/asf/phoenix/blob/e280cb9b/phoenix-core/src/test/java/org/apache/phoenix/query/QueryPlanTest.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/test/java/org/apache/phoenix/query/QueryPlanTest.java b/phoenix-core/src/test/java/org/apache/phoenix/query/QueryPlanTest.java
index 37010b3..7aef5a3 100644
--- a/phoenix-core/src/test/java/org/apache/phoenix/query/QueryPlanTest.java
+++ b/phoenix-core/src/test/java/org/apache/phoenix/query/QueryPlanTest.java
@@ -36,9 +36,9 @@ public class QueryPlanTest extends BaseConnectionlessQueryTest {
     public void testExplainPlan() throws Exception {
         String[] queryPlans = new String[] {
 
-                "SELECT host FROM PTSDB WHERE inst IS NULL AND host IS NOT NULL AND date >= to_date('2013-01-01')",
+                "SELECT host FROM PTSDB WHERE inst IS NULL AND host IS NOT NULL AND \"DATE\" >= to_date('2013-01-01')",
                 "CLIENT PARALLEL 1-WAY RANGE SCAN OVER PTSDB [null,not null]\n" + 
-                "    SERVER FILTER BY FIRST KEY ONLY AND DATE >= DATE '2013-01-01 00:00:00.000'",
+                "    SERVER FILTER BY FIRST KEY ONLY AND \"DATE\" >= DATE '2013-01-01 00:00:00.000'",
 
                 "SELECT a_string,b_string FROM atable WHERE organization_id = '000000000000001' AND entity_id > '000000000000002' AND entity_id < '000000000000008' AND (organization_id,entity_id) >= ('000000000000001','000000000000005') ",
                 "CLIENT PARALLEL 1-WAY RANGE SCAN OVER ATABLE ['000000000000001','000000000000005'] - ['000000000000001','000000000000008']",
@@ -51,14 +51,14 @@ public class QueryPlanTest extends BaseConnectionlessQueryTest {
                 "CLIENT PARALLEL 1-WAY SMALL SKIP SCAN ON 3 KEYS OVER PTSDB3 [~'na3'] - [~'na1']\n" + 
                 "    SERVER FILTER BY FIRST KEY ONLY",
 
-                "SELECT inst,date FROM PTSDB2 WHERE inst = 'na1' ORDER BY inst DESC, date DESC",
+                "SELECT inst,\"DATE\" FROM PTSDB2 WHERE inst = 'na1' ORDER BY inst DESC, \"DATE\" DESC",
                 "CLIENT PARALLEL 1-WAY REVERSE RANGE SCAN OVER PTSDB2 ['na1']\n" +
                 "    SERVER FILTER BY FIRST KEY ONLY",
 
                 // Since inst IS NOT NULL is unbounded, we won't continue optimizing
-                "SELECT host FROM PTSDB WHERE inst IS NOT NULL AND host IS NULL AND date >= to_date('2013-01-01')",
+                "SELECT host FROM PTSDB WHERE inst IS NOT NULL AND host IS NULL AND \"DATE\" >= to_date('2013-01-01')",
                 "CLIENT PARALLEL 1-WAY RANGE SCAN OVER PTSDB [not null]\n" + 
-                "    SERVER FILTER BY FIRST KEY ONLY AND (HOST IS NULL AND DATE >= DATE '2013-01-01 00:00:00.000')",
+                "    SERVER FILTER BY FIRST KEY ONLY AND (HOST IS NULL AND \"DATE\" >= DATE '2013-01-01 00:00:00.000')",
 
                 "SELECT a_string,b_string FROM atable WHERE organization_id = '000000000000001' AND entity_id = '000000000000002' AND x_integer = 2 AND a_integer < 5 ",
                 "CLIENT PARALLEL 1-WAY POINT LOOKUP ON 1 KEY OVER ATABLE\n" + 
@@ -77,11 +77,11 @@ public class QueryPlanTest extends BaseConnectionlessQueryTest {
                 "SELECT * FROM atable",
                 "CLIENT PARALLEL 1-WAY FULL SCAN OVER ATABLE",
 
-                "SELECT inst,host FROM PTSDB WHERE inst IN ('na1', 'na2','na3') AND host IN ('a','b') AND date >= to_date('2013-01-01') AND date < to_date('2013-01-02')",
+                "SELECT inst,host FROM PTSDB WHERE inst IN ('na1', 'na2','na3') AND host IN ('a','b') AND \"DATE\" >= to_date('2013-01-01') AND \"DATE\" < to_date('2013-01-02')",
                 "CLIENT PARALLEL 1-WAY SKIP SCAN ON 6 RANGES OVER PTSDB ['na1','a','2013-01-01'] - ['na3','b','2013-01-02']\n" + 
                 "    SERVER FILTER BY FIRST KEY ONLY",
 
-                "SELECT inst,host FROM PTSDB WHERE inst LIKE 'na%' AND host IN ('a','b') AND date >= to_date('2013-01-01') AND date < to_date('2013-01-02')",
+                "SELECT inst,host FROM PTSDB WHERE inst LIKE 'na%' AND host IN ('a','b') AND \"DATE\" >= to_date('2013-01-01') AND \"DATE\" < to_date('2013-01-02')",
                 "CLIENT PARALLEL 1-WAY SKIP SCAN ON 2 RANGES OVER PTSDB ['na','a','2013-01-01'] - ['nb','b','2013-01-02']\n" + 
                 "    SERVER FILTER BY FIRST KEY ONLY",
 


[2/2] phoenix git commit: PHOENIX-3265 Double-quote column names that use reserved keywords (Eric Lomore)

Posted by ma...@apache.org.
PHOENIX-3265 Double-quote column names that use reserved keywords (Eric Lomore)


Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo
Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/e280cb9b
Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/e280cb9b
Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/e280cb9b

Branch: refs/heads/master
Commit: e280cb9b63619960c4b01510655515157298f1ef
Parents: d1156ea
Author: maryannxue <ma...@gmail.com>
Authored: Wed Oct 12 11:28:48 2016 -0700
Committer: maryannxue <ma...@gmail.com>
Committed: Wed Oct 12 11:30:25 2016 -0700

----------------------------------------------------------------------
 .../phoenix/end2end/AbsFunctionEnd2EndIT.java   |   6 +-
 .../phoenix/end2end/ArrayFillFunctionIT.java    |   6 +-
 .../phoenix/end2end/ExecuteStatementsIT.java    |  12 +-
 .../phoenix/end2end/FirstValueFunctionIT.java   |  60 ++++----
 .../org/apache/phoenix/end2end/HashJoinIT.java  |  18 +--
 .../phoenix/end2end/LastValueFunctionIT.java    | 148 +++++++++----------
 .../phoenix/end2end/NthValueFunctionIT.java     |  48 +++---
 .../phoenix/end2end/ProductMetricsIT.java       |  68 ++++-----
 .../org/apache/phoenix/end2end/QueryMoreIT.java |   4 +-
 .../phoenix/end2end/RoundFloorCeilFuncIT.java   |  16 +-
 .../phoenix/end2end/SignFunctionEnd2EndIT.java  |   6 +-
 .../apache/phoenix/end2end/SortMergeJoinIT.java |  44 +++---
 .../org/apache/phoenix/end2end/SortOrderIT.java |   6 +-
 .../end2end/SubqueryUsingSortMergeJoinIT.java   |   2 +-
 .../apache/phoenix/end2end/UpsertValuesIT.java  |  10 +-
 .../phoenix/end2end/VariableLengthPKIT.java     |  46 +++---
 .../phoenix/compile/JoinQueryCompilerTest.java  |   2 +-
 .../phoenix/compile/QueryOptimizerTest.java     |  12 +-
 .../java/org/apache/phoenix/query/BaseTest.java |   2 +-
 .../org/apache/phoenix/query/QueryPlanTest.java |  14 +-
 20 files changed, 265 insertions(+), 265 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/phoenix/blob/e280cb9b/phoenix-core/src/it/java/org/apache/phoenix/end2end/AbsFunctionEnd2EndIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/AbsFunctionEnd2EndIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/AbsFunctionEnd2EndIT.java
index 8447286..3137cdf 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/AbsFunctionEnd2EndIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/AbsFunctionEnd2EndIT.java
@@ -46,7 +46,7 @@ public class AbsFunctionEnd2EndIT extends ParallelStatsDisabledIT {
         try {
             conn = DriverManager.getConnection(getUrl());
             String ddl;
-            ddl = "CREATE TABLE " + TABLE_NAME + " (k VARCHAR NOT NULL PRIMARY KEY, dec DECIMAL, doub DOUBLE, fl FLOAT, inte INTEGER, lon BIGINT, smalli SMALLINT, tinyi TINYINT)";
+            ddl = "CREATE TABLE " + TABLE_NAME + " (k VARCHAR NOT NULL PRIMARY KEY, \"DEC\" DECIMAL, doub DOUBLE, fl FLOAT, inte INTEGER, lon BIGINT, smalli SMALLINT, tinyi TINYINT)";
             conn.createStatement().execute(ddl);
             conn.commit();
         } finally {
@@ -71,7 +71,7 @@ public class AbsFunctionEnd2EndIT extends ParallelStatsDisabledIT {
 
     private void testSignedNumberSpec(Connection conn, double data) throws Exception {
         updateSignedTable(conn, data);
-        ResultSet rs = conn.createStatement() .executeQuery("SELECT ABS(dec),ABS(doub),ABS(fl),ABS(inte),ABS(lon),ABS(smalli),ABS(tinyi) FROM " + TABLE_NAME);
+        ResultSet rs = conn.createStatement() .executeQuery("SELECT ABS(\"DEC\"),ABS(doub),ABS(fl),ABS(inte),ABS(lon),ABS(smalli),ABS(tinyi) FROM " + TABLE_NAME);
         assertTrue(rs.next());
         Double d = Double.valueOf(data);
         assertEquals(rs.getBigDecimal(1).compareTo(BigDecimal.valueOf(data).abs()), 0);
@@ -83,7 +83,7 @@ public class AbsFunctionEnd2EndIT extends ParallelStatsDisabledIT {
         assertEquals(rs.getByte(7), Math.abs(d.byteValue()));
         assertTrue(!rs.next());
 
-        PreparedStatement stmt = conn.prepareStatement("SELECT k FROM " + TABLE_NAME + " WHERE ABS(dec)=? AND ABS(doub)=? AND ABS(fl)=? AND ABS(inte)=? AND ABS(lon)=? AND ABS(smalli)=? AND ABS(tinyi)=?");
+        PreparedStatement stmt = conn.prepareStatement("SELECT k FROM " + TABLE_NAME + " WHERE ABS(\"DEC\")=? AND ABS(doub)=? AND ABS(fl)=? AND ABS(inte)=? AND ABS(lon)=? AND ABS(smalli)=? AND ABS(tinyi)=?");
         stmt.setBigDecimal(1, BigDecimal.valueOf(data).abs());
         stmt.setDouble(2, Math.abs(d.doubleValue()));
         stmt.setFloat(3, Math.abs(d.floatValue()));

http://git-wip-us.apache.org/repos/asf/phoenix/blob/e280cb9b/phoenix-core/src/it/java/org/apache/phoenix/end2end/ArrayFillFunctionIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/ArrayFillFunctionIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/ArrayFillFunctionIT.java
index 96bafad..dfa0beb 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/ArrayFillFunctionIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/ArrayFillFunctionIT.java
@@ -44,10 +44,10 @@ public class ArrayFillFunctionIT extends ParallelStatsDisabledIT {
         tableName = generateUniqueName();
         Connection conn = DriverManager.getConnection(getUrl());
         String ddl = "CREATE TABLE " + tableName
-            + " (region_name VARCHAR PRIMARY KEY,length1 INTEGER, length2 INTEGER,date DATE,time TIME,timestamp TIMESTAMP,varchar VARCHAR,integer INTEGER,double DOUBLE,bigint BIGINT,char CHAR(15),double1 DOUBLE,char1 CHAR(17),nullcheck INTEGER,chars2 CHAR(15)[], varchars2 VARCHAR[])";
+            + " (region_name VARCHAR PRIMARY KEY,length1 INTEGER, length2 INTEGER,\"DATE\" DATE,time TIME,timestamp TIMESTAMP,varchar VARCHAR,integer INTEGER,double DOUBLE,bigint BIGINT,char CHAR(15),double1 DOUBLE,char1 CHAR(17),nullcheck INTEGER,chars2 CHAR(15)[], varchars2 VARCHAR[])";
         conn.createStatement().execute(ddl);
         String dml = "UPSERT INTO " + tableName
-            + "(region_name,length1,length2,date,time,timestamp,varchar,integer,double,bigint,char,double1,char1,nullcheck,chars2,varchars2) VALUES('SF Bay Area',"
+            + "(region_name,length1,length2,\"DATE\",time,timestamp,varchar,integer,double,bigint,char,double1,char1,nullcheck,chars2,varchars2) VALUES('SF Bay Area',"
             +
                 "0," +
                 "-3," +
@@ -181,7 +181,7 @@ public class ArrayFillFunctionIT extends ParallelStatsDisabledIT {
 
         ResultSet rs;
         rs = conn.createStatement().executeQuery(
-            "SELECT ARRAY_FILL(date,3) FROM " + tableName + " WHERE region_name = 'SF Bay Area'");
+            "SELECT ARRAY_FILL(\"DATE\",3) FROM " + tableName + " WHERE region_name = 'SF Bay Area'");
         assertTrue(rs.next());
 
         Object[] objects = new Object[]{new Date(1432102334184l), new Date(1432102334184l), new Date(1432102334184l)};

http://git-wip-us.apache.org/repos/asf/phoenix/blob/e280cb9b/phoenix-core/src/it/java/org/apache/phoenix/end2end/ExecuteStatementsIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/ExecuteStatementsIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/ExecuteStatementsIT.java
index bc21af0..78f46cc 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/ExecuteStatementsIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/ExecuteStatementsIT.java
@@ -65,17 +65,17 @@ public class ExecuteStatementsIT extends ParallelStatsDisabledIT {
             "create table " + ptsdbTableName +
             "   (inst varchar null,\n" + 
             "    host varchar null,\n" + 
-            "    date date not null,\n" + 
+            "    \"DATE\" date not null,\n" +
             "    val decimal\n" +
-            "    CONSTRAINT pk PRIMARY KEY (inst,host,date))\n" +
+            "    CONSTRAINT pk PRIMARY KEY (inst,host,\"DATE\"))\n" +
             "    split on (?,?,?);\n" +
             "alter table " + ptsdbTableName + " add if not exists val decimal;\n" +  // Shouldn't error out b/c of if not exists clause
             "alter table " + ptsdbTableName + " drop column if exists blah;\n" +  // Shouldn't error out b/c of if exists clause
             "drop table if exists FOO.BAR;\n" + // Shouldn't error out b/c of if exists clause
-            "UPSERT INTO " + ptsdbTableName + "(date, val, host) " +
+            "UPSERT INTO " + ptsdbTableName + "(\"DATE\", val, host) " +
             "    SELECT current_date(), x_integer+2, entity_id FROM " + tableName + " WHERE a_integer >= ?;" +
-            "UPSERT INTO " + ptsdbTableName + "(date, val, inst)\n" +
-            "    SELECT date+1, val*10, host FROM " + ptsdbTableName + ";";
+            "UPSERT INTO " + ptsdbTableName + "(\"DATE\", val, inst)\n" +
+            "    SELECT \"DATE\"+1, val*10, host FROM " + ptsdbTableName + ";";
         
         Date now = new Date(System.currentTimeMillis());
         Connection conn = DriverManager.getConnection(getUrl());
@@ -85,7 +85,7 @@ public class ExecuteStatementsIT extends ParallelStatsDisabledIT {
         assertEquals(7, nStatements);
 
         Date then = new Date(System.currentTimeMillis() + QueryConstants.MILLIS_IN_DAY);
-        String query = "SELECT host,inst, date,val FROM " + ptsdbTableName + " where inst is not null";
+        String query = "SELECT host,inst,\"DATE\",val FROM " + ptsdbTableName + " where inst is not null";
         PreparedStatement statement = conn.prepareStatement(query);
         
         ResultSet rs = statement.executeQuery();

http://git-wip-us.apache.org/repos/asf/phoenix/blob/e280cb9b/phoenix-core/src/it/java/org/apache/phoenix/end2end/FirstValueFunctionIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/FirstValueFunctionIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/FirstValueFunctionIT.java
index a2fa244..9992341 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/FirstValueFunctionIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/FirstValueFunctionIT.java
@@ -36,23 +36,23 @@ public class FirstValueFunctionIT extends ParallelStatsDisabledIT {
         String tableName = generateUniqueName();
         String ddl = "CREATE TABLE IF NOT EXISTS " + tableName + " "
                 + "(id INTEGER NOT NULL PRIMARY KEY, page_id UNSIGNED_LONG,"
-                + " date BIGINT, \"value\" BIGINT)";
+                + " \"DATE\" BIGINT, \"value\" BIGINT)";
         conn.createStatement().execute(ddl);
 
         conn.createStatement().execute(
-            "UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (1, 8, 1, 3)");
+            "UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (1, 8, 1, 3)");
         conn.createStatement().execute(
-            "UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (2, 8, 2, 7)");
+            "UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (2, 8, 2, 7)");
         conn.createStatement().execute(
-            "UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (3, 8, 3, 9)");
+            "UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (3, 8, 3, 9)");
         conn.createStatement().execute(
-            "UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (5, 8, 5, 158)");
+            "UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (5, 8, 5, 158)");
         conn.createStatement().execute(
-            "UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (4, 8, 4, 5)");
+            "UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (4, 8, 4, 5)");
         conn.commit();
 
         ResultSet rs = conn.createStatement().executeQuery(
-            "SELECT FIRST_VALUE(\"value\") WITHIN GROUP (ORDER BY date ASC) FROM " + tableName
+            "SELECT FIRST_VALUE(\"value\") WITHIN GROUP (ORDER BY \"DATE\" ASC) FROM " + tableName
                 + " GROUP BY page_id");
 
         assertTrue(rs.next());
@@ -129,23 +129,23 @@ public class FirstValueFunctionIT extends ParallelStatsDisabledIT {
         String tableName = generateUniqueName();
         String ddl = "CREATE TABLE IF NOT EXISTS " + tableName + " "
                 + "(id INTEGER NOT NULL PRIMARY KEY, page_id UNSIGNED_LONG, "
-                + "date DOUBLE, \"value\" DOUBLE)";
+                + "\"DATE\" DOUBLE, \"value\" DOUBLE)";
         conn.createStatement().execute(ddl);
 
         conn.createStatement().execute(
-            "UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (1, 8, 1, 300)");
+            "UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (1, 8, 1, 300)");
         conn.createStatement().execute(
-            "UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (2, 8, 2, 7)");
+            "UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (2, 8, 2, 7)");
         conn.createStatement().execute(
-            "UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (3, 8, 3, 9)");
+            "UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (3, 8, 3, 9)");
         conn.createStatement().execute(
-            "UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (5, 8, 4, 2)");
+            "UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (5, 8, 4, 2)");
         conn.createStatement().execute(
-            "UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (4, 8, 5, 400)");
+            "UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (4, 8, 5, 400)");
         conn.commit();
 
         ResultSet rs = conn.createStatement().executeQuery(
-            "SELECT FIRST_VALUE(\"value\") WITHIN GROUP (ORDER BY date ASC) FROM " + tableName
+            "SELECT FIRST_VALUE(\"value\") WITHIN GROUP (ORDER BY \"DATE\" ASC) FROM " + tableName
                 + " GROUP BY page_id");
 
         assertTrue(rs.next());
@@ -160,23 +160,23 @@ public class FirstValueFunctionIT extends ParallelStatsDisabledIT {
         String table_name = generateUniqueName();
         String ddl = "CREATE TABLE IF NOT EXISTS " + table_name + " "
                 + "(id INTEGER NOT NULL PRIMARY KEY, page_id UNSIGNED_LONG, "
-                + "date VARCHAR(3), \"value\" VARCHAR(3))";
+                + "\"DATE\" VARCHAR(3), \"value\" VARCHAR(3))";
         conn.createStatement().execute(ddl);
 
         conn.createStatement().execute(
-            "UPSERT INTO " + table_name + " (id, page_id, date, \"value\") VALUES (1, 8, '1', '3')");
+            "UPSERT INTO " + table_name + " (id, page_id, \"DATE\", \"value\") VALUES (1, 8, '1', '3')");
         conn.createStatement().execute(
-            "UPSERT INTO " + table_name + " (id, page_id, date, \"value\") VALUES (2, 8, '2', '7')");
+            "UPSERT INTO " + table_name + " (id, page_id, \"DATE\", \"value\") VALUES (2, 8, '2', '7')");
         conn.createStatement().execute(
-            "UPSERT INTO " + table_name + " (id, page_id, date, \"value\") VALUES (3, 8, '3', '9')");
+            "UPSERT INTO " + table_name + " (id, page_id, \"DATE\", \"value\") VALUES (3, 8, '3', '9')");
         conn.createStatement().execute(
-            "UPSERT INTO " + table_name + " (id, page_id, date, \"value\") VALUES (5, 8, '4', '2')");
+            "UPSERT INTO " + table_name + " (id, page_id, \"DATE\", \"value\") VALUES (5, 8, '4', '2')");
         conn.createStatement().execute(
-            "UPSERT INTO " + table_name + " (id, page_id, date, \"value\") VALUES (4, 8, '5', '4')");
+            "UPSERT INTO " + table_name + " (id, page_id, \"DATE\", \"value\") VALUES (4, 8, '5', '4')");
         conn.commit();
 
         ResultSet rs = conn.createStatement().executeQuery(
-            "SELECT FIRST_VALUE(\"value\") WITHIN GROUP (ORDER BY date ASC) FROM " + table_name
+            "SELECT FIRST_VALUE(\"value\") WITHIN GROUP (ORDER BY \"DATE\" ASC) FROM " + table_name
                 + " GROUP BY page_id");
 
         assertTrue(rs.next());
@@ -191,23 +191,23 @@ public class FirstValueFunctionIT extends ParallelStatsDisabledIT {
         String tableName = generateUniqueName();
         String ddl = "CREATE TABLE IF NOT EXISTS " + tableName + " "
                 + "(id INTEGER NOT NULL PRIMARY KEY, page_id UNSIGNED_LONG,"
-                + " date FLOAT, \"value\" FLOAT)";
+                + " \"DATE\" FLOAT, \"value\" FLOAT)";
         conn.createStatement().execute(ddl);
 
         conn.createStatement().execute(
-            "UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (1, 8, 1, 300)");
+            "UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (1, 8, 1, 300)");
         conn.createStatement().execute(
-            "UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (2, 8, 2, 7)");
+            "UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (2, 8, 2, 7)");
         conn.createStatement().execute(
-            "UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (3, 8, 3, 9)");
+            "UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (3, 8, 3, 9)");
         conn.createStatement().execute(
-            "UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (5, 8, 4, 2)");
+            "UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (5, 8, 4, 2)");
         conn.createStatement().execute(
-            "UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (4, 8, 5, 400)");
+            "UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (4, 8, 5, 400)");
         conn.commit();
 
         ResultSet rs = conn.createStatement().executeQuery(
-            "SELECT FIRST_VALUE(\"value\") WITHIN GROUP (ORDER BY date ASC) FROM " + tableName
+            "SELECT FIRST_VALUE(\"value\") WITHIN GROUP (ORDER BY \"DATE\" ASC) FROM " + tableName
                 + " GROUP BY page_id");
 
         assertTrue(rs.next());
@@ -223,7 +223,7 @@ public class FirstValueFunctionIT extends ParallelStatsDisabledIT {
         String tableName = generateUniqueName();
         String ddl = "CREATE TABLE IF NOT EXISTS " + tableName + " "
                 + "(id INTEGER NOT NULL PRIMARY KEY, page_id UNSIGNED_LONG,"
-                + " date FLOAT, \"value\" FLOAT)";
+                + " \"DATE\" FLOAT, \"value\" FLOAT)";
         conn.createStatement().execute(ddl);
 
         conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id) VALUES (1, 8)");
@@ -234,7 +234,7 @@ public class FirstValueFunctionIT extends ParallelStatsDisabledIT {
         conn.commit();
 
         ResultSet rs = conn.createStatement().executeQuery(
-            "SELECT FIRST_VALUE(\"value\") WITHIN GROUP (ORDER BY date ASC) FROM " + tableName
+            "SELECT FIRST_VALUE(\"value\") WITHIN GROUP (ORDER BY \"DATE\" ASC) FROM " + tableName
                 + " GROUP BY page_id");
 
         assertTrue(rs.next());

http://git-wip-us.apache.org/repos/asf/phoenix/blob/e280cb9b/phoenix-core/src/it/java/org/apache/phoenix/end2end/HashJoinIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/HashJoinIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/HashJoinIT.java
index 0d42e27..1b90288 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/HashJoinIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/HashJoinIT.java
@@ -2813,13 +2813,13 @@ public class HashJoinIT extends BaseJoinIT {
             assertEquals(rs.getString("c.phone"), "999-999-3333");
             assertEquals(rs.getString("c.address"), "303 XXX Street");
             assertNull(rs.getString("c.loc_id"));
-            assertEquals(rs.getDate("c.date"), new Date(format.parse("2013-11-25 10:06:29").getTime()));
+            assertEquals(rs.getDate("c.\"DATE\""), new Date(format.parse("2013-11-25 10:06:29").getTime()));
             assertEquals(rs.getString("O.order_id"), "000000000000002");
             assertEquals(rs.getString("O.customer_id"), "0000000003");
             assertEquals(rs.getString("O.item_id"), "0000000006");
             assertEquals(rs.getInt("o.price"), 552);
             assertEquals(rs.getInt("o.quantity"), 2000);
-            assertEquals(rs.getTimestamp("o.date"), new Timestamp(format.parse("2013-11-25 10:06:29").getTime()));
+            assertEquals(rs.getTimestamp("o.\"DATE\""), new Timestamp(format.parse("2013-11-25 10:06:29").getTime()));
             assertEquals(rs.getString("I.item_id"), "0000000006");
             assertEquals(rs.getString("i.name"), "T6");
             assertEquals(rs.getInt("i.price"), 600);
@@ -2838,13 +2838,13 @@ public class HashJoinIT extends BaseJoinIT {
             assertEquals(rs.getString("c.phone"), "999-999-4444");
             assertEquals(rs.getString("c.address"), "404 XXX Street");
             assertEquals(rs.getString("c.loc_id"), "10004");
-            assertEquals(rs.getDate("c.date"), new Date(format.parse("2013-11-22 14:22:56").getTime()));
+            assertEquals(rs.getDate("c.\"DATE\""), new Date(format.parse("2013-11-22 14:22:56").getTime()));
             assertEquals(rs.getString("O.order_id"), "000000000000001");
             assertEquals(rs.getString("O.customer_id"), "0000000004");
             assertEquals(rs.getString("O.item_id"), "0000000001");
             assertEquals(rs.getInt("o.price"), 100);
             assertEquals(rs.getInt("o.quantity"), 1000);
-            assertEquals(rs.getTimestamp("o.date"), new Timestamp(format.parse("2013-11-22 14:22:56").getTime()));
+            assertEquals(rs.getTimestamp("o.\"DATE\""), new Timestamp(format.parse("2013-11-22 14:22:56").getTime()));
             assertEquals(rs.getString("I.item_id"), "0000000001");
             assertEquals(rs.getString("i.name"), "T1");
             assertEquals(rs.getInt("i.price"), 100);
@@ -2863,13 +2863,13 @@ public class HashJoinIT extends BaseJoinIT {
             assertEquals(rs.getString("c.phone"), "999-999-4444");
             assertEquals(rs.getString("c.address"), "404 XXX Street");
             assertEquals(rs.getString("c.loc_id"), "10004");
-            assertEquals(rs.getDate("c.date"), new Date(format.parse("2013-11-22 14:22:56").getTime()));
+            assertEquals(rs.getDate("c.\"DATE\""), new Date(format.parse("2013-11-22 14:22:56").getTime()));
             assertEquals(rs.getString("O.order_id"), "000000000000004");
             assertEquals(rs.getString("O.customer_id"), "0000000004");
             assertEquals(rs.getString("O.item_id"), "0000000006");
             assertEquals(rs.getInt("o.price"), 510);
             assertEquals(rs.getInt("o.quantity"), 4000);
-            assertEquals(rs.getTimestamp("o.date"), new Timestamp(format.parse("2013-11-26 13:26:04").getTime()));
+            assertEquals(rs.getTimestamp("o.\"DATE\""), new Timestamp(format.parse("2013-11-26 13:26:04").getTime()));
             assertEquals(rs.getString("I.item_id"), "0000000006");
             assertEquals(rs.getString("i.name"), "T6");
             assertEquals(rs.getInt("i.price"), 600);
@@ -3157,7 +3157,7 @@ public class HashJoinIT extends BaseJoinIT {
             assertEquals(rs.getString("c.phone"), "999-999-3333");
             assertEquals(rs.getString("c.address"), "303 XXX Street");
             assertNull(rs.getString("c.loc_id"));
-            assertEquals(rs.getDate("c.date"), new Date(format.parse("2013-11-25 10:06:29").getTime()));
+            assertEquals(rs.getDate("c.\"DATE\""), new Date(format.parse("2013-11-25 10:06:29").getTime()));
             assertEquals(rs.getString("qo.ooid"), "000000000000002");
             assertEquals(rs.getString("qo.ocid"), "0000000003");
             assertEquals(rs.getString("qo.oiid"), "0000000006");
@@ -3181,7 +3181,7 @@ public class HashJoinIT extends BaseJoinIT {
             assertEquals(rs.getString("c.phone"), "999-999-4444");
             assertEquals(rs.getString("c.address"), "404 XXX Street");
             assertEquals(rs.getString("c.loc_id"), "10004");
-            assertEquals(rs.getDate("c.date"), new Date(format.parse("2013-11-22 14:22:56").getTime()));
+            assertEquals(rs.getDate("c.\"DATE\""), new Date(format.parse("2013-11-22 14:22:56").getTime()));
             assertEquals(rs.getString("qo.ooid"), "000000000000001");
             assertEquals(rs.getString("qo.ocid"), "0000000004");
             assertEquals(rs.getString("qo.oiid"), "0000000001");
@@ -3205,7 +3205,7 @@ public class HashJoinIT extends BaseJoinIT {
             assertEquals(rs.getString("c.phone"), "999-999-4444");
             assertEquals(rs.getString("c.address"), "404 XXX Street");
             assertEquals(rs.getString("c.loc_id"), "10004");
-            assertEquals(rs.getDate("c.date"), new Date(format.parse("2013-11-22 14:22:56").getTime()));
+            assertEquals(rs.getDate("c.\"DATE\""), new Date(format.parse("2013-11-22 14:22:56").getTime()));
             assertEquals(rs.getString("qo.ooid"), "000000000000004");
             assertEquals(rs.getString("qo.ocid"), "0000000004");
             assertEquals(rs.getString("qo.oiid"), "0000000006");

http://git-wip-us.apache.org/repos/asf/phoenix/blob/e280cb9b/phoenix-core/src/it/java/org/apache/phoenix/end2end/LastValueFunctionIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/LastValueFunctionIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/LastValueFunctionIT.java
index 2a3ebf7..658c178 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/LastValueFunctionIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/LastValueFunctionIT.java
@@ -36,25 +36,25 @@ public class LastValueFunctionIT extends ParallelStatsDisabledIT {
         String tableName = generateUniqueName();
         String ddl = "CREATE TABLE IF NOT EXISTS " + tableName 
                 + "(id INTEGER NOT NULL PRIMARY KEY, page_id UNSIGNED_LONG,"
-                + " date DATE, \"value\" UNSIGNED_LONG)";
+                + " \"DATE\" DATE, \"value\" UNSIGNED_LONG)";
         conn.createStatement().execute(ddl);
 
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") "
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") "
                 + "VALUES (1, 8, TO_DATE('2013-01-01 00:00:00'), 300)");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") "
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") "
                 + "VALUES (2, 8, TO_DATE('2013-01-01 00:01:00'), 7)");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") "
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") "
                 + "VALUES (3, 8, TO_DATE('2013-01-01 00:02:00'), 9)");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") "
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") "
                 + "VALUES (4, 8, TO_DATE('2013-01-01 00:03:00'), 4)");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") "
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") "
                 + "VALUES (5, 8, TO_DATE('2013-01-01 00:04:00'), 2)");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") "
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") "
                 + "VALUES (6, 8, TO_DATE('2013-01-01 00:05:00'), 150)");
         conn.commit();
 
         ResultSet rs = conn.createStatement().executeQuery(
-                "SELECT LAST_VALUE(\"value\") WITHIN GROUP (ORDER BY date ASC) FROM " + tableName + " GROUP BY page_id");
+                "SELECT LAST_VALUE(\"value\") WITHIN GROUP (ORDER BY \"DATE\" ASC) FROM " + tableName + " GROUP BY page_id");
 
         assertTrue(rs.next());
         assertEquals(rs.getLong(1), 150);
@@ -68,18 +68,18 @@ public class LastValueFunctionIT extends ParallelStatsDisabledIT {
         String tableName = generateUniqueName();
 
         String ddl = "CREATE TABLE IF NOT EXISTS " + tableName 
-                + "(id INTEGER NOT NULL PRIMARY KEY, page_id UNSIGNED_LONG, date INTEGER, \"value\" INTEGER)";
+                + "(id INTEGER NOT NULL PRIMARY KEY, page_id UNSIGNED_LONG, \"DATE\" INTEGER, \"value\" INTEGER)";
         conn.createStatement().execute(ddl);
 
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (5, 8, 5, -255)");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (1, 8, 1, 3)");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (2, 8, 2, 7)");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (3, 8, 3, 9)");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (4, 8, 4, 4)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (5, 8, 5, -255)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (1, 8, 1, 3)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (2, 8, 2, 7)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (3, 8, 3, 9)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (4, 8, 4, 4)");
         conn.commit();
 
         ResultSet rs = conn.createStatement().executeQuery(
-                "SELECT LAST_VALUE(\"value\") WITHIN GROUP (ORDER BY date ASC) FROM " + tableName + " GROUP BY page_id"
+                "SELECT LAST_VALUE(\"value\") WITHIN GROUP (ORDER BY \"DATE\" ASC) FROM " + tableName + " GROUP BY page_id"
         );
 
         assertTrue(rs.next());
@@ -94,18 +94,18 @@ public class LastValueFunctionIT extends ParallelStatsDisabledIT {
 
         String ddl = "CREATE TABLE IF NOT EXISTS " + tableName 
                 + "(id INTEGER NOT NULL PRIMARY KEY, page_id UNSIGNED_LONG,"
-                + " date UNSIGNED_INT, \"value\" UNSIGNED_INT)";
+                + " \"DATE\" UNSIGNED_INT, \"value\" UNSIGNED_INT)";
         conn.createStatement().execute(ddl);
 
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (1, 8, 1, 3)");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (2, 8, 2, 7)");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (3, 8, 3, 9)");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (5, 8, 4, 2)");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (4, 8, 5, 4)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (1, 8, 1, 3)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (2, 8, 2, 7)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (3, 8, 3, 9)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (5, 8, 4, 2)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (4, 8, 5, 4)");
         conn.commit();
 
         ResultSet rs = conn.createStatement().executeQuery(
-                "SELECT LAST_VALUE(\"value\") WITHIN GROUP (ORDER BY date ASC) FROM " + tableName + " GROUP BY page_id"
+                "SELECT LAST_VALUE(\"value\") WITHIN GROUP (ORDER BY \"DATE\" ASC) FROM " + tableName + " GROUP BY page_id"
         );
         assertTrue(rs.next());
         assertEquals(rs.getInt(1), 4);
@@ -171,18 +171,18 @@ public class LastValueFunctionIT extends ParallelStatsDisabledIT {
 
         String ddl = "CREATE TABLE IF NOT EXISTS " + tableName 
                 + "(id INTEGER NOT NULL PRIMARY KEY, page_id UNSIGNED_LONG, "
-                + "date CHAR(3), \"value\" CHAR(3))";
+                + "\"DATE\" CHAR(3), \"value\" CHAR(3))";
         conn.createStatement().execute(ddl);
 
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (1, 8, '1', '300')");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (2, 8, '2', '7')");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (3, 8, '3', '9')");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (5, 8, '4', '2')");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (4, 8, '5', '400')");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (1, 8, '1', '300')");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (2, 8, '2', '7')");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (3, 8, '3', '9')");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (5, 8, '4', '2')");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (4, 8, '5', '400')");
         conn.commit();
 
         ResultSet rs = conn.createStatement().executeQuery(
-                "SELECT LAST_VALUE(\"value\") WITHIN GROUP (ORDER BY date ASC) FROM " + tableName + " GROUP BY page_id");
+                "SELECT LAST_VALUE(\"value\") WITHIN GROUP (ORDER BY \"DATE\" ASC) FROM " + tableName + " GROUP BY page_id");
 
         assertTrue(rs.next());
         assertEquals(rs.getString(1), "400");
@@ -196,18 +196,18 @@ public class LastValueFunctionIT extends ParallelStatsDisabledIT {
 
         String ddl = "CREATE TABLE IF NOT EXISTS " + tableName 
                 + "(id INTEGER NOT NULL PRIMARY KEY, page_id UNSIGNED_LONG,"
-                + " date VARCHAR, \"value\" VARCHAR)";
+                + " \"DATE\" VARCHAR, \"value\" VARCHAR)";
         conn.createStatement().execute(ddl);
 
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (1, 8, '1', '3')");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (2, 8, '2', '7')");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (3, 8, '3', '9')");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (5, 8, '4', '2')");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (4, 8, '5', '4')");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (1, 8, '1', '3')");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (2, 8, '2', '7')");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (3, 8, '3', '9')");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (5, 8, '4', '2')");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (4, 8, '5', '4')");
         conn.commit();
 
         ResultSet rs = conn.createStatement().executeQuery(
-                "SELECT LAST_VALUE(\"value\") WITHIN GROUP (ORDER BY date ASC) FROM " + tableName + " GROUP BY page_id");
+                "SELECT LAST_VALUE(\"value\") WITHIN GROUP (ORDER BY \"DATE\" ASC) FROM " + tableName + " GROUP BY page_id");
 
         assertTrue(rs.next());
         assertEquals(rs.getString(1), "4");
@@ -221,27 +221,27 @@ public class LastValueFunctionIT extends ParallelStatsDisabledIT {
 
         String ddl = "CREATE TABLE IF NOT EXISTS " + tableName 
                 + "(id INTEGER NOT NULL PRIMARY KEY, page_id UNSIGNED_LONG,"
-                + " date UNSIGNED_INT, \"value\" UNSIGNED_INT)";
+                + " \"DATE\" UNSIGNED_INT, \"value\" UNSIGNED_INT)";
         conn.createStatement().execute(ddl);
 
         //first page_id
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (1, 8, 1, 3)");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (2, 8, 2, 7)");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (3, 8, 3, 9)");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (5, 8, 4, 2)");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (4, 8, 5, 4)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (1, 8, 1, 3)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (2, 8, 2, 7)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (3, 8, 3, 9)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (5, 8, 4, 2)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (4, 8, 5, 4)");
 
         //second page_id
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (11, 9, 1, 3)");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (12, 9, 2, 7)");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (13, 9, 3, 9)");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (15, 9, 4, 2)");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (14, 9, 5, 40)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (11, 9, 1, 3)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (12, 9, 2, 7)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (13, 9, 3, 9)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (15, 9, 4, 2)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (14, 9, 5, 40)");
 
         conn.commit();
 
         ResultSet rs = conn.createStatement().executeQuery(
-                "SELECT LAST_VALUE(\"value\") WITHIN GROUP (ORDER BY date ASC) FROM " + tableName + " GROUP BY page_id");
+                "SELECT LAST_VALUE(\"value\") WITHIN GROUP (ORDER BY \"DATE\" ASC) FROM " + tableName + " GROUP BY page_id");
 
         assertTrue(rs.next());
         assertEquals(rs.getInt(1), 4);
@@ -258,18 +258,18 @@ public class LastValueFunctionIT extends ParallelStatsDisabledIT {
 
         String ddl = "CREATE TABLE IF NOT EXISTS " + tableName 
                 + "(id INTEGER NOT NULL PRIMARY KEY, page_id UNSIGNED_LONG,"
-                + " date UNSIGNED_INT, \"value\" UNSIGNED_INT)";
+                + " \"DATE\" UNSIGNED_INT, \"value\" UNSIGNED_INT)";
         conn.createStatement().execute(ddl);
 
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date) VALUES (1, 8, 1)");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date) VALUES (2, 8, 2)");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date) VALUES (3, 8, 3)");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date) VALUES (5, 8, 4)");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date) VALUES (4, 8, 5)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\") VALUES (1, 8, 1)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\") VALUES (2, 8, 2)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\") VALUES (3, 8, 3)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\") VALUES (5, 8, 4)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\") VALUES (4, 8, 5)");
         conn.commit();
 
         ResultSet rs = conn.createStatement().executeQuery(
-                "SELECT LAST_VALUE(\"value\") WITHIN GROUP (ORDER BY date ASC) FROM " + tableName + " GROUP BY page_id");
+                "SELECT LAST_VALUE(\"value\") WITHIN GROUP (ORDER BY \"DATE\" ASC) FROM " + tableName + " GROUP BY page_id");
 
         assertTrue(rs.next());
         byte[] nothing = rs.getBytes(1);
@@ -283,19 +283,19 @@ public class LastValueFunctionIT extends ParallelStatsDisabledIT {
 
         String ddl = "CREATE TABLE IF NOT EXISTS " + tableName 
                 + "(id INTEGER NOT NULL PRIMARY KEY, page_id UNSIGNED_LONG,"
-                + " date UNSIGNED_INT, \"value\" UNSIGNED_INT)";
+                + " \"DATE\" UNSIGNED_INT, \"value\" UNSIGNED_INT)";
         conn.createStatement().execute(ddl);
 
         //first page_id
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date) VALUES (1, 8, 1)");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date) VALUES (2, 8, 2)");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date) VALUES (3, 8, 3)");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date) VALUES (5, 8, 4)");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date) VALUES (4, 8, 5)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\") VALUES (1, 8, 1)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\") VALUES (2, 8, 2)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\") VALUES (3, 8, 3)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\") VALUES (5, 8, 4)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\") VALUES (4, 8, 5)");
         conn.commit();
 
         ResultSet rs = conn.createStatement().executeQuery(
-                "SELECT LAST_VALUE(\"value\") WITHIN GROUP (ORDER BY date ASC) FROM " + tableName + " GROUP BY page_id");
+                "SELECT LAST_VALUE(\"value\") WITHIN GROUP (ORDER BY \"DATE\" ASC) FROM " + tableName + " GROUP BY page_id");
 
         assertTrue(rs.next());
         byte[] nothing = rs.getBytes(1);
@@ -309,27 +309,27 @@ public class LastValueFunctionIT extends ParallelStatsDisabledIT {
 
         String ddl = "CREATE TABLE IF NOT EXISTS " + tableName 
                 + "(id INTEGER NOT NULL PRIMARY KEY, page_id UNSIGNED_INT,"
-                + " date UNSIGNED_INT, \"value\" UNSIGNED_INT)";
+                + " \"DATE\" UNSIGNED_INT, \"value\" UNSIGNED_INT)";
         conn.createStatement().execute(ddl);
 
         //first page
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (1, 8, 1, 3)");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (2, 8, 2, 7)");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (3, 8, 3, 9)");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (5, 8, 4, 2)");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (4, 8, 5, 5)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (1, 8, 1, 3)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (2, 8, 2, 7)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (3, 8, 3, 9)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (5, 8, 4, 2)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (4, 8, 5, 5)");
 
         //second page
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (5, 2, 1, 3)");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (6, 2, 2, 7)");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (7, 2, 3, 9)");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (8, 2, 4, 2)");
-        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, date, \"value\") VALUES (9, 2, 5, 4)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (5, 2, 1, 3)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (6, 2, 2, 7)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (7, 2, 3, 9)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (8, 2, 4, 2)");
+        conn.createStatement().execute("UPSERT INTO " + tableName + " (id, page_id, \"DATE\", \"value\") VALUES (9, 2, 5, 4)");
 
         conn.commit();
 
         ResultSet rs = conn.createStatement().executeQuery(
-                "SELECT LAST_VALUE(\"value\") WITHIN GROUP (ORDER BY date ASC) AS val "
+                "SELECT LAST_VALUE(\"value\") WITHIN GROUP (ORDER BY \"DATE\" ASC) AS val "
                 + "FROM " + tableName + " GROUP BY page_id ORDER BY val DESC");
 
         assertTrue(rs.next());

http://git-wip-us.apache.org/repos/asf/phoenix/blob/e280cb9b/phoenix-core/src/it/java/org/apache/phoenix/end2end/NthValueFunctionIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/NthValueFunctionIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/NthValueFunctionIT.java
index c5cdf89..1278e26 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/NthValueFunctionIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/NthValueFunctionIT.java
@@ -68,25 +68,25 @@ public class NthValueFunctionIT extends ParallelStatsDisabledIT {
 
         String ddl = "CREATE TABLE IF NOT EXISTS " + nth_test_table + " "
                 + "(id INTEGER NOT NULL PRIMARY KEY, page_id UNSIGNED_LONG,"
-                + " date INTEGER, \"value\" UNSIGNED_LONG)";
+                + " \"DATE\" INTEGER, \"value\" UNSIGNED_LONG)";
         conn.createStatement().execute(ddl);
 
         conn.createStatement().execute("UPSERT INTO " + nth_test_table
-            + " (id, page_id, date, \"value\") VALUES (1, 8, 0, 300)");
+            + " (id, page_id, \"DATE\", \"value\") VALUES (1, 8, 0, 300)");
         conn.createStatement().execute(
-            "UPSERT INTO " + nth_test_table + " (id, page_id, date, \"value\") VALUES (2, 8, 1, 7)");
+            "UPSERT INTO " + nth_test_table + " (id, page_id, \"DATE\", \"value\") VALUES (2, 8, 1, 7)");
         conn.createStatement().execute(
-            "UPSERT INTO " + nth_test_table + " (id, page_id, date, \"value\") VALUES (3, 8, 2, 9)");
+            "UPSERT INTO " + nth_test_table + " (id, page_id, \"DATE\", \"value\") VALUES (3, 8, 2, 9)");
         conn.createStatement().execute(
-            "UPSERT INTO " + nth_test_table + " (id, page_id, date, \"value\") VALUES (4, 8, 3, 4)");
+            "UPSERT INTO " + nth_test_table + " (id, page_id, \"DATE\", \"value\") VALUES (4, 8, 3, 4)");
         conn.createStatement().execute(
-            "UPSERT INTO " + nth_test_table + " (id, page_id, date, \"value\") VALUES (5, 8, 4, 2)");
+            "UPSERT INTO " + nth_test_table + " (id, page_id, \"DATE\", \"value\") VALUES (5, 8, 4, 2)");
         conn.createStatement().execute("UPSERT INTO " + nth_test_table
-            + " (id, page_id, date, \"value\") VALUES (6, 8, 5, 150)");
+            + " (id, page_id, \"DATE\", \"value\") VALUES (6, 8, 5, 150)");
         conn.commit();
 
         ResultSet rs = conn.createStatement().executeQuery(
-            "SELECT NTH_VALUE(\"value\", 2)  WITHIN GROUP (ORDER BY date ASC) FROM "
+            "SELECT NTH_VALUE(\"value\", 2)  WITHIN GROUP (ORDER BY \"DATE\" ASC) FROM "
                 + nth_test_table + " GROUP BY page_id");
 
         assertTrue(rs.next());
@@ -101,25 +101,25 @@ public class NthValueFunctionIT extends ParallelStatsDisabledIT {
         String nth_test_table = generateUniqueName();
         String ddl = "CREATE TABLE IF NOT EXISTS " + nth_test_table + " "
                 + "(id INTEGER NOT NULL PRIMARY KEY, page_id UNSIGNED_LONG,"
-                + " date INTEGER, \"value\" UNSIGNED_LONG)";
+                + " \"DATE\" INTEGER, \"value\" UNSIGNED_LONG)";
         conn.createStatement().execute(ddl);
 
         conn.createStatement().execute("UPSERT INTO " + nth_test_table
-            + " (id, page_id, date, \"value\") VALUES (1, 8, 0, 300)");
+            + " (id, page_id, \"DATE\", \"value\") VALUES (1, 8, 0, 300)");
         conn.createStatement().execute(
-            "UPSERT INTO " + nth_test_table + " (id, page_id, date, \"value\") VALUES (2, 8, 1, 7)");
+            "UPSERT INTO " + nth_test_table + " (id, page_id, \"DATE\", \"value\") VALUES (2, 8, 1, 7)");
         conn.createStatement().execute(
-            "UPSERT INTO " + nth_test_table + " (id, page_id, date, \"value\") VALUES (3, 8, 2, 9)");
+            "UPSERT INTO " + nth_test_table + " (id, page_id, \"DATE\", \"value\") VALUES (3, 8, 2, 9)");
         conn.createStatement().execute(
-            "UPSERT INTO " + nth_test_table + " (id, page_id, date, \"value\") VALUES (4, 8, 3, 4)");
+            "UPSERT INTO " + nth_test_table + " (id, page_id, \"DATE\", \"value\") VALUES (4, 8, 3, 4)");
         conn.createStatement().execute(
-            "UPSERT INTO " + nth_test_table + " (id, page_id, date, \"value\") VALUES (5, 8, 4, 2)");
+            "UPSERT INTO " + nth_test_table + " (id, page_id, \"DATE\", \"value\") VALUES (5, 8, 4, 2)");
         conn.createStatement().execute("UPSERT INTO " + nth_test_table
-            + " (id, page_id, date, \"value\") VALUES (6, 8, 5, 150)");
+            + " (id, page_id, \"DATE\", \"value\") VALUES (6, 8, 5, 150)");
         conn.commit();
 
         ResultSet rs = conn.createStatement().executeQuery(
-            "SELECT NTH_VALUE(\"value\", 2)  WITHIN GROUP (ORDER BY date DESC) FROM "
+            "SELECT NTH_VALUE(\"value\", 2)  WITHIN GROUP (ORDER BY \"DATE\" DESC) FROM "
                 + nth_test_table + " GROUP BY page_id");
 
         assertTrue(rs.next());
@@ -134,25 +134,25 @@ public class NthValueFunctionIT extends ParallelStatsDisabledIT {
         String nth_test_table = generateUniqueName();
         String ddl = "CREATE TABLE IF NOT EXISTS " + nth_test_table + " "
                 + "(id INTEGER NOT NULL PRIMARY KEY, page_id UNSIGNED_LONG,"
-                + " date INTEGER, \"value\" UNSIGNED_LONG)";
+                + " \"DATE\" INTEGER, \"value\" UNSIGNED_LONG)";
         conn.createStatement().execute(ddl);
 
         conn.createStatement().execute(
-            "UPSERT INTO " + nth_test_table + " (id, page_id, date, \"value\") VALUES (1, 8, 5, 8)");
+            "UPSERT INTO " + nth_test_table + " (id, page_id, \"DATE\", \"value\") VALUES (1, 8, 5, 8)");
         conn.createStatement().execute(
-            "UPSERT INTO " + nth_test_table + " (id, page_id, date, \"value\") VALUES (2, 8, 2, 7)");
+            "UPSERT INTO " + nth_test_table + " (id, page_id, \"DATE\", \"value\") VALUES (2, 8, 2, 7)");
         conn.createStatement().execute(
-            "UPSERT INTO " + nth_test_table + " (id, page_id, date, \"value\") VALUES (3, 8, 1, 9)");
+            "UPSERT INTO " + nth_test_table + " (id, page_id, \"DATE\", \"value\") VALUES (3, 8, 1, 9)");
         conn.createStatement().execute(
-            "UPSERT INTO " + nth_test_table + " (id, page_id, date, \"value\") VALUES (4, 8, 4, 4)");
+            "UPSERT INTO " + nth_test_table + " (id, page_id, \"DATE\", \"value\") VALUES (4, 8, 4, 4)");
         conn.createStatement().execute(
-            "UPSERT INTO " + nth_test_table + " (id, page_id, date, \"value\") VALUES (5, 8, 3, 2)");
+            "UPSERT INTO " + nth_test_table + " (id, page_id, \"DATE\", \"value\") VALUES (5, 8, 3, 2)");
         conn.createStatement().execute(
-            "UPSERT INTO " + nth_test_table + " (id, page_id, date, \"value\") VALUES (6, 8, 0, 1)");
+            "UPSERT INTO " + nth_test_table + " (id, page_id, \"DATE\", \"value\") VALUES (6, 8, 0, 1)");
         conn.commit();
 
         ResultSet rs = conn.createStatement().executeQuery(
-            "SELECT NTH_VALUE(\"value\", 2)  WITHIN GROUP (ORDER BY date DESC) FROM "
+            "SELECT NTH_VALUE(\"value\", 2)  WITHIN GROUP (ORDER BY \"DATE\" DESC) FROM "
                 + nth_test_table + " GROUP BY page_id");
 
         assertTrue(rs.next());

http://git-wip-us.apache.org/repos/asf/phoenix/blob/e280cb9b/phoenix-core/src/it/java/org/apache/phoenix/end2end/ProductMetricsIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/ProductMetricsIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/ProductMetricsIT.java
index 07dd101..17c854a 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/ProductMetricsIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/ProductMetricsIT.java
@@ -118,7 +118,7 @@ public class ProductMetricsIT extends BaseClientManagedTimeIT {
             "upsert into " +
             "PRODUCT_METRICS(" +
             "    ORGANIZATION_ID, " +
-            "    DATE, " +
+            "    \"DATE\", " +
             "    FEATURE, " +
             "    UNIQUE_USERS, " +
             "    TRANSACTIONS, " +
@@ -218,7 +218,7 @@ public class ProductMetricsIT extends BaseClientManagedTimeIT {
             "upsert into " +
             "PRODUCT_METRICS(" +
             "    ORGANIZATION_ID, " +
-            "    DATE, " +
+            "    \"DATE\", " +
             "    FEATURE, " +
             "    UNIQUE_USERS, " +
             "    TRANSACTIONS, " +
@@ -303,7 +303,7 @@ public class ProductMetricsIT extends BaseClientManagedTimeIT {
     public void testDateRangeAggregation() throws Exception {
         long ts = nextTimestamp();
         String tenantId = getOrganizationId();
-        String query = "SELECT count(1), feature f FROM PRODUCT_METRICS WHERE organization_id=? AND date >= to_date(?) AND date <= to_date(?) GROUP BY f";
+        String query = "SELECT count(1), feature f FROM PRODUCT_METRICS WHERE organization_id=? AND \"DATE\" >= to_date(?) AND \"DATE\" <= to_date(?) GROUP BY f";
         //String query = "SELECT count(1), feature FROM PRODUCT_METRICS GROUP BY feature";
         String url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
@@ -351,7 +351,7 @@ public class ProductMetricsIT extends BaseClientManagedTimeIT {
     public void testPartiallyEvaluableAnd() throws Exception {
         long ts = nextTimestamp();
         String tenantId = getOrganizationId();
-        String query = "SELECT date FROM PRODUCT_METRICS WHERE organization_id=? AND unique_users >= 30 AND transactions >= 300 AND cpu_utilization > 2 AND db_utilization > 0.5 AND io_time = 4000";
+        String query = "SELECT \"DATE\" FROM PRODUCT_METRICS WHERE organization_id=? AND unique_users >= 30 AND transactions >= 300 AND cpu_utilization > 2 AND db_utilization > 0.5 AND io_time = 4000";
         String url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
         Connection conn = DriverManager.getConnection(url, props);
@@ -372,7 +372,7 @@ public class ProductMetricsIT extends BaseClientManagedTimeIT {
     public void testPartiallyEvaluableOr() throws Exception {
         long ts = nextTimestamp();
         String tenantId = getOrganizationId();
-        String query = "SELECT date FROM PRODUCT_METRICS WHERE organization_id=? AND (transactions = 10000 OR unset_column = 5 OR io_time = 4000)";
+        String query = "SELECT \"DATE\" FROM PRODUCT_METRICS WHERE organization_id=? AND (transactions = 10000 OR unset_column = 5 OR io_time = 4000)";
         String url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
         Connection conn = DriverManager.getConnection(url, props);
@@ -393,7 +393,7 @@ public class ProductMetricsIT extends BaseClientManagedTimeIT {
     public void testConstantTrueHaving() throws Exception {
         long ts = nextTimestamp();
         String tenantId = getOrganizationId();
-        String query = "SELECT count(1), feature FROM PRODUCT_METRICS WHERE organization_id=? AND date >= to_date(?) AND date <= to_date(?) GROUP BY feature HAVING 1=1";
+        String query = "SELECT count(1), feature FROM PRODUCT_METRICS WHERE organization_id=? AND \"DATE\" >= to_date(?) AND \"DATE\" <= to_date(?) GROUP BY feature HAVING 1=1";
         String url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
         Connection conn = DriverManager.getConnection(url, props);
@@ -420,7 +420,7 @@ public class ProductMetricsIT extends BaseClientManagedTimeIT {
     public void testConstantFalseHaving() throws Exception {
         long ts = nextTimestamp();
         String tenantId = getOrganizationId();
-        String query = "SELECT count(1), feature FROM PRODUCT_METRICS WHERE organization_id=? AND date >= to_date(?) AND date <= to_date(?) GROUP BY feature HAVING 1=1 and 0=1";
+        String query = "SELECT count(1), feature FROM PRODUCT_METRICS WHERE organization_id=? AND \"DATE\" >= to_date(?) AND \"DATE\" <= to_date(?) GROUP BY feature HAVING 1=1 and 0=1";
         String url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
         Connection conn = DriverManager.getConnection(url, props);
@@ -441,7 +441,7 @@ public class ProductMetricsIT extends BaseClientManagedTimeIT {
     public void testDateRangeHavingAggregation() throws Exception {
         long ts = nextTimestamp();
         String tenantId = getOrganizationId();
-        String query = "SELECT count(1), feature FROM PRODUCT_METRICS WHERE organization_id=? AND date >= to_date(?) AND date <= to_date(?) GROUP BY feature HAVING count(1) >= 2";
+        String query = "SELECT count(1), feature FROM PRODUCT_METRICS WHERE organization_id=? AND \"DATE\" >= to_date(?) AND \"DATE\" <= to_date(?) GROUP BY feature HAVING count(1) >= 2";
         String url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
         Connection conn = DriverManager.getConnection(url, props);
@@ -465,7 +465,7 @@ public class ProductMetricsIT extends BaseClientManagedTimeIT {
     public void testDateRangeSumLongAggregation() throws Exception {
         long ts = nextTimestamp();
         String tenantId = getOrganizationId();
-        String query = "SELECT sum(transactions), feature FROM PRODUCT_METRICS WHERE organization_id=? AND date >= to_date(?) AND date <= to_date(?) GROUP BY feature";
+        String query = "SELECT sum(transactions), feature FROM PRODUCT_METRICS WHERE organization_id=? AND \"DATE\" >= to_date(?) AND \"DATE\" <= to_date(?) GROUP BY feature";
         String url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
         Connection conn = DriverManager.getConnection(url, props);
@@ -492,7 +492,7 @@ public class ProductMetricsIT extends BaseClientManagedTimeIT {
     public void testRoundAggregation() throws Exception {
         long ts = nextTimestamp();
         String tenantId = getOrganizationId();
-        String query = "SELECT round(date,'hour',1) r,count(1) FROM PRODUCT_METRICS WHERE organization_id=? GROUP BY r";
+        String query = "SELECT round(\"DATE\",'hour',1) r,count(1) FROM PRODUCT_METRICS WHERE organization_id=? GROUP BY r";
         String url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
         Connection conn = DriverManager.getConnection(url, props);
@@ -532,7 +532,7 @@ public class ProductMetricsIT extends BaseClientManagedTimeIT {
     public void testRoundScan() throws Exception {
         long ts = nextTimestamp();
         String tenantId = getOrganizationId();
-        String query = "SELECT round(date,'hour') FROM PRODUCT_METRICS WHERE organization_id=?";
+        String query = "SELECT round(\"DATE\",'hour') FROM PRODUCT_METRICS WHERE organization_id=?";
         String url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
         Connection conn = DriverManager.getConnection(url, props);
@@ -575,7 +575,7 @@ public class ProductMetricsIT extends BaseClientManagedTimeIT {
     public void testTruncAggregation() throws Exception {
         long ts = nextTimestamp();
         String tenantId = getOrganizationId();
-        String query = "SELECT trunc(date,'hour'),count(1) FROM PRODUCT_METRICS WHERE organization_id=? GROUP BY trunc(date,'hour')";
+        String query = "SELECT trunc(\"DATE\",'hour'),count(1) FROM PRODUCT_METRICS WHERE organization_id=? GROUP BY trunc(\"DATE\",'hour')";
         String url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
         Connection conn = DriverManager.getConnection(url, props);
@@ -729,7 +729,7 @@ public class ProductMetricsIT extends BaseClientManagedTimeIT {
     public void testMultiDimRoundAggregation() throws Exception {
         long ts = nextTimestamp();
         String tenantId = getOrganizationId();
-        String query = "SELECT round(date,'hour',1),feature,sum(unique_users) FROM PRODUCT_METRICS WHERE organization_id=? GROUP BY round(date,'hour',1),feature";
+        String query = "SELECT round(\"DATE\",'hour',1),feature,sum(unique_users) FROM PRODUCT_METRICS WHERE organization_id=? GROUP BY round(\"DATE\",'hour',1),feature";
         String url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
         Connection conn = DriverManager.getConnection(url, props);
@@ -780,7 +780,7 @@ public class ProductMetricsIT extends BaseClientManagedTimeIT {
     public void testDateRangeSumNumberUngroupedAggregation() throws Exception {
         long ts = nextTimestamp();
         String tenantId = getOrganizationId();
-        String query = "SELECT sum(cpu_utilization) FROM PRODUCT_METRICS WHERE organization_id=? AND date >= to_date(?) AND date <= to_date(?)";
+        String query = "SELECT sum(cpu_utilization) FROM PRODUCT_METRICS WHERE organization_id=? AND \"DATE\" >= to_date(?) AND \"DATE\" <= to_date(?)";
         String url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
         Connection conn = DriverManager.getConnection(url, props);
@@ -842,7 +842,7 @@ public class ProductMetricsIT extends BaseClientManagedTimeIT {
                     "upsert into " +
                     "PRODUCT_METRICS(" +
                     "    ORGANIZATION_ID, " +
-                    "    DATE, " +
+                    "    \"DATE\", " +
                     "    FEATURE, " +
                     "    UNIQUE_USERS," +
                     "    TRANSACTIONS) " +
@@ -1208,7 +1208,7 @@ public class ProductMetricsIT extends BaseClientManagedTimeIT {
     public void testDegenerateAggregation() throws Exception {
         long ts = nextTimestamp();
         String tenantId = getOrganizationId();
-        String query = "SELECT count(1), feature FROM PRODUCT_METRICS WHERE organization_id=? AND date >= to_date(?) AND date <= to_date(?) GROUP BY feature";
+        String query = "SELECT count(1), feature FROM PRODUCT_METRICS WHERE organization_id=? AND \"DATE\" >= to_date(?) AND \"DATE\" <= to_date(?) GROUP BY feature";
         String url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
         Connection conn = DriverManager.getConnection(url, props);
@@ -1234,7 +1234,7 @@ public class ProductMetricsIT extends BaseClientManagedTimeIT {
     public void testFeatureDateRangeAggregation() throws Exception {
         long ts = nextTimestamp();
         String tenantId = getOrganizationId();
-        String query = "SELECT feature,unique_users FROM PRODUCT_METRICS WHERE organization_id=? AND date >= to_date(?) AND feature > ?";
+        String query = "SELECT feature,unique_users FROM PRODUCT_METRICS WHERE organization_id=? AND \"DATE\" >= to_date(?) AND feature > ?";
         String url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
         Connection conn = DriverManager.getConnection(url, props);
@@ -1402,7 +1402,7 @@ public class ProductMetricsIT extends BaseClientManagedTimeIT {
         long ts = nextTimestamp();
         String tenantId = getOrganizationId();
         initTableValues(tenantId, getSplits(tenantId), ts);
-        String query = "SELECT date, transactions t FROM PRODUCT_METRICS WHERE organization_id=? AND unique_users <= 30 ORDER BY t DESC LIMIT 2";
+        String query = "SELECT \"DATE\", transactions t FROM PRODUCT_METRICS WHERE organization_id=? AND unique_users <= 30 ORDER BY t DESC LIMIT 2";
         String url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
 
@@ -1451,7 +1451,7 @@ public class ProductMetricsIT extends BaseClientManagedTimeIT {
     public void testOrderByGroupedAggregation() throws Exception {        
         long ts = nextTimestamp();
         String tenantId = getOrganizationId();
-        String query = "SELECT feature,sum(unique_users) s,count(feature),round(date,'hour',1) r " +
+        String query = "SELECT feature,sum(unique_users) s,count(feature),round(\"DATE\",'hour',1) r " +
                        "FROM PRODUCT_METRICS " + 
                        "WHERE organization_id=? " +
                        "GROUP BY feature, r " +
@@ -1593,7 +1593,7 @@ public class ProductMetricsIT extends BaseClientManagedTimeIT {
     public void testFilterOnTrailingKeyColumn2() throws Exception {
         long ts = nextTimestamp();
         String tenantId = getOrganizationId();
-        String query = "SELECT organization_id, date, feature FROM PRODUCT_METRICS WHERE substr(organization_id,1,3)=? AND date > to_date(?)";
+        String query = "SELECT organization_id, \"DATE\", feature FROM PRODUCT_METRICS WHERE substr(organization_id,1,3)=? AND \"DATE\" > to_date(?)";
         String url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
         Connection conn = DriverManager.getConnection(url, props);
@@ -1621,7 +1621,7 @@ public class ProductMetricsIT extends BaseClientManagedTimeIT {
     public void testSubstringNotEqual() throws Exception {
         long ts = nextTimestamp();
         String tenantId = getOrganizationId();
-        String query = "SELECT organization_id, date, feature FROM PRODUCT_METRICS WHERE organization_id=? AND date > to_date(?)";
+        String query = "SELECT organization_id, \"DATE\", feature FROM PRODUCT_METRICS WHERE organization_id=? AND \"DATE\" > to_date(?)";
         String url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
         Connection conn = DriverManager.getConnection(url, props);
@@ -1641,7 +1641,7 @@ public class ProductMetricsIT extends BaseClientManagedTimeIT {
     public void testKeyOrderedAggregation1() throws Exception {
         long ts = nextTimestamp();
         String tenantId = getOrganizationId();
-        String query = "SELECT date, sum(UNIQUE_USERS) FROM PRODUCT_METRICS WHERE date > to_date(?) GROUP BY organization_id, date";
+        String query = "SELECT \"DATE\", sum(UNIQUE_USERS) FROM PRODUCT_METRICS WHERE \"DATE\" > to_date(?) GROUP BY organization_id, \"DATE\"";
         String url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
         Connection conn = DriverManager.getConnection(url, props);
@@ -1666,7 +1666,7 @@ public class ProductMetricsIT extends BaseClientManagedTimeIT {
     public void testKeyOrderedAggregation2() throws Exception {
         long ts = nextTimestamp();
         String tenantId = getOrganizationId();
-        String query = "SELECT date, sum(UNIQUE_USERS) FROM PRODUCT_METRICS WHERE date < to_date(?) GROUP BY organization_id, date";
+        String query = "SELECT \"DATE\", sum(UNIQUE_USERS) FROM PRODUCT_METRICS WHERE \"DATE\" < to_date(?) GROUP BY organization_id, \"DATE\"";
         String url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
         Connection conn = DriverManager.getConnection(url, props);
@@ -1694,7 +1694,7 @@ public class ProductMetricsIT extends BaseClientManagedTimeIT {
     public void testKeyOrderedRoundAggregation1() throws Exception {
         long ts = nextTimestamp();
         String tenantId = getOrganizationId();
-        String query = "SELECT round(date,'HOUR'), sum(UNIQUE_USERS) FROM PRODUCT_METRICS WHERE date < to_date(?) GROUP BY organization_id, round(date,'HOUR')";
+        String query = "SELECT round(\"DATE\",'HOUR'), sum(UNIQUE_USERS) FROM PRODUCT_METRICS WHERE \"DATE\" < to_date(?) GROUP BY organization_id, round(\"DATE\",'HOUR')";
         String url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
         Connection conn = DriverManager.getConnection(url, props);
@@ -1719,7 +1719,7 @@ public class ProductMetricsIT extends BaseClientManagedTimeIT {
     public void testKeyOrderedRoundAggregation2() throws Exception {
         long ts = nextTimestamp();
         String tenantId = getOrganizationId();
-        String query = "SELECT round(date,'HOUR'), sum(UNIQUE_USERS) FROM PRODUCT_METRICS WHERE date <= to_date(?) GROUP BY organization_id, round(date,'HOUR')";
+        String query = "SELECT round(\"DATE\",'HOUR'), sum(UNIQUE_USERS) FROM PRODUCT_METRICS WHERE \"DATE\" <= to_date(?) GROUP BY organization_id, round(\"DATE\",'HOUR')";
         String url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
         Connection conn = DriverManager.getConnection(url, props);
@@ -1744,7 +1744,7 @@ public class ProductMetricsIT extends BaseClientManagedTimeIT {
     public void testEqualsRound() throws Exception {
         long ts = nextTimestamp();
         String tenantId = getOrganizationId();
-        String query = "SELECT feature FROM PRODUCT_METRICS WHERE organization_id = ? and trunc(date,'DAY')=?"; 
+        String query = "SELECT feature FROM PRODUCT_METRICS WHERE organization_id = ? and trunc(\"DATE\",'DAY')=?";
         String url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
         Connection conn = DriverManager.getConnection(url, props);
@@ -1768,7 +1768,7 @@ public class ProductMetricsIT extends BaseClientManagedTimeIT {
     public void testDateSubtractionCompareNumber() throws Exception {
         long ts = nextTimestamp();
         String tenantId = getOrganizationId();
-        String query = "SELECT feature FROM PRODUCT_METRICS WHERE organization_id = ? and ? - date > 3"; 
+        String query = "SELECT feature FROM PRODUCT_METRICS WHERE organization_id = ? and ? - \"DATE\" > 3";
         String url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
         Connection conn = DriverManager.getConnection(url, props);
@@ -1794,7 +1794,7 @@ public class ProductMetricsIT extends BaseClientManagedTimeIT {
     public void testDateSubtractionLongToDecimalCompareNumber() throws Exception {
         long ts = nextTimestamp();
         String tenantId = getOrganizationId();
-        String query = "SELECT feature FROM PRODUCT_METRICS WHERE organization_id = ? and ? - date - 1.5 > 3"; 
+        String query = "SELECT feature FROM PRODUCT_METRICS WHERE organization_id = ? and ? - \"DATE\" - 1.5 > 3";
         String url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
         Connection conn = DriverManager.getConnection(url, props);
@@ -1872,7 +1872,7 @@ public class ProductMetricsIT extends BaseClientManagedTimeIT {
     public void testCurrentDate() throws Exception {
         long ts = nextTimestamp();
         String tenantId = getOrganizationId();
-        String query = "SELECT feature FROM PRODUCT_METRICS WHERE organization_id = ? and date - current_date() > 8"; 
+        String query = "SELECT feature FROM PRODUCT_METRICS WHERE organization_id = ? and \"DATE\" - current_date() > 8";
         String url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
         Connection conn = DriverManager.getConnection(url, props);
@@ -1894,7 +1894,7 @@ public class ProductMetricsIT extends BaseClientManagedTimeIT {
     public void testCurrentTime() throws Exception {
         long ts = nextTimestamp();
         String tenantId = getOrganizationId();
-        String query = "SELECT feature FROM PRODUCT_METRICS WHERE organization_id = ? and date - current_time() > 8"; 
+        String query = "SELECT feature FROM PRODUCT_METRICS WHERE organization_id = ? and \"DATE\" - current_time() > 8";
         String url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
         Connection conn = DriverManager.getConnection(url, props);
@@ -1916,7 +1916,7 @@ public class ProductMetricsIT extends BaseClientManagedTimeIT {
     public void testTruncateNotTraversableToFormScanKey() throws Exception {
         long ts = nextTimestamp();
         String tenantId = getOrganizationId();
-        String query = "SELECT feature FROM PRODUCT_METRICS WHERE organization_id = ? and TRUNC(date,'DAY') <= ?"; 
+        String query = "SELECT feature FROM PRODUCT_METRICS WHERE organization_id = ? and TRUNC(\"DATE\",'DAY') <= ?";
         String url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts + 5); // Run query at timestamp 5
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
         Connection conn = DriverManager.getConnection(url, props);
@@ -1959,7 +1959,7 @@ public class ProductMetricsIT extends BaseClientManagedTimeIT {
         long ts = nextTimestamp();
         String ddl = "create table " + PRODUCT_METRICS_NAME +
         "   (organization_id char(15) not null," +
-        "    date date not null," +
+        "    \"DATE\" date not null," +
         "    feature char(1) not null," +
         "    unique_users integer not null,\n" +
         "    db_utilization decimal(31,10),\n" +
@@ -1969,7 +1969,7 @@ public class ProductMetricsIT extends BaseClientManagedTimeIT {
         "    io_time bigint,\n" +
         "    region varchar,\n" +
         "    unset_column decimal(31,10)\n" +
-        "    CONSTRAINT pk PRIMARY KEY (organization_id, date, feature, unique_users)) salt_buckets=3";
+        "    CONSTRAINT pk PRIMARY KEY (organization_id, \"DATE\", feature, unique_users)) salt_buckets=3";
         String url = getUrl() + ";" + PhoenixRuntime.CURRENT_SCN_ATTRIB + "=" + (ts-1); // Run query at timestamp 5
         Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
         Connection conn = DriverManager.getConnection(url, props);
@@ -1998,7 +1998,7 @@ public class ProductMetricsIT extends BaseClientManagedTimeIT {
             assertTrue(rs.next());
             assertEquals(18, rs.getLong(1));
             
-            statement = conn.prepareStatement("SELECT date FROM PRODUCT_METRICS WHERE organization_id = ?  order by date desc limit 10");
+            statement = conn.prepareStatement("SELECT \"DATE\" FROM PRODUCT_METRICS WHERE organization_id = ?  order by \"DATE\" desc limit 10");
             statement.setString(1, tenantId);
             rs = statement.executeQuery();
             Date date = null;

http://git-wip-us.apache.org/repos/asf/phoenix/blob/e280cb9b/phoenix-core/src/it/java/org/apache/phoenix/end2end/QueryMoreIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/QueryMoreIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/QueryMoreIT.java
index 9399900..041e96d 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/QueryMoreIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/QueryMoreIT.java
@@ -348,11 +348,11 @@ public class QueryMoreIT extends ParallelStatsDisabledIT {
         try (Statement stmt = conn.createStatement()) {
             assertFalse(stmt.execute("CREATE TABLE IF NOT EXISTS " + table + " (\n" +
                 "PK VARCHAR(15) NOT NULL\n," +
-                "DEC DECIMAL,\n" +
+                "\"DEC\" DECIMAL,\n" +
                 "CONSTRAINT TABLE_PK PRIMARY KEY (PK))"));
         }
 
-        try (PreparedStatement stmt = conn.prepareStatement("UPSERT INTO " + table + " (PK, DEC) VALUES(?, ?)")) {
+        try (PreparedStatement stmt = conn.prepareStatement("UPSERT INTO " + table + " (PK, \"DEC\") VALUES(?, ?)")) {
             stmt.setString(1, "key");
             stmt.setBigDecimal(2, null);
             assertFalse(stmt.execute());

http://git-wip-us.apache.org/repos/asf/phoenix/blob/e280cb9b/phoenix-core/src/it/java/org/apache/phoenix/end2end/RoundFloorCeilFuncIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/RoundFloorCeilFuncIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/RoundFloorCeilFuncIT.java
index 9961199..423876f 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/RoundFloorCeilFuncIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/RoundFloorCeilFuncIT.java
@@ -71,7 +71,7 @@ public class RoundFloorCeilFuncIT extends ParallelStatsDisabledIT {
         try {
             conn = DriverManager.getConnection(getUrl());
             String ddl = "CREATE TABLE IF NOT EXISTS " + tableName
-                + " (s VARCHAR NOT NULL PRIMARY KEY, dt DATE, t TIME, ts TIMESTAMP, dec DECIMAL, doub DOUBLE, undoub UNSIGNED_DOUBLE, fl FLOAT, unfl UNSIGNED_FLOAT)";
+                + " (s VARCHAR NOT NULL PRIMARY KEY, dt DATE, t TIME, ts TIMESTAMP, \"DEC\" DECIMAL, doub DOUBLE, undoub UNSIGNED_DOUBLE, fl FLOAT, unfl UNSIGNED_FLOAT)";
             conn.createStatement().execute(ddl);
             
             Date dateUpserted = DateUtil.parseDate("2012-01-01 14:25:28");
@@ -369,7 +369,7 @@ public class RoundFloorCeilFuncIT extends ParallelStatsDisabledIT {
     public void testRoundingUpDecimal() throws Exception {
         Connection conn = DriverManager.getConnection(getUrl());
         ResultSet rs = conn.createStatement().executeQuery(
-            "SELECT ROUND(dec), ROUND(dec, 1), ROUND(dec, 2), ROUND(dec, 3) FROM " + tableName);
+            "SELECT ROUND(\"DEC\"), ROUND(\"DEC\", 1), ROUND(\"DEC\", 2), ROUND(\"DEC\", 3) FROM " + tableName);
         assertTrue(rs.next());
         BigDecimal expectedBd = BigDecimal.valueOf(1);
         assertEquals(expectedBd, rs.getBigDecimal(1));
@@ -385,7 +385,7 @@ public class RoundFloorCeilFuncIT extends ParallelStatsDisabledIT {
     public void testRoundingUpDecimalInWhere() throws Exception {
         Connection conn = DriverManager.getConnection(getUrl());
         ResultSet rs = conn.createStatement().executeQuery(
-            "SELECT * FROM " + tableName + " WHERE ROUND(dec, 2) = 1.26");
+            "SELECT * FROM " + tableName + " WHERE ROUND(\"DEC\", 2) = 1.26");
         assertTrue(rs.next());
     }
     
@@ -393,7 +393,7 @@ public class RoundFloorCeilFuncIT extends ParallelStatsDisabledIT {
     public void testFloorDecimal() throws Exception {
         Connection conn = DriverManager.getConnection(getUrl());
         ResultSet rs = conn.createStatement().executeQuery(
-            "SELECT FLOOR(dec), FLOOR(dec, 1), FLOOR(dec, 2), FLOOR(dec, 3) FROM " + tableName);
+            "SELECT FLOOR(\"DEC\"), FLOOR(\"DEC\", 1), FLOOR(\"DEC\", 2), FLOOR(\"DEC\", 3) FROM " + tableName);
         assertTrue(rs.next());
         BigDecimal expectedBd = BigDecimal.valueOf(1);
         assertEquals(expectedBd, rs.getBigDecimal(1));
@@ -409,7 +409,7 @@ public class RoundFloorCeilFuncIT extends ParallelStatsDisabledIT {
     public void testFloorDecimalInWhere() throws Exception {
         Connection conn = DriverManager.getConnection(getUrl());
         ResultSet rs = conn.createStatement().executeQuery(
-            "SELECT * FROM " + tableName + " WHERE FLOOR(dec, 2) = 1.26");
+            "SELECT * FROM " + tableName + " WHERE FLOOR(\"DEC\", 2) = 1.26");
         assertTrue(rs.next());
     }
     
@@ -417,7 +417,7 @@ public class RoundFloorCeilFuncIT extends ParallelStatsDisabledIT {
     public void testCeilDecimal() throws Exception {
         Connection conn = DriverManager.getConnection(getUrl());
         ResultSet rs = conn.createStatement().executeQuery(
-            "SELECT CEIL(dec), CEIL(dec, 1), CEIL(dec, 2), CEIL(dec, 3) FROM " + tableName);
+            "SELECT CEIL(\"DEC\"), CEIL(\"DEC\", 1), CEIL(\"DEC\", 2), CEIL(\"DEC\", 3) FROM " + tableName);
         assertTrue(rs.next());
         BigDecimal expectedBd = BigDecimal.valueOf(2);
         assertEquals(expectedBd, rs.getBigDecimal(1));
@@ -433,7 +433,7 @@ public class RoundFloorCeilFuncIT extends ParallelStatsDisabledIT {
     public void testCeilDecimalInWhere() throws Exception {
         Connection conn = DriverManager.getConnection(getUrl());
         ResultSet rs = conn.createStatement().executeQuery(
-            "SELECT * FROM " + tableName + " WHERE CEIL(dec, 2) = 1.27");
+            "SELECT * FROM " + tableName + " WHERE CEIL(\"DEC\", 2) = 1.27");
         assertTrue(rs.next());
     }
     @Test
@@ -452,7 +452,7 @@ public class RoundFloorCeilFuncIT extends ParallelStatsDisabledIT {
 	public void testRoundingUpDoubleInWhere() throws Exception {
 		Connection conn = DriverManager.getConnection(getUrl());
 		ResultSet rs = conn.createStatement().executeQuery(
-        "SELECT * FROM " + tableName + " WHERE ROUND(dec, 2) = 1.26");
+        "SELECT * FROM " + tableName + " WHERE ROUND(\"DEC\", 2) = 1.26");
 		assertTrue(rs.next());
 	}
 

http://git-wip-us.apache.org/repos/asf/phoenix/blob/e280cb9b/phoenix-core/src/it/java/org/apache/phoenix/end2end/SignFunctionEnd2EndIT.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/it/java/org/apache/phoenix/end2end/SignFunctionEnd2EndIT.java b/phoenix-core/src/it/java/org/apache/phoenix/end2end/SignFunctionEnd2EndIT.java
index e3458dd..94b9f42 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/SignFunctionEnd2EndIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/SignFunctionEnd2EndIT.java
@@ -51,7 +51,7 @@ public class SignFunctionEnd2EndIT extends ParallelStatsDisabledIT {
             conn = DriverManager.getConnection(getUrl());
             String ddl;
             ddl = "CREATE TABLE " + signedTableName
-                + " (k VARCHAR NOT NULL PRIMARY KEY, dec DECIMAL, doub DOUBLE, fl FLOAT, inte INTEGER, lon BIGINT, smalli SMALLINT, tinyi TINYINT)";
+                + " (k VARCHAR NOT NULL PRIMARY KEY, \"DEC\" DECIMAL, doub DOUBLE, fl FLOAT, inte INTEGER, lon BIGINT, smalli SMALLINT, tinyi TINYINT)";
             conn.createStatement().execute(ddl);
             ddl = "CREATE TABLE " + unsignedTableName
                 + " (k VARCHAR NOT NULL PRIMARY KEY, doub UNSIGNED_DOUBLE, fl UNSIGNED_FLOAT, inte UNSIGNED_INT, lon UNSIGNED_LONG, smalli UNSIGNED_SMALLINT, tinyi UNSIGNED_TINYINT)";
@@ -96,7 +96,7 @@ public class SignFunctionEnd2EndIT extends ParallelStatsDisabledIT {
     private void testSignedNumberSpec(Connection conn, double data, int expected) throws Exception {
         updateSignedTable(conn, data);
         ResultSet rs = conn.createStatement().executeQuery(
-            "SELECT SIGN(dec),SIGN(doub),SIGN(fl),SIGN(inte),SIGN(lon),SIGN(smalli),SIGN(tinyi) FROM "
+            "SELECT SIGN(\"DEC\"),SIGN(doub),SIGN(fl),SIGN(inte),SIGN(lon),SIGN(smalli),SIGN(tinyi) FROM "
                 + signedTableName);
         assertTrue(rs.next());
         for (int i = 1; i <= 7; ++i) {
@@ -105,7 +105,7 @@ public class SignFunctionEnd2EndIT extends ParallelStatsDisabledIT {
         assertTrue(!rs.next());
 
         PreparedStatement stmt = conn.prepareStatement("SELECT k FROM " + signedTableName
-            + " WHERE SIGN(dec)=? AND SIGN(doub)=? AND SIGN(fl)=? AND SIGN(inte)=? AND SIGN(lon)=? AND SIGN(smalli)=? AND SIGN(tinyi)=?");
+            + " WHERE SIGN(\"DEC\")=? AND SIGN(doub)=? AND SIGN(fl)=? AND SIGN(inte)=? AND SIGN(lon)=? AND SIGN(smalli)=? AND SIGN(tinyi)=?");
         for (int i = 1; i <= 7; ++i)
             stmt.setInt(i, expected);
         rs = stmt.executeQuery();