You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@phoenix.apache.org by "Hadoop QA (Jira)" <ji...@apache.org> on 2019/09/04 01:24:00 UTC

[jira] [Commented] (PHOENIX-5456) IndexScrutinyTool slow for indexes on multitenant tables

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

Hadoop QA commented on PHOENIX-5456:
------------------------------------

{color:red}-1 overall{color}.  Here are the results of testing the latest attachment 
  http://issues.apache.org/jira/secure/attachment/12979258/PHOENIX-5456.master.2.patch
  against master branch at commit 197b6e30c894b657758c5d0cb3c6182d6c8d4723.
  ATTACHMENT ID: 12979258

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

    {color:red}-1 tests included{color}.  The patch doesn't appear to include any new or modified tests.
                        Please justify why no new tests are needed for this patch.
                        Also please list what manual steps were performed to verify this patch.

    {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 3 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:
    +        clientProps.put(QueryServices.INDEX_REGION_OBSERVER_ENABLED_ATTRIB, Boolean.FALSE.toString());
+    protected String[] getArgValues(String schemaName, String dataTable, String indxTable, Long batchSize,
+            SourceTable sourceTable, boolean outputInvalidRows, OutputFormat outputFormat, Long maxOutputRows, String tenantId, Long scrutinyTs) {
+        ResultSet count = conn.createStatement().executeQuery("select count(*) from " + tableFullName);
+        String createTblStr = "CREATE TABLE %s (COL1 VARCHAR(15) NOT NULL,ID INTEGER NOT NULL" + ", NAME VARCHAR, CONSTRAINT PK_1 PRIMARY KEY (COL1, ID)) MULTI_TENANT=true";
+                getArgValues("", tenantViewName, indexNameTenant, 10L, SourceTable.INDEX_TABLE_SOURCE, false, null, null, tenantId,
+                getArgValues("", globalViewName, indexNameGlobal, 10L, SourceTable.INDEX_TABLE_SOURCE, false, null, null, null,
+        String targetPksCsv = Joiner.on(",").join(SchemaUtil.getEscapedFullColumnNames(columnNames.getTargetPkColNames()));
+                QueryUtil.constructSelectStatement(indexNameGlobal, columnNames.getCastedTargetColNames(), targetPksCsv,
+                "SELECT /*+ NO_INDEX */ CAST(\"COL1\" AS VARCHAR(15)) , CAST(\"ID\" AS INTEGER) , CAST(\"0\".\"NAME\" AS VARCHAR) FROM "

     {color:red}-1 core tests{color}.  The patch failed these unit tests:
     ./phoenix-core/target/failsafe-reports/TEST-org.apache.phoenix.end2end.join.SortMergeJoinLocalIndexIT

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

This message is automatically generated.

> IndexScrutinyTool slow for indexes on multitenant tables
> --------------------------------------------------------
>
>                 Key: PHOENIX-5456
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-5456
>             Project: Phoenix
>          Issue Type: Bug
>    Affects Versions: 4.15.0, 5.1.0
>            Reporter: Vincent Poon
>            Assignee: Gokcen Iskender
>            Priority: Major
>         Attachments: PHOENIX-5456.master.1.patch, PHOENIX-5456.master.2.patch
>
>          Time Spent: 50m
>  Remaining Estimate: 0h
>
> The IndexScrutinyTool is doing full scans for index tables on multitenant tables. 
> This is due to a change in PHOENIX-5089, where we added code to IndexColumnNames to skip a portion of the PK if the table is multitenant:
> https://github.com/apache/phoenix/commit/cc9754fff840f38d13c3adb0c963296959fff3fa#diff-0705645faa779229d00792c032ed377fR64
> This causes scrutinies for global, non-view indexes on multitenant tables to skip the tenantId when generating the pk column list, thereby causing a full scan.



--
This message was sent by Atlassian Jira
(v8.3.2#803003)