[
https://issues.apache.org/jira/browse/PHOENIX-2123?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14629899#comment-14629899
]
Samarth Jain commented on PHOENIX-2123:
---------------------------------------
[~jamestaylor] - this one is not a duplicate of PHOENIX-2110.
This was the code before the fix:
{code}
for (Result viewResult : childViewsResult.getResults()) {
......
if (view.getBaseColumnCount() ==
QueryConstants.DIVERGED_VIEW_BASE_COLUMN_COUNT) {
return new
MetaDataMutationResult(MutationCode.UNALLOWED_TABLE_MUTATION,
EnvironmentEdgeManager.currentTimeMillis(), null);
}
}
{code}
So as you can see, we were returning when one of the views we encountered was
diverged. So we would have allowed schema change to the views in the list
before this diverged view and *not* to the views after. This change still
doesn't allow PK column to be added to the diverged view.
> Diverged view prevents schema propagation to the entire view hierarchy
> ----------------------------------------------------------------------
>
> Key: PHOENIX-2123
> URL: https://issues.apache.org/jira/browse/PHOENIX-2123
> Project: Phoenix
> Issue Type: Test
> Reporter: Samarth Jain
> Assignee: Samarth Jain
> Fix For: 4.5.0
>
> Attachments: PHOENIX-2123.patch
>
>
> This code in MetadataEndPointImpl
> {code}
> if (view.getBaseColumnCount() ==
> QueryConstants.DIVERGED_VIEW_BASE_COLUMN_COUNT) {
> // if a view has divorced itself from the base table, we
> don't allow schema changes
> // to be propagated to it.
> return new
> MetaDataMutationResult(MutationCode.UNALLOWED_TABLE_MUTATION,
> EnvironmentEdgeManager.currentTimeMillis(), null);
> }
> {code}
> ends up preventing metadata changes to be propagated to the entire hierarchy.
> Because of this bug, some views might have the change and some may not which
> is not good.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)