[
https://issues.apache.org/jira/browse/PHOENIX-3841?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16003131#comment-16003131
]
James Taylor commented on PHOENIX-3841:
---------------------------------------
Rather than the change you made (which will have other implications, such as
causing CURRENT_DATE calls to potentially not give the correct time), I'd force
an update cache in this call from CreateTableCompiler:
{code}
ColumnResolver resolver = FromCompiler.getResolverForCreation(create,
connection);
{code}
by essentially tweaking that call in FromCompiler:
{code}
public static ColumnResolver getResolverForCreation(final
CreateTableStatement statement, final PhoenixConnection connection)
throws SQLException {
{code}
Once PHOENIX-3534 is in, that won't be necessary any longer (would be good to
comment on this and add a comment to that JIRA too).
> Phoenix View creation failure with Primary table not found error when we use
> update_cache_frequency for primary table
> ---------------------------------------------------------------------------------------------------------------------
>
> Key: PHOENIX-3841
> URL: https://issues.apache.org/jira/browse/PHOENIX-3841
> Project: Phoenix
> Issue Type: Sub-task
> Affects Versions: 4.10.0
> Reporter: Maddineni Sukumar
> Assignee: Maddineni Sukumar
> Priority: Minor
> Fix For: 4.10.1
>
> Attachments: PHOENIX-3841.patch
>
>
> Create VIEW command failing with actual table not found error and next retry
> failed with VIEW already exists error..And its continuing like that(first
> tabelnotfound and then view already exists)..
> If I create table without UPDATE_CACHE_FREQUENCY then its working fine.
> Create table command:
> create table UpdateCacheViewTestB (k VARCHAR PRIMARY KEY, v1 VARCHAR, v2
> VARCHAR) UPDATE_CACHE_FREQUENCY=100000;
> Create View command:
> CREATE VIEW my_view (v43 VARCHAR) AS SELECT * FROM UpdateCacheViewTestB WHERE
> v1 = 'value1’;
> sqlline Console output:
> 0: jdbc:phoenix:shared-mnds1-1-sfm.ops.sfdc.n> select * from
> UPDATECACHEVIEWTESTB;
> --------------------------------------------------------------------------------------------------------------------------
> K V1 V2
> --------------------------------------------------------------------------------------------------------------------------
> 0: jdbc:phoenix:shared-mnds1-1-sfm.ops.sfdc.n> CREATE VIEW my_view (v43
> VARCHAR) AS SELECT * FROM UpdateCacheViewTestB WHERE v1 = 'value1';
> Error: ERROR 1012 (42M03): Table undefined. tableName=UPDATECACHEVIEWTESTB
> (state=42M03,code=1012)
> 0: jdbc:phoenix:shared-mnds1-1-sfm.ops.sfdc.n> CREATE VIEW my_view (v43
> VARCHAR) AS SELECT * FROM UpdateCacheViewTestB WHERE v1 = 'value1';
> Error: ERROR 1013 (42M04): Table already exists. tableName=MY_VIEW
> (state=42M04,code=1013)
> 0: jdbc:phoenix:shared-mnds1-1-sfm.ops.sfdc.n> CREATE VIEW my_view (v43
> VARCHAR) AS SELECT * FROM UpdateCacheViewTestB WHERE v1 = 'value1';
> Error: ERROR 1012 (42M03): Table undefined. tableName=UPDATECACHEVIEWTESTB
> (state=42M03,code=1012)
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)