phoenix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Hadoop QA (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (PHOENIX-4290) Full table scan performed for DELETE with table having immutable indexes
Date Wed, 25 Oct 2017 09:52:00 GMT

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

Hadoop QA commented on PHOENIX-4290:
------------------------------------

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

    {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: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:
    +            PreparedStatement psDelete = con.prepareStatement("DELETE FROM " + tableName
+ " WHERE (HOST, DOMAIN, FEATURE, \"DATE\") = (?,?,?,?)");
+            rs = con.createStatement().executeQuery("SELECT /*+ NO_INDEX */ count(*) FROM
" + tableName);
+    private static MutationState deleteRows(StatementContext context, QueryPlan dataPlan,
List<TableRef> indexTableRefs, ResultIterator iterator,
+                public ImmutableBytesWritable getLatestValue(ColumnReference ref, long ts)
throws IOException {
+                    valuePtr.set(cell.getValueArray(), cell.getValueOffset(), cell.getValueLength());
+                        // Create IndexMaintainer based on projected table (i.e. SELECT expressions)
so that client-side
+                        IndexMaintainer maintainer = IndexMaintainer.create(projectedTable,
indexTableRefs.get(i).getTable(), connection);
+                        indexPtr.set(maintainer.buildRowKey(getter, indexPtr, null, null,
HConstants.LATEST_TIMESTAMP));
+            MutationState state = deleteRows(ctx, dataQueryPlan, indexTableRefs, iterator,
projector, sourceTableRef);
+            List<PTable> nonDisabledIndexes = Lists.newArrayListWithExpectedSize(table.getIndexes().size());

     {color:red}-1 core tests{color}.  The patch failed these unit tests:
     ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.IndexExtendedIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.TenantSpecificTablesDMLIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.GlobalImmutableNonTxIndexIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.join.SubqueryIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.ImmutableIndexIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.DeleteIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.tx.TxCheckpointIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.IndexMaintenanceIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.ViewIndexIT
./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.index.GlobalImmutableTxIndexIT

Test results: https://builds.apache.org/job/PreCommit-PHOENIX-Build/1570//testReport/
Console output: https://builds.apache.org/job/PreCommit-PHOENIX-Build/1570//console

This message is automatically generated.

> Full table scan performed for DELETE with table having immutable indexes
> ------------------------------------------------------------------------
>
>                 Key: PHOENIX-4290
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-4290
>             Project: Phoenix
>          Issue Type: Bug
>            Reporter: James Taylor
>            Assignee: James Taylor
>             Fix For: 4.13.0, 4.12.1
>
>         Attachments: PHOENIX-4290_wip1.patch, PHOENIX-4290_wip2.patch
>
>
> If a DELETE command is issued with a partial match for the leading part of the primary
key, instead of using the data table, when the table has immutable indexes, a full scan will
occur against the index.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Mime
View raw message