[ https://issues.apache.org/jira/browse/HIVE-2509?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13131201#comment-13131201 ]
Jonathan Chang commented on HIVE-2509: -------------------------------------- 1.) You can't cast array<int> to array<bigint> in Hive which is why we had to write an FB UDF for this exact problem. Right now you need to pass in an instance of the desired type which is annoying with BIGINTs. This starts to become a deep rabbit hole. For example, how do you tell if an array is equal to [0L]? Turns out you can't compare arrays in Hive. So we have a UDF, which chokes if you try to compare array<int> to array<bigint>, which is IMO reasonable behavior because the complexity/corner cases which we've been talking about here (and on point #2) just gets moved into this UDF which is untenable for the large library of UDFs we have. 2.) Yes, I agree that an error would be good in those cases. Can we make that happen? (Unrelated issue but type widening still fails with NULLs; in general I think type widening is uber complicated and prone to all sorts of issues we wouldn't have if we were more type safe throughout.) > Literal bigint > -------------- > > Key: HIVE-2509 > URL: https://issues.apache.org/jira/browse/HIVE-2509 > Project: Hive > Issue Type: New Feature > Reporter: Jonathan Chang > Assignee: Jonathan Chang > Attachments: D15.1.patch, D15.1.patch > > > Typing bigints is a pain because you have to write CAST(0 AS BIGINT). We > should let people type 0L instead. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira