[
https://issues.apache.org/jira/browse/HIVE-20204?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jason Dere updated HIVE-20204:
------------------------------
Attachment: HIVE-20204.3.patch
> Type conversion during IN () comparisons is using different rules from other
> comparison operations
> --------------------------------------------------------------------------------------------------
>
> Key: HIVE-20204
> URL: https://issues.apache.org/jira/browse/HIVE-20204
> Project: Hive
> Issue Type: Bug
> Components: Types
> Reporter: Jason Dere
> Assignee: Jason Dere
> Priority: Major
> Attachments: HIVE-20204.1.patch, HIVE-20204.2.patch,
> HIVE-20204.3.patch
>
>
> Noticed this while looking at HIVE-20082.
> The type conversion done during GenericUDFIn (via
> ReturnObjectInspectorResolver) uses FunctionRegistry.getCommonClass(),
> whereas the other comparison operators (=, <, >, <=, >=) use
> FunctionRegistry.getCommonClassForComparison(). As a result, dec_column IN
> ('1.1', '2.2') compares the values as strings, whereas dec_column = '1.1'
> would compare the values as doubles. This makes a difference for HIVE-20082
> since it is related to changing the 0-padding during decimal-to-string
> conversions.
> cc [~ashutoshc]
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)