[
https://issues.apache.org/jira/browse/DRILL-307?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13830813#comment-13830813
]
Julian Hyde commented on DRILL-307:
-----------------------------------
The behavior that you want is potentially generic. If you can convert your
changes into a form that does not depend on Drill, I would be happy to include
in Optiq along with a new concept called "variant record type" or something
like that. This will be more maintainable in the long run; I will run tests to
make sure that validation works on tables with such a record type.
> Remove _MAP[] from Drill SQL
> ----------------------------
>
> Key: DRILL-307
> URL: https://issues.apache.org/jira/browse/DRILL-307
> Project: Apache Drill
> Issue Type: Bug
> Reporter: Mehant Baid
> Assignee: Mehant Baid
> Attachments: DRILL-307.patch
>
>
> Currently while executing SQL we need to use _MAP['columnname'] in the select
> statements.
> The problem while using select statements with columnnames instead of
> _MAP['columnname'] is that Optiq tries to verify that these columns exist in
> the schema and raises validation errors.
> The way we've solved the problem is to override the 'rowtype' returned to
> Optiq while creating a Drill table. We have defined a new class
> RelDataTypeDrillImpl which is the 'rowtype' returned to Optiq and will be
> invoked for any validation purposes. RelDataTypeDrillImpl always returns true
> when queried if a certain field exists in the table, with its type as 'ANY'.
> This gets us past the validation in Optiq and allows us to use column names
> directly in select statements.
--
This message was sent by Atlassian JIRA
(v6.1#6144)