[
https://issues.apache.org/jira/browse/CALCITE-2208?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16801626#comment-16801626
]
Danny Chan commented on CALCITE-2208:
-------------------------------------
[~julianhyde] I have fixed this in
[#pull1133|https://github.com/apache/calcite/pull/1133].
The main diff is to use the current active connection config to initialize a
parser config so that users can always define their parser trait.
I add a SqlParser.Config instance in MaterializedViewTableMacro, this config
comes from the connection config and is used to create MaterializedViewTable.
> MaterializedViewTable.MATERIALIZATION_CONNECTION breaks lex and case
> sensitivity for end user
> ---------------------------------------------------------------------------------------------
>
> Key: CALCITE-2208
> URL: https://issues.apache.org/jira/browse/CALCITE-2208
> Project: Calcite
> Issue Type: Bug
> Components: core
> Affects Versions: 1.15.0, 1.16.0
> Reporter: Piotr Bojko
> Assignee: Danny Chan
> Priority: Major
> Labels: pull-request-available
> Time Spent: 40m
> Remaining Estimate: 0h
>
> MaterializedViewTable.MATERIALIZATION_CONNECTION used for validating views
> uses ORACLE lex by default. Calcite expands the view sql to uppercase so when
> schemas used in such view sql are used are declared in lowercase - Calcite
> does not find needed objects to resolve and validate the view sql.
> It does really not work even when end user creates connection with
> lex=oracle, but uses uppercase for the names of its tables.
> It would be best when MaterializedViewTable.MATERIALIZATION_CONNECTION would
> be replaced by connection of an end user or dynamically created connection
> with passed lex from end user connection.
> Quick and dirty solution is to create
> MaterializedViewTable.MATERIALIZATION_CONNECTION with caseSensitive=false;
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)