Apache-Phoenix | 4.x-HBase-1.1 | Build Successful

2018-02-28 Thread Apache Jenkins Server
4.x-HBase-1.1 branch build status Successful

Source repository https://git-wip-us.apache.org/repos/asf?p=phoenix.git;a=shortlog;h=refs/heads/4.x-HBase-1.1

Compiled Artifacts https://builds.apache.org/job/Phoenix-4.x-HBase-1.1/lastSuccessfulBuild/artifact/

Test Report https://builds.apache.org/job/Phoenix-4.x-HBase-1.1/lastCompletedBuild/testReport/

Changes
[chenglei] PHOENIX-4630 Reverse scan with row_timestamp does not working



Build times for last couple of runsLatest build time is the right most | Legend blue: normal, red: test failure, gray: timeout


Apache-Phoenix | 4.x-HBase-1.2 | Build Successful

2018-02-28 Thread Apache Jenkins Server
4.x-HBase-1.2 branch build status Successful

Source repository https://git-wip-us.apache.org/repos/asf?p=phoenix.git;a=shortlog;h=refs/heads/4.x-HBase-1.2

Compiled Artifacts https://builds.apache.org/job/Phoenix-4.x-HBase-1.2/lastSuccessfulBuild/artifact/

Test Report https://builds.apache.org/job/Phoenix-4.x-HBase-1.2/lastCompletedBuild/testReport/

Changes
[chenglei] PHOENIX-4630 Reverse scan with row_timestamp does not working



Build times for last couple of runsLatest build time is the right most | Legend blue: normal, red: test failure, gray: timeout


Build failed in Jenkins: Phoenix | Master #1948

2018-02-28 Thread Apache Jenkins Server
See 


Changes:

[chenglei] PHOENIX-4630 Reverse scan with row_timestamp does not working

