[
https://issues.apache.org/jira/browse/PHOENIX-3576?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15979313#comment-15979313
]
Hadoop QA commented on PHOENIX-3576:
------------------------------------
{color:red}-1 overall{color}. Here are the results of testing the latest
attachment
http://issues.apache.org/jira/secure/attachment/12847823/PHOENIX-3576.v0.patch
against master branch at commit 92b951e5387768e084ed09729884a59160cd81d3.
ATTACHMENT ID: 12847823
{color:green}+1 @author{color}. The patch does not contain any @author
tags.
{color:green}+1 tests included{color}. The patch appears to include 2 new
or modified tests.
{color:green}+1 javac{color}. The applied patch does not increase the
total number of javac compiler warnings.
{color:red}-1 javadoc{color}. The javadoc tool appears to have generated
47 warning messages.
{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:
+ * Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE
+ * file distributed with this work for additional information regarding
copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the "License"); you may not
use this file except in compliance with the
+ * License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0 Unless required by
+ * applicable law or agreed to in writing, software distributed under the
License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language
+ void setup(HTableFactory factory, Abortable abortable, Stoppable stop, int
cacheSize, RegionCoprocessorEnvironment env) {
+ public void write(Multimap<HTableInterfaceReference, Mutation> toWrite,
final boolean allowLocalUpdates) throws SingleIndexWriteFailureException {
+ final List<Mutation> mutations =
kvBuilder.cloneIfNecessary((List<Mutation>) entry.getValue());
{color:red}-1 core tests{color}. The patch failed these unit tests:
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.MutableIndexFailureIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.IndexToolForPartialBuildWithNamespaceEnabledIT
Test results:
https://builds.apache.org/job/PreCommit-PHOENIX-Build/838//testReport/
Javadoc warnings:
https://builds.apache.org/job/PreCommit-PHOENIX-Build/838//artifact/patchprocess/patchJavadocWarnings.txt
Console output:
https://builds.apache.org/job/PreCommit-PHOENIX-Build/838//console
This message is automatically generated.
> The local index updates will be blocked when the region is preparing to split
> -----------------------------------------------------------------------------
>
> Key: PHOENIX-3576
> URL: https://issues.apache.org/jira/browse/PHOENIX-3576
> Project: Phoenix
> Issue Type: Bug
> Affects Versions: 4.9.0
> Reporter: Chia-Ping Tsai
> Attachments: hbase-root-regionserver-node06.ncku.edu.tw.log,
> PHOENIX-3576.v0.patch
>
>
> ParallelWriterIndexCommitter uses the AP to update the local index after the
> region#batchMutate fails. If the region is splitting, all later updates will
> fail (RegionTooBusyException) due to the write lock. The AP will retry the
> failed updates until it reaches the retry threshold, so the read lock of
> region is released after a long time. The read lock blocks the HRegion#close,
> so the region splitting is also blocked.
> {noformat}
> try {
> if (allowLocalUpdates
> && env != null
> && tableReference.getTableName().equals(
>
> env.getRegion().getTableDesc().getNameAsString())) {
> try {
> throwFailureIfDone();
> IndexUtil.writeLocalUpdates(env.getRegion(),
> mutations, true);
> return null;
> } catch (IOException ignord) {
> // when it's failed we fall back to the
> standard & slow way
> if (LOG.isDebugEnabled()) {
> LOG.debug("indexRegion.batchMutate failed
> and fall back to HTable.batch(). Got error="
> + ignord);
> }
> }
> }
> table = factory.getTable(tableReference.get());
> throwFailureIfDone();
> table.batch(mutations);
> } catch (SingleIndexWriteFailureException e) {
> throw e;
> } catch (IOException e) {
> throw new
> SingleIndexWriteFailureException(tableReference.toString(), mutations, e);
> } catch (InterruptedException e) {
> // reset the interrupt status on the thread
> Thread.currentThread().interrupt();
> throw new
> SingleIndexWriteFailureException(tableReference.toString(), mutations, e);
> }
> finally{
> if (table != null) {
> table.close();
> }
> }
> return null;
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)