[ https://issues.apache.org/jira/browse/PHOENIX-4178?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16176182#comment-16176182 ]
Hadoop QA commented on PHOENIX-4178: ------------------------------------ {color:red}-1 overall{color}. Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12888448/PHOENIX-4178.patch against master branch at commit 815ce00a382e43dd3f9a72b36107a3582f3f730f. ATTACHMENT ID: 12888448 {color:green}+1 @author{color}. The patch does not contain any @author tags. {color:green}+1 tests included{color}. The patch appears to include 7 new or modified tests. {color:green}+1 javac{color}. The applied patch does not increase the total number of javac compiler warnings. {color:green}+1 release audit{color}. The applied patch does not increase the total number of release audit warnings. {color:red}-1 lineLengths{color}. The patch introduces the following lines longer than 100: + serverProps.put(QueryServices.INDEX_REBUILD_DISABLE_TIMESTAMP_THRESHOLD, Long.toString(disableTimestampThresholdMs)); + assertTrue(PIndexState.ACTIVE.toString().equalsIgnoreCase(indexState) || PIndexState.PENDING_ACTIVE.toString().equalsIgnoreCase(indexState)); + public void preBatchMutate(ObserverContext<RegionCoprocessorEnvironment> c, MiniBatchOperationInProgress<Mutation> miniBatchOp) throws IOException { + serverProps.put(QueryServices.INDEX_REBUILD_DISABLE_TIMESTAMP_THRESHOLD, "300000"); // give up rebuilding after 5 minutes + serverProps.put(QueryServices.INDEX_FAILURE_HANDLING_REBUILD_PERIOD, Long.toString(REBUILD_PERIOD)); // batch at 50 seconds + mutateRandomly(fullTableName, nThreads, nRows, nIndexValues, batchSize, doneSignal2); + private static boolean hasIndexWithState(PMetaData metaCache, PTableKey key, PIndexState expectedState) throws TableNotFoundException { + conn.createStatement().execute("CREATE TABLE " + fullTableName + "(k VARCHAR PRIMARY KEY, v1 VARCHAR, v2 VARCHAR) COLUMN_ENCODED_BYTES = 0, STORE_NULLS=true"); + conn.createStatement().execute("CREATE INDEX " + indexName + " ON " + fullTableName + " (v1, v2)"); + HTableInterface metaTable = conn.unwrap(PhoenixConnection.class).getQueryServices().getTable(PhoenixDatabaseMetaData.SYSTEM_CATALOG_NAME_BYTES); {color:red}-1 core tests{color}. The patch failed these unit tests: ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.PartialIndexRebuilderIT ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.UpsertValuesIT Test results: https://builds.apache.org/job/PreCommit-PHOENIX-Build/1473//testReport/ Console output: https://builds.apache.org/job/PreCommit-PHOENIX-Build/1473//console This message is automatically generated. > Detect failed index write while rebuilder is running with index staying active > ------------------------------------------------------------------------------ > > Key: PHOENIX-4178 > URL: https://issues.apache.org/jira/browse/PHOENIX-4178 > Project: Phoenix > Issue Type: Bug > Reporter: James Taylor > Assignee: James Taylor > Fix For: 4.12.0 > > Attachments: PHOENIX-4178.patch > > > If an index write fails while the rebuilder is running, we need to make sure > to run the rebuilder again so we don't need miss any rows. This can only > happen when the index is left active, as otherwise the index will transition > back to disabled and we'll end up rerunning the rebuilder. -- This message was sent by Atlassian JIRA (v6.4.14#64029)