[
https://issues.apache.org/jira/browse/PHOENIX-5958?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17159700#comment-17159700
]
Thomas D'Silva commented on PHOENIX-5958:
-----------------------------------------
[~ckulkarni] Its been a while since I have looked at this code :)
I thought there was some logic in
ViewUtil.addDerivedColumnsAndIndexesFromParent to handle diverged views that
were created before 4.15 (see
[https://github.com/apache/phoenix/blob/8f9ee5015f013de173a26161f34a270d68a9d2f9/phoenix-core/src/main/java/org/apache/phoenix/util/ViewUtil.java#L494)]
Since the views were created before 4.15 they diverged view PTable should have
all the parent table columns that weren't dropped and it should only include
those columns, maybe there is a bug there?
> Diverged view created via an older client still sees dropped column data
> ------------------------------------------------------------------------
>
> Key: PHOENIX-5958
> URL: https://issues.apache.org/jira/browse/PHOENIX-5958
> Project: Phoenix
> Issue Type: Bug
> Affects Versions: 4.15.0
> Reporter: Chinmay Kulkarni
> Priority: Blocker
> Fix For: 4.16.0
>
>
> By "diverged view" I mean creating a view and then dropping one of the
> inherited columns from the view. Steps to reproduce:
> Start a 4.x server and connect with a pre-4.15 (I tried a 4.14.3) client
> # CREATE TABLE IF NOT EXISTS S.T (A INTEGER PRIMARY KEY, B INTEGER);
> # CREATE VIEW IF NOT EXISTS S.V (new_col INTEGER) AS SELECT * FROM S.T;
> # UPSERT INTO S.T VALUES(1,2);
> # ALTER VIEW S.V DROP COLUMN B;
> # SELECT * FROM S.T; gives:
> |A|B|
> |1|2|
> # SELECT * FROM S.V; gives:
> |B|A|NEW_COL|
> |2|1|null|
> Though the column 'B' has been dropped from the view. This does not happen
> for a 4.x client.
> The problem is mostly due to changes introduced by
> [PHOENIX-4893|https://issues.apache.org/jira/browse/PHOENIX-4893].
--
This message was sent by Atlassian Jira
(v8.3.4#803005)