--
[...truncated 109.83 KB...]
[INFO] Running org.apache.phoenix.end2end.join.SubqueryIT
[INFO] Running org.apache.phoenix.end2end.join.SortMergeJoinLocalIndexIT
[INFO] Running org.apache.phoenix.end2end.join.SortMergeJoinNoIndexIT
[INFO] Tests run: 33, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 359.827 
s - in org.apache.phoenix.end2end.join.HashJoinNoIndexIT
[INFO] Tests run: 34, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 371.018 
s - in org.apache.phoenix.end2end.join.SortMergeJoinNoIndexIT
[INFO] Running org.apache.phoenix.end2end.join.SubqueryUsingSortMergeJoinIT
[INFO] Tests run: 24, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 397.032 
s - in org.apache.phoenix.end2end.join.SubqueryIT
[INFO] Tests run: 72, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 818.651 
s - in org.apache.phoenix.end2end.index.MutableIndexIT
[INFO] Running org.apache.phoenix.end2end.salted.SaltedTableIT
[INFO] Running org.apache.phoenix.end2end.salted.SaltedTableUpsertSelectIT
[INFO] Tests run: 8, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 26.438 s 
- in org.apache.phoenix.end2end.salted.SaltedTableIT
[INFO] Running org.apache.phoenix.iterate.PhoenixQueryTimeoutIT
[INFO] Running org.apache.phoenix.end2end.salted.SaltedTableVarLengthRowKeyIT
[INFO] Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 9.786 s 
- in org.apache.phoenix.iterate.PhoenixQueryTimeoutIT
[INFO] Running org.apache.phoenix.iterate.RoundRobinResultIteratorIT
[INFO] Tests run: 33, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 623.863 
s - in org.apache.phoenix.end2end.join.HashJoinGlobalIndexIT
[INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 4.386 s 
- in org.apache.phoenix.end2end.salted.SaltedTableVarLengthRowKeyIT
[INFO] Running org.apache.phoenix.rpc.UpdateCacheIT
[INFO] Tests run: 6, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 50.308 s 
- in org.apache.phoenix.end2end.salted.SaltedTableUpsertSelectIT
[INFO] Running org.apache.phoenix.trace.PhoenixTableMetricsWriterIT
[INFO] Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 14.464 s 
- in org.apache.phoenix.trace.PhoenixTableMetricsWriterIT
[INFO] Running org.apache.phoenix.trace.PhoenixTracingEndToEndIT
[INFO] Tests run: 7, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 42.22 s 
- in org.apache.phoenix.rpc.UpdateCacheIT
[INFO] Running org.apache.phoenix.tx.FlappingTransactionIT
[INFO] Running org.apache.phoenix.replication.SystemCatalogWALEntryFilterIT
[INFO] Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.14 s - 
in org.apache.phoenix.replication.SystemCatalogWALEntryFilterIT
[INFO] Running org.apache.phoenix.tx.ParameterizedTransactionIT
[INFO] Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 18.083 s 
- in org.apache.phoenix.tx.FlappingTransactionIT
[INFO] Running org.apache.phoenix.tx.TransactionIT
[INFO] Tests run: 9, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 75.856 s 
- in org.apache.phoenix.iterate.RoundRobinResultIteratorIT
[INFO] Running org.apache.phoenix.tx.TxCheckpointIT
[INFO] Tests run: 8, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 104.393 
s - in org.apache.phoenix.trace.PhoenixTracingEndToEndIT
[INFO] Tests run: 8, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 95.834 s 
- in org.apache.phoenix.tx.TransactionIT
[INFO] Tests run: 34, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 649.735 
s - in org.apache.phoenix.end2end.join.SortMergeJoinGlobalIndexIT
[INFO] Running org.apache.phoenix.util.IndexScrutinyIT
[INFO] Tests run: 15, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 280.206 
s - in org.apache.phoenix.end2end.join.SubqueryUsingSortMergeJoinIT
[INFO] Tests run: 3, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 29.288 s 
- in org.apache.phoenix.util.IndexScrutinyIT
[INFO] Tests run: 34, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 820.316 
s - in org.apache.phoenix.end2end.join.HashJoinLocalIndexIT
[INFO] Tests run: 34, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 830.246 
s - in org.apache.phoenix.end2end.join.SortMergeJoinLocalIndexIT
[WARNING] Tests run: 52, Failures: 0, Errors: 0, Skipped: 4, Time elapsed: 
362.177 s - in org.apache.phoenix.tx.ParameterizedTransactionIT
[INFO] Tests run: 40, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 423.991 
s - in org.apache.phoenix.tx.TxCheckpointIT
[INFO] 
[INFO] Results:
[INFO] 
[ERROR] Failures: 
[ERROR]   ConcurrentMutationsIT.testConcurrentDeletesAndUpsertValues:214 
Expected to find PK in data table: (0,0)
[ERROR]   DefaultColumnValueIT.testDefaultIndexed:978
[ERROR]   RowValueConstructorIT.testRVCLastPkIsTable1stPkIndex:1584
[ERROR]   
IndexMetadataIT.testMutableTableOnlyHasPrimaryKeyIndex:623->helpTestTableOnlyHasPrimaryKeyIndex:662
[ERROR] Errors: 
[ERROR]   

phoenix git commit: PHOENIX-4630 Reverse scan with row_timestamp does not working

2018-02-28 Thread chenglei
Repository: phoenix
Updated Branches:
  refs/heads/4.x-cdh5.11.2 1499bd89f -> 00143c428


PHOENIX-4630 Reverse scan with row_timestamp does not working


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

Branch: refs/heads/4.x-cdh5.11.2
Commit: 00143c4284f2a5456fbb56e8d6c239de541f237e
Parents: 1499bd8
Author: chenglei 
Authored: Thu Mar 1 10:44:42 2018 +0800
Committer: chenglei 
Committed: Thu Mar 1 10:44:42 2018 +0800

--
 .../apache/phoenix/end2end/ReverseScanIT.java   | 88 +++-
 .../hadoop/hbase/regionserver/ScanInfoUtil.java | 12 +++
 .../coprocessor/BaseScannerRegionObserver.java  |  2 +-
 3 files changed, 100 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/phoenix/blob/00143c42/phoenix-core/src/it/java/org/apache/phoenix/end2end/ReverseScanIT.java
--
diff --git 
a/phoenix-core/src/it/java/org/apache/phoenix/end2end/ReverseScanIT.java 
b/phoenix-core/src/it/java/org/apache/phoenix/end2end/ReverseScanIT.java
index f172d00..c2059ef 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/ReverseScanIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/ReverseScanIT.java
@@ -197,5 +197,91 @@ public class ReverseScanIT extends ParallelStatsDisabledIT 
{
 "SERVER 1 ROW LIMIT\n" + 
 "CLIENT 1 ROW LIMIT",QueryUtil.getExplainPlan(rs));
 }
