[
https://issues.apache.org/jira/browse/HIVE-1287?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12851122#action_12851122
]
Zheng Shao commented on HIVE-1287:
----------------------------------
> Traditionally, a CAST is used to bypass compile time checks. While this is
> very powerful concept, it can lead to data corrpution if not used with
> caution.
The semantics of type equivalence as you mentioned is weaker than the current
one. It can also lead to data corrpution if not used with caution.
Asking users to use "CAST" is safer than implicitly treating struct<a:string>
and struct<b:string> to be the same type.
Does that make sense?
> Struct datatype should not use field names for type equivalence.
> ----------------------------------------------------------------
>
> Key: HIVE-1287
> URL: https://issues.apache.org/jira/browse/HIVE-1287
> Project: Hadoop Hive
> Issue Type: Bug
> Components: Query Processor
> Environment: Mac OS X (10.6.2) Java SE 6 ( 1.6.0_17)
> Reporter: Arvind Prabhakar
>
> The field names for {{Struct}} types are currently being matched for testing
> type equivalence. This is readily seen by running the following example:
> {noformat}
> hive> create table source ( foo struct < x : string > );
> OK
> Time taken: 3.094 seconds
> hive> load data local inpath '/path/to/sample/data.txt' overwrite into table
> source;
> Copying data from file:/path/to/sample/data.txt
> Loading data to table source
> OK
> Time taken: 0.593 seconds
> hive> create table sink ( bar struct < y : string >);
> OK
> Time taken: 0.11 seconds
> hive> insert overwrite table sink select foo from source;
> FAILED: Error in semantic analysis: line 1:23 Cannot insert into target table
> because column number/types are different sink: Cannot convert column 0
> from struct<x:string> to struct<y:string>.
> {noformat}
> Since both {{soruce.foo}} and {{sink.bar}} are similar in definition with
> only field names being different, data movement between these two should be
> allowed.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.