[ 
https://issues.apache.org/jira/browse/PHOENIX-5496?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17027947#comment-17027947
 ] 

Hadoop QA commented on PHOENIX-5496:
------------------------------------

{color:red}-1 overall{color}.  Here are the results of testing the latest 
attachment 
  http://issues.apache.org/jira/secure/attachment/12992380/PHOENIX-5496.patch
  against master branch at commit 42bb52b4878d8d782a26605c854a4c9f0177e249.
  ATTACHMENT ID: 12992380

    {color:green}+1 @author{color}.  The patch does not contain any @author 
tags.

    {color:green}+1 tests included{color}.  The patch appears to include 3 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 release audit{color}.  The applied patch generated 1 release 
audit warnings (more than the master's current 0 warnings).

    {color:red}-1 lineLengths{color}.  The patch introduces the following lines 
longer than 100:
    +                        throw new TableAlreadyExistsException(schemaName, 
tableName, result.getTable());
+                handleCreateTableMutationCode(result, code, statement, 
schemaName, tableName, parent);
+                final PColumn autoPartitionCol = 
parent.getPKColumns().get(MetaDataUtil.getAutoPartitionColIndex(parent));
+                String viewPartitionClause = 
QueryUtil.getViewPartitionClause(MetaDataUtil.getAutoPartitionColumnName(parent),
 autoPartitionNum);
+                    viewStatement = 
QueryUtil.getViewStatement(parent.getSchemaName().getString(), 
parent.getTableName().getString(), viewPartitionClause);
+             * It doesn't hurt for the PTable of views to have the cqCounter. 
However, views always rely on the
+             * parent table's counter to dole out encoded column qualifiers. 
So setting the counter as NULL_COUNTER
+            EncodedCQCounter cqCounterToBe = tableType == PTableType.VIEW ? 
NULL_COUNTER : cqCounter;
+                    .setViewTTLHighWaterMark(viewTTLHighWaterMark == null ? 
MIN_VIEW_TTL_HWM : viewTTLHighWaterMark)
+            deleteMutexCells(parentPhysicalSchemaName, 
parentPhysicalTableName, acquiredColumnMutexSet);

     {color:red}-1 core tests{color}.  The patch failed these unit tests:
     
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.TenantIdTypeIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.DynamicFamilyIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.SortOrderIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.CSVCommonsLoaderIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.IndexCoprocIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.tx.ParameterizedTransactionIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.DeleteIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.ViewTTLIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.CreateTableIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.DerivedTableIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.TenantSpecificTablesDDLIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.SystemCatalogCreationOnConnectionIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.ExecuteStatementsIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.SaltedIndexIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.IndexScrutinyToolIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.AutoPartitionViewsIT

Test results: 
https://builds.apache.org/job/PreCommit-PHOENIX-Build/3370//testReport/
Release audit warnings: 
https://builds.apache.org/job/PreCommit-PHOENIX-Build/3370//artifact/patchprocess/patchReleaseAuditWarnings.txt
Console output: 
https://builds.apache.org/job/PreCommit-PHOENIX-Build/3370//console

This message is automatically generated.

> Ensure that we handle all server-side mutation codes on the client
> ------------------------------------------------------------------
>
>                 Key: PHOENIX-5496
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-5496
>             Project: Phoenix
>          Issue Type: Bug
>    Affects Versions: 4.15.0, 5.1.0
>            Reporter: Chinmay Kulkarni
>            Assignee: Neha Gupta
>            Priority: Major
>             Fix For: 4.15.1, 5.1.1
>
>         Attachments: PHOENIX-5496.patch
>
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> There are many instances throughout wherein we set a certain error mutation 
> code in the RPC callback, however we do not handle these mutation codes on 
> the client.
> For example: 
> If the metadata rows for a tableKey are no longer in that SYSCAT region, 
> checkTableKeyInRegion() fails, the metadata for this table is not written to 
> SYSCAT and [the TABLE_NOT_IN_REGION mutation code is 
> set|https://github.com/apache/phoenix/blob/11997d48d1957cf613526f01c5ccbe2812cf095d/phoenix-core/src/main/java/org/apache/phoenix/coprocessor/MetaDataEndpointImpl.java#L1785-L1790].
> This is handled for 1 retry inside 
> [CQSI.metaDataCoprocessorExec|https://github.com/apache/phoenix/blob/11997d48d1957cf613526f01c5ccbe2812cf095d/phoenix-core/src/main/java/org/apache/phoenix/query/ConnectionQueryServicesImpl.java#L1568-L1570],
>  but if this happens again, it is returned back to the client where it goes 
> to the default case and succeeds.
> Apart from the fact that partial metadata updates are possible leading to 
> orphan metadata rows in system tables, this also wrongly returns success for 
> clients even though there is no record of that table/view being created 
> inside Phoenix's system tables.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to