-
+
+@Test
+public void testReverseScanRowTimestampBug4630() throws Exception {
+Connection conn = null;
+try
+{
+Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
+conn = DriverManager.getConnection(getUrl(), props);
+String tableName = generateUniqueName();
+String sql = "create table "+tableName+" ( "+
+" app_tag varchar not null,"+
+" timestamp date not null,"+
+" log varchar "+
+"constraint pk primary key(app_tag, timestamp 
row_timestamp))";
+
+conn.createStatement().execute(sql);
+conn.createStatement().execute("upsert into " + tableName + " 
values ('test',to_date('2018-02-28 01:02:31'),'test1')");
+conn.createStatement().execute("upsert into " + tableName + " 
values ('test',to_date('2018-02-28 01:02:33'),'test3')");
+conn.createStatement().execute("upsert into " + tableName + " 
values ('test',to_date('2018-02-28 01:02:34'),'test4')");
+conn.createStatement().execute("upsert into " + tableName + " 
values ('test',to_date('2018-02-28 01:02:35'),'test5')");
+conn.createStatement().execute("upsert into " + tableName + " 
values ('test',to_date('2018-02-28 01:02:37'),'test7')");
+conn.commit();
+
+sql = "SELECT app_tag,log FROM " + tableName + " where app_tag = 
'test' and timestamp between to_date('2018-02-28 01:02:30') and 
to_date('2018-02-28 01:02:36') order by timestamp desc";
+ResultSet rs = conn.createStatement().executeQuery(sql);
+assertTrue(rs.next());
+assertEquals("test5", rs.getString(2));
+assertTrue(rs.next());
+assertEquals("test4", rs.getString(2));
+assertTrue(rs.next());
+assertEquals("test3", rs.getString(2));
+assertTrue(rs.next());
+assertEquals("test1", rs.getString(2));
+assertTrue(!rs.next());
+
+sql = "SELECT app_tag,log FROM " + tableName + " where app_tag = 
'test' and timestamp between to_date('2018-02-28 01:02:32') and 
to_date('2018-02-28 01:02:38') order by timestamp desc";
+rs = conn.createStatement().executeQuery(sql);
+assertTrue(rs.next());
+assertEquals("test7", rs.getString(2));
+assertTrue(rs.next());
+assertEquals("test5", rs.getString(2));
+assertTrue(rs.next());
+assertEquals("test4", rs.getString(2));
+assertTrue(rs.next());
+assertEquals("test3", rs.getString(2));
+assertTrue(!rs.next());
+
+sql = "SELECT app_tag,log FROM " + tableName + " where app_tag = 
'test' and timestamp between to_date('2018-02-28 01:02:31') and 
to_date('2018-02-28 01:02:37') order by timestamp desc";
+rs = conn.createStatement().executeQuery(sql);
+assertTrue(rs.next());
+assertEquals("test7", rs.getString(2));
+assertTrue(rs.next());
+assertEquals("test5", rs.getString(2));
+assertTrue(rs.next());
+ 

phoenix git commit: PHOENIX-4630 Reverse scan with row_timestamp does not working

2018-02-28 Thread chenglei
Repository: phoenix
Updated Branches:
  refs/heads/4.x-HBase-1.2 09f78884b -> bb0813199


PHOENIX-4630 Reverse scan with row_timestamp does not working


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

Branch: refs/heads/4.x-HBase-1.2
Commit: bb08131993bcc559ea2a6123c9ff8150a40493d6
Parents: 09f7888
Author: chenglei 
Authored: Thu Mar 1 10:39:21 2018 +0800
Committer: chenglei 
Committed: Thu Mar 1 10:39:21 2018 +0800

--
 .../apache/phoenix/end2end/ReverseScanIT.java   | 88 +++-
 .../hadoop/hbase/regionserver/ScanInfoUtil.java | 12 +++
 .../coprocessor/BaseScannerRegionObserver.java  |  2 +-
 3 files changed, 100 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/phoenix/blob/bb081319/phoenix-core/src/it/java/org/apache/phoenix/end2end/ReverseScanIT.java
--
diff --git 
a/phoenix-core/src/it/java/org/apache/phoenix/end2end/ReverseScanIT.java 
b/phoenix-core/src/it/java/org/apache/phoenix/end2end/ReverseScanIT.java
index f172d00..c2059ef 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/ReverseScanIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/ReverseScanIT.java
@@ -197,5 +197,91 @@ public class ReverseScanIT extends ParallelStatsDisabledIT 
{
 "SERVER 1 ROW LIMIT\n" + 
 "CLIENT 1 ROW LIMIT",QueryUtil.getExplainPlan(rs));
 }
-
+
+@Test
+public void testReverseScanRowTimestampBug4630() throws Exception {
+Connection conn = null;
+try
+{
+Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
+conn = DriverManager.getConnection(getUrl(), props);
+String tableName = generateUniqueName();
+String sql = "create table "+tableName+" ( "+
+" app_tag varchar not null,"+
+" timestamp date not null,"+
+" log varchar "+
+"constraint pk primary key(app_tag, timestamp 
row_timestamp))";
+
+conn.createStatement().execute(sql);
+conn.createStatement().execute("upsert into " + tableName + " 
values ('test',to_date('2018-02-28 01:02:31'),'test1')");
+conn.createStatement().execute("upsert into " + tableName + " 
values ('test',to_date('2018-02-28 01:02:33'),'test3')");
+conn.createStatement().execute("upsert into " + tableName + " 
values ('test',to_date('2018-02-28 01:02:34'),'test4')");
+conn.createStatement().execute("upsert into " + tableName + " 
values ('test',to_date('2018-02-28 01:02:35'),'test5')");
+conn.createStatement().execute("upsert into " + tableName + " 
values ('test',to_date('2018-02-28 01:02:37'),'test7')");
+conn.commit();
+
+sql = "SELECT app_tag,log FROM " + tableName + " where app_tag = 
'test' and timestamp between to_date('2018-02-28 01:02:30') and 
to_date('2018-02-28 01:02:36') order by timestamp desc";
+ResultSet rs = conn.createStatement().executeQuery(sql);
+assertTrue(rs.next());
+assertEquals("test5", rs.getString(2));
+assertTrue(rs.next());
+assertEquals("test4", rs.getString(2));
+assertTrue(rs.next());
+assertEquals("test3", rs.getString(2));
+assertTrue(rs.next());
+assertEquals("test1", rs.getString(2));
+assertTrue(!rs.next());
+
+sql = "SELECT app_tag,log FROM " + tableName + " where app_tag = 
'test' and timestamp between to_date('2018-02-28 01:02:32') and 
to_date('2018-02-28 01:02:38') order by timestamp desc";
+rs = conn.createStatement().executeQuery(sql);
+assertTrue(rs.next());
+assertEquals("test7", rs.getString(2));
+assertTrue(rs.next());
+assertEquals("test5", rs.getString(2));
+assertTrue(rs.next());
+assertEquals("test4", rs.getString(2));
+assertTrue(rs.next());
+assertEquals("test3", rs.getString(2));
+assertTrue(!rs.next());
+
+sql = "SELECT app_tag,log FROM " + tableName + " where app_tag = 
'test' and timestamp between to_date('2018-02-28 01:02:31') and 
to_date('2018-02-28 01:02:37') order by timestamp desc";
+rs = conn.createStatement().executeQuery(sql);
+assertTrue(rs.next());
+assertEquals("test7", rs.getString(2));
+assertTrue(rs.next());
+assertEquals("test5", rs.getString(2));
+assertTrue(rs.next());
+ 

phoenix git commit: PHOENIX-4630 Reverse scan with row_timestamp does not working

2018-02-28 Thread chenglei
Repository: phoenix
Updated Branches:
  refs/heads/4.x-HBase-1.1 a891d9fe4 -> 93405cb52


PHOENIX-4630 Reverse scan with row_timestamp does not working


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

Branch: refs/heads/4.x-HBase-1.1
Commit: 93405cb525633f1c12c85265c5a77a62aa508cf6
Parents: a891d9f
Author: chenglei 
Authored: Thu Mar 1 10:35:59 2018 +0800
Committer: chenglei 
Committed: Thu Mar 1 10:35:59 2018 +0800

--
 .../apache/phoenix/end2end/ReverseScanIT.java   | 88 +++-
 .../hadoop/hbase/regionserver/ScanInfoUtil.java | 12 +++
 .../coprocessor/BaseScannerRegionObserver.java  |  2 +-
 3 files changed, 100 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/phoenix/blob/93405cb5/phoenix-core/src/it/java/org/apache/phoenix/end2end/ReverseScanIT.java
--
diff --git 
a/phoenix-core/src/it/java/org/apache/phoenix/end2end/ReverseScanIT.java 
b/phoenix-core/src/it/java/org/apache/phoenix/end2end/ReverseScanIT.java
index f172d00..c2059ef 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/ReverseScanIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/ReverseScanIT.java
@@ -197,5 +197,91 @@ public class ReverseScanIT extends ParallelStatsDisabledIT 
{
 "SERVER 1 ROW LIMIT\n" + 
 "CLIENT 1 ROW LIMIT",QueryUtil.getExplainPlan(rs));
 }
-
+
+@Test
+public void testReverseScanRowTimestampBug4630() throws Exception {
+Connection conn = null;
+try
+{
+Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
+conn = DriverManager.getConnection(getUrl(), props);
+String tableName = generateUniqueName();
+String sql = "create table "+tableName+" ( "+
+" app_tag varchar not null,"+
+" timestamp date not null,"+
+" log varchar "+
+"constraint pk primary key(app_tag, timestamp 
row_timestamp))";
+
+conn.createStatement().execute(sql);
+conn.createStatement().execute("upsert into " + tableName + " 
values ('test',to_date('2018-02-28 01:02:31'),'test1')");
+conn.createStatement().execute("upsert into " + tableName + " 
values ('test',to_date('2018-02-28 01:02:33'),'test3')");
+conn.createStatement().execute("upsert into " + tableName + " 
values ('test',to_date('2018-02-28 01:02:34'),'test4')");
+conn.createStatement().execute("upsert into " + tableName + " 
values ('test',to_date('2018-02-28 01:02:35'),'test5')");
+conn.createStatement().execute("upsert into " + tableName + " 
values ('test',to_date('2018-02-28 01:02:37'),'test7')");
+conn.commit();
+
+sql = "SELECT app_tag,log FROM " + tableName + " where app_tag = 
'test' and timestamp between to_date('2018-02-28 01:02:30') and 
to_date('2018-02-28 01:02:36') order by timestamp desc";
+ResultSet rs = conn.createStatement().executeQuery(sql);
+assertTrue(rs.next());
+assertEquals("test5", rs.getString(2));
+assertTrue(rs.next());
+assertEquals("test4", rs.getString(2));
+assertTrue(rs.next());
+assertEquals("test3", rs.getString(2));
+assertTrue(rs.next());
+assertEquals("test1", rs.getString(2));
+assertTrue(!rs.next());
+
+sql = "SELECT app_tag,log FROM " + tableName + " where app_tag = 
'test' and timestamp between to_date('2018-02-28 01:02:32') and 
to_date('2018-02-28 01:02:38') order by timestamp desc";
+rs = conn.createStatement().executeQuery(sql);
+assertTrue(rs.next());
+assertEquals("test7", rs.getString(2));
+assertTrue(rs.next());
+assertEquals("test5", rs.getString(2));
+assertTrue(rs.next());
+assertEquals("test4", rs.getString(2));
+assertTrue(rs.next());
+assertEquals("test3", rs.getString(2));
+assertTrue(!rs.next());
+
+sql = "SELECT app_tag,log FROM " + tableName + " where app_tag = 
'test' and timestamp between to_date('2018-02-28 01:02:31') and 
to_date('2018-02-28 01:02:37') order by timestamp desc";
+rs = conn.createStatement().executeQuery(sql);
+assertTrue(rs.next());
+assertEquals("test7", rs.getString(2));
+assertTrue(rs.next());
+assertEquals("test5", rs.getString(2));
+assertTrue(rs.next());
+ 

phoenix git commit: PHOENIX-4630 Reverse scan with row_timestamp does not working

2018-02-28 Thread chenglei
Repository: phoenix
Updated Branches:
  refs/heads/4.x-HBase-0.98 e56d92fe9 -> 1f484245a


PHOENIX-4630 Reverse scan with row_timestamp does not working


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

Branch: refs/heads/4.x-HBase-0.98
Commit: 1f484245a8e759ee2d94d6b477d397e6ed9e4c71
Parents: e56d92f
Author: chenglei 
Authored: Thu Mar 1 10:27:31 2018 +0800
Committer: chenglei 
Committed: Thu Mar 1 10:27:31 2018 +0800

--
 .../apache/phoenix/end2end/ReverseScanIT.java   | 88 +++-
 .../hadoop/hbase/regionserver/ScanInfoUtil.java | 12 +++
 .../coprocessor/BaseScannerRegionObserver.java  |  2 +-
 3 files changed, 100 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/phoenix/blob/1f484245/phoenix-core/src/it/java/org/apache/phoenix/end2end/ReverseScanIT.java
--
diff --git 
a/phoenix-core/src/it/java/org/apache/phoenix/end2end/ReverseScanIT.java 
b/phoenix-core/src/it/java/org/apache/phoenix/end2end/ReverseScanIT.java
index f172d00..c2059ef 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/ReverseScanIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/ReverseScanIT.java
@@ -197,5 +197,91 @@ public class ReverseScanIT extends ParallelStatsDisabledIT 
{
 "SERVER 1 ROW LIMIT\n" + 
 "CLIENT 1 ROW LIMIT",QueryUtil.getExplainPlan(rs));
 }
-
+
+@Test
+public void testReverseScanRowTimestampBug4630() throws Exception {
+Connection conn = null;
+try
+{
+Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);
+conn = DriverManager.getConnection(getUrl(), props);
+String tableName = generateUniqueName();
+String sql = "create table "+tableName+" ( "+
+" app_tag varchar not null,"+
+" timestamp date not null,"+
+" log varchar "+
+"constraint pk primary key(app_tag, timestamp 
row_timestamp))";
+
+conn.createStatement().execute(sql);
+conn.createStatement().execute("upsert into " + tableName + " 
values ('test',to_date('2018-02-28 01:02:31'),'test1')");
+conn.createStatement().execute("upsert into " + tableName + " 
values ('test',to_date('2018-02-28 01:02:33'),'test3')");
+conn.createStatement().execute("upsert into " + tableName + " 
values ('test',to_date('2018-02-28 01:02:34'),'test4')");
+conn.createStatement().execute("upsert into " + tableName + " 
values ('test',to_date('2018-02-28 01:02:35'),'test5')");
+conn.createStatement().execute("upsert into " + tableName + " 
values ('test',to_date('2018-02-28 01:02:37'),'test7')");
+conn.commit();
+
+sql = "SELECT app_tag,log FROM " + tableName + " where app_tag = 
'test' and timestamp between to_date('2018-02-28 01:02:30') and 
to_date('2018-02-28 01:02:36') order by timestamp desc";
+ResultSet rs = conn.createStatement().executeQuery(sql);
+assertTrue(rs.next());
+assertEquals("test5", rs.getString(2));
+assertTrue(rs.next());
+assertEquals("test4", rs.getString(2));
+assertTrue(rs.next());
+assertEquals("test3", rs.getString(2));
+assertTrue(rs.next());
+assertEquals("test1", rs.getString(2));
+assertTrue(!rs.next());
+
+sql = "SELECT app_tag,log FROM " + tableName + " where app_tag = 
'test' and timestamp between to_date('2018-02-28 01:02:32') and 
to_date('2018-02-28 01:02:38') order by timestamp desc";
+rs = conn.createStatement().executeQuery(sql);
+assertTrue(rs.next());
+assertEquals("test7", rs.getString(2));
+assertTrue(rs.next());
+assertEquals("test5", rs.getString(2));
+assertTrue(rs.next());
+assertEquals("test4", rs.getString(2));
+assertTrue(rs.next());
+assertEquals("test3", rs.getString(2));
+assertTrue(!rs.next());
+
+sql = "SELECT app_tag,log FROM " + tableName + " where app_tag = 
'test' and timestamp between to_date('2018-02-28 01:02:31') and 
to_date('2018-02-28 01:02:37') order by timestamp desc";
+rs = conn.createStatement().executeQuery(sql);
+assertTrue(rs.next());
+assertEquals("test7", rs.getString(2));
+assertTrue(rs.next());
+assertEquals("test5", rs.getString(2));
+assertTrue(rs.next());

Build failed in Jenkins: Phoenix Compile Compatibility with HBase #562

2018-02-28 Thread Apache Jenkins Server
See 


--
[...truncated 39.70 KB...]
[ERROR] 
:[364,5]
 method does not override or implement a method from a supertype
[ERROR] 
:[370,5]
 method does not override or implement a method from a supertype
[ERROR] 
:[376,5]
 method does not override or implement a method from a supertype
[ERROR] 
:[382,5]
 method does not override or implement a method from a supertype
[ERROR] Failed to execute goal 
org.apache.maven.plugins:maven-compiler-plugin:3.0:compile (default-compile) on 
project phoenix-core: Compilation failure: Compilation failure: 
[ERROR] 
:[34,39]
 cannot find symbol
[ERROR]   symbol:   class MetricRegistry
[ERROR]   location: package org.apache.hadoop.hbase.metrics
[ERROR] 
:[144,16]
 cannot find symbol
[ERROR]   symbol:   class MetricRegistry
[ERROR]   location: class 
org.apache.phoenix.coprocessor.PhoenixMetaDataCoprocessorHost.PhoenixMetaDataControllerEnvironment
[ERROR] 
:[24,35]
 cannot find symbol
[ERROR]   symbol:   class DelegatingHBaseRpcController
[ERROR]   location: package org.apache.hadoop.hbase.ipc
[ERROR] 
:[25,35]
 cannot find symbol
[ERROR]   symbol:   class HBaseRpcController
[ERROR]   location: package org.apache.hadoop.hbase.ipc
[ERROR] 
:[37,37]
 cannot find symbol
[ERROR]   symbol: class DelegatingHBaseRpcController
[ERROR] 
:[56,38]
 cannot find symbol
[ERROR]   symbol:   class HBaseRpcController
[ERROR]   location: class 
org.apache.hadoop.hbase.ipc.controller.MetadataRpcController
[ERROR] 
:[26,35]
 cannot find symbol
[ERROR]   symbol:   class HBaseRpcController
[ERROR]   location: package org.apache.hadoop.hbase.ipc
[ERROR] 
:[40,12]
 cannot find symbol
[ERROR]   symbol:   class HBaseRpcController
[ERROR]   location: class 
org.apache.hadoop.hbase.ipc.controller.InterRegionServerMetadataRpcControllerFactory
[ERROR] 
:[46,12]
 cannot find symbol
[ERROR]   symbol:   class HBaseRpcController
[ERROR]   location: class 
org.apache.hadoop.hbase.ipc.controller.InterRegionServerMetadataRpcControllerFactory
[ERROR] 
:[52,12]
 cannot find symbol
[ERROR]   symbol:   class HBaseRpcController
[ERROR]   location: class 
org.apache.hadoop.hbase.ipc.controller.InterRegionServerMetadataRpcControllerFactory
[ERROR] 
:[57,46]
 cannot