[ https://issues.apache.org/jira/browse/PHOENIX-6142?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17215100#comment-17215100 ]
ASF GitHub Bot commented on PHOENIX-6142: ----------------------------------------- stoty commented on pull request #903: URL: https://github.com/apache/phoenix/pull/903#issuecomment-709674292 :broken_heart: **-1 overall** | Vote | Subsystem | Runtime | Comment | |:----:|----------:|--------:|:--------| | +0 :ok: | reexec | 0m 30s | Docker mode activated. | ||| _ Prechecks _ | | +1 :green_heart: | dupname | 0m 0s | No case conflicting files found. | | +1 :green_heart: | hbaseanti | 0m 0s | Patch does not have any anti-patterns. | | +1 :green_heart: | @author | 0m 0s | The patch does not contain any @author tags. | | -1 :x: | test4tests | 0m 0s | 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. | ||| _ 4.x Compile Tests _ | | +1 :green_heart: | mvninstall | 26m 21s | 4.x passed | | +1 :green_heart: | compile | 0m 54s | 4.x passed | | +1 :green_heart: | checkstyle | 3m 2s | 4.x passed | | +1 :green_heart: | javadoc | 0m 43s | 4.x passed | | +0 :ok: | spotbugs | 2m 50s | phoenix-core in 4.x has 956 extant spotbugs warnings. | ||| _ Patch Compile Tests _ | | +1 :green_heart: | mvninstall | 22m 49s | the patch passed | | +1 :green_heart: | compile | 0m 56s | the patch passed | | +1 :green_heart: | javac | 0m 56s | the patch passed | | -1 :x: | checkstyle | 3m 7s | phoenix-core: The patch generated 417 new + 5804 unchanged - 345 fixed = 6221 total (was 6149) | | -1 :x: | whitespace | 0m 0s | The patch 1 line(s) with tabs. | | -1 :x: | javadoc | 0m 43s | phoenix-core generated 1 new + 99 unchanged - 1 fixed = 100 total (was 100) | | -1 :x: | spotbugs | 3m 6s | phoenix-core generated 1 new + 953 unchanged - 3 fixed = 954 total (was 956) | ||| _ Other Tests _ | | -1 :x: | unit | 125m 23s | phoenix-core in the patch failed. | | +1 :green_heart: | asflicense | 0m 38s | The patch does not generate ASF License warnings. | | | | 193m 48s | | | Reason | Tests | |-------:|:------| | FindBugs | module:phoenix-core | | | Found reliance on default encoding in org.apache.phoenix.util.ViewUtil.findImmediateRelatedViews(Table, byte[], byte[], byte[], PTable$LinkType, long):in org.apache.phoenix.util.ViewUtil.findImmediateRelatedViews(Table, byte[], byte[], byte[], PTable$LinkType, long): String.getBytes() At ViewUtil.java:[line 287] | | Failed junit tests | phoenix.end2end.PhoenixRuntimeIT | | | phoenix.end2end.ToCharFunctionIT | | | phoenix.end2end.DeleteIT | | | phoenix.end2end.IndexToolForNonTxGlobalIndexIT | | | phoenix.end2end.UpsertSelectIT | | | phoenix.end2end.index.ImmutableIndexExtendedIT | | | phoenix.end2end.DropSchemaIT | | | phoenix.end2end.index.IndexMaintenanceIT | | | phoenix.end2end.OrphanViewToolIT | | Subsystem | Report/Notes | |----------:|:-------------| | Docker | ClientAPI=1.40 ServerAPI=1.40 base: https://ci-hadoop.apache.org/job/Phoenix/job/Phoenix-PreCommit-GitHub-PR/job/PR-903/6/artifact/yetus-general-check/output/Dockerfile | | GITHUB PR | https://github.com/apache/phoenix/pull/903 | | JIRA Issue | PHOENIX-6142 | | Optional Tests | dupname asflicense javac javadoc unit spotbugs hbaseanti checkstyle compile | | uname | Linux c35418f930ab 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux | | Build tool | maven | | Personality | dev/phoenix-personality.sh | | git revision | 4.x / 264310b | | Default Java | Private Build-1.8.0_242-8u242-b08-0ubuntu3~16.04-b08 | | checkstyle | https://ci-hadoop.apache.org/job/Phoenix/job/Phoenix-PreCommit-GitHub-PR/job/PR-903/6/artifact/yetus-general-check/output/diff-checkstyle-phoenix-core.txt | | whitespace | https://ci-hadoop.apache.org/job/Phoenix/job/Phoenix-PreCommit-GitHub-PR/job/PR-903/6/artifact/yetus-general-check/output/whitespace-tabs.txt | | javadoc | https://ci-hadoop.apache.org/job/Phoenix/job/Phoenix-PreCommit-GitHub-PR/job/PR-903/6/artifact/yetus-general-check/output/diff-javadoc-javadoc-phoenix-core.txt | | spotbugs | https://ci-hadoop.apache.org/job/Phoenix/job/Phoenix-PreCommit-GitHub-PR/job/PR-903/6/artifact/yetus-general-check/output/new-spotbugs-phoenix-core.html | | unit | https://ci-hadoop.apache.org/job/Phoenix/job/Phoenix-PreCommit-GitHub-PR/job/PR-903/6/artifact/yetus-general-check/output/patch-unit-phoenix-core.txt | | Test Results | https://ci-hadoop.apache.org/job/Phoenix/job/Phoenix-PreCommit-GitHub-PR/job/PR-903/6/testReport/ | | Max. process+thread count | 6414 (vs. ulimit of 30000) | | modules | C: phoenix-core U: phoenix-core | | Console output | https://ci-hadoop.apache.org/job/Phoenix/job/Phoenix-PreCommit-GitHub-PR/job/PR-903/6/console | | versions | git=2.7.4 maven=3.3.9 spotbugs=4.1.3 | | Powered by | Apache Yetus 0.12.0 https://yetus.apache.org | This message was automatically generated. ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > Make DDL operations resilient to orphan parent->child linking rows in > SYSTEM.CHILD_LINK > --------------------------------------------------------------------------------------- > > Key: PHOENIX-6142 > URL: https://issues.apache.org/jira/browse/PHOENIX-6142 > Project: Phoenix > Issue Type: Bug > Affects Versions: 5.0.0, 4.15.0 > Reporter: Chinmay Kulkarni > Assignee: Chinmay Kulkarni > Priority: Blocker > Fix For: 5.1.0, 4.16.0 > > Attachments: PHOENIX-6142-4.x-v1.patch, PHOENIX-6142.4.x.v2.patch, > PHOENIX-6142.4.x.v3.patch, PHOENIX-6142.4.x.v4.patch > > > We are targeting PHOENIX-6141 for 4.17. Until we have it, we should aim at > making DDL operations resilient to orphan parent->child linking rows. DDL > operations identified which can fail due to orphan rows are: > # Any ALTER TABLE ADD/DROP/SET calls on the base table T will fail if there > are orphan links from T to some already dropped view. This happens because > the call to > [MetaDataEndpointImpl.findAllChildViews()|https://github.com/apache/phoenix/blob/fece8e69b9c03c80db7a0801d99e5de31fe15ffa/phoenix-core/src/main/java/org/apache/phoenix/coprocessor/MetaDataEndpointImpl.java#L2142] > from > [MetaDataEndpointImpl.mutateColumn()|https://github.com/apache/phoenix/blob/fece8e69b9c03c80db7a0801d99e5de31fe15ffa/phoenix-core/src/main/java/org/apache/phoenix/coprocessor/MetaDataEndpointImpl.java#L2592] > fails with a TableNotFoundException. > # Any DROP TABLE/VIEW call without CASCADE will fail even though there are > actually no child views since the orphan rows wrongly indicate that there are > child views. > # During the upgrade path for UpgradeUtil.syncUpdateCacheFreqAllIndexes(), > we will just ignore any orphan views (for ex, see > [this|https://github.com/apache/phoenix/blob/fece8e69b9c03c80db7a0801d99e5de31fe15ffa/phoenix-core/src/main/java/org/apache/phoenix/util/UpgradeUtil.java#L1368-L1374]), > but the call to UpgradeUtil.upgradeTable() will fail with a > TableNotFoundException for each orphan view. > # During a CREATE TABLE/VIEW, we try to drop any views from the previous life > of that table/view, however we might end up dropping a legitimate view (with > the same name) which is on another table/view because of this. > Before dropping any views that we see from a parent->child link, we need to > ensure that the view is in fact a child view of the same table/view we think > it is an orphan of. -- This message was sent by Atlassian Jira (v8.3.4#803005)