This is an automated email from the ASF dual-hosted git repository.

gokcen pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/phoenix.git


The following commit(s) were added to refs/heads/master by this push:
     new 6bad8b4  PHOENIX-5719 IndexRebuildTaskIT sometimes fails
6bad8b4 is described below

commit 6bad8b4a6653f9fa78bd5fcbb3787408fae989f6
Author: Gokcen Iskender <gisken...@salesforce.com>
AuthorDate: Thu Feb 13 09:01:39 2020 -0800

    PHOENIX-5719 IndexRebuildTaskIT sometimes fails
---
 .../java/org/apache/phoenix/end2end/IndexRebuildTaskIT.java   | 11 ++++++-----
 .../org/apache/phoenix/coprocessor/TaskRegionObserver.java    |  2 +-
 2 files changed, 7 insertions(+), 6 deletions(-)

diff --git 
a/phoenix-core/src/it/java/org/apache/phoenix/end2end/IndexRebuildTaskIT.java 
b/phoenix-core/src/it/java/org/apache/phoenix/end2end/IndexRebuildTaskIT.java
index 86411c1..33519b9 100644
--- 
a/phoenix-core/src/it/java/org/apache/phoenix/end2end/IndexRebuildTaskIT.java
+++ 
b/phoenix-core/src/it/java/org/apache/phoenix/end2end/IndexRebuildTaskIT.java
@@ -138,7 +138,7 @@ public class IndexRebuildTaskIT extends 
BaseUniqueNamesOwnClusterIT {
             count = getUtility().countRows(indexHTable);
             assertEquals(0, count);
 
-            String data = "{IndexName:" + indexName + ", DisableBefore: true}";
+            String data = "{IndexName:" + indexName + "}";
 
             // Run IndexRebuildTask
             TaskRegionObserver.SelfHealingTask task =
@@ -173,7 +173,9 @@ public class IndexRebuildTaskIT extends 
BaseUniqueNamesOwnClusterIT {
     public static void waitForTaskState(Connection conn, PTable.TaskType 
taskType, String expectedTableName,
             PTable.TaskStatus expectedTaskStatus) throws InterruptedException,
             SQLException {
-        int maxTries = 100, nTries = 0;
+        int maxTries = 200, nTries = 0;
+        String taskStatus = "";
+        String taskData = "";
         do {
             Thread.sleep(2000);
             ResultSet rs = conn.createStatement().executeQuery("SELECT * " +
@@ -182,16 +184,15 @@ public class IndexRebuildTaskIT extends 
BaseUniqueNamesOwnClusterIT {
                     PhoenixDatabaseMetaData.TASK_TYPE + " = " +
                     taskType.getSerializedValue());
 
-            String taskStatus = null;
-
             while (rs.next()) {
                 taskStatus = rs.getString(PhoenixDatabaseMetaData.TASK_STATUS);
+                taskData = rs.getString(PhoenixDatabaseMetaData.TASK_DATA);
                 boolean matchesExpected = 
(expectedTaskStatus.toString().equals(taskStatus));
                 if (matchesExpected) {
                     return;
                 }
             }
         } while (++nTries < maxTries);
-        fail("Ran out of time waiting for task state to become " + 
expectedTaskStatus);
+        fail(String.format("Ran out of time waiting for current task state %s 
to become %s. TaskData: %s", taskStatus, expectedTaskStatus, taskData));
     }
 }
diff --git 
a/phoenix-core/src/main/java/org/apache/phoenix/coprocessor/TaskRegionObserver.java
 
b/phoenix-core/src/main/java/org/apache/phoenix/coprocessor/TaskRegionObserver.java
index 34e2413..6c846e5 100644
--- 
a/phoenix-core/src/main/java/org/apache/phoenix/coprocessor/TaskRegionObserver.java
+++ 
b/phoenix-core/src/main/java/org/apache/phoenix/coprocessor/TaskRegionObserver.java
@@ -195,7 +195,7 @@ public class TaskRegionObserver implements RegionObserver, 
RegionCoprocessor {
                                     Task.queryTaskTable(connForTask, 
taskRecord.getTimeStamp(),
                                             taskRecord.getSchemaName(), 
taskRecord.getTableName(),
                                             taskType, 
taskRecord.getTenantId(), null).get(0);
-                            if (taskRecord.getStatus() != null && 
Arrays.stream(excludeStates).anyMatch(taskRecord.getStatus()::equals)) {
+                            if (taskRecord.getStatus() != null && 
!taskRecord.getStatus().equals(PTable.TaskStatus.CREATED.toString())) {
                                 continue;
                             }
 

Reply via email to