[
https://issues.apache.org/jira/browse/HIVE-2693?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Prasad Mujumdar updated HIVE-2693:
----------------------------------
Attachment: HIVE-2693-10.patch
Here's the updated patch with test updates, additional patches for failed tests
and JDBC support -
There were a few tests still failing, like
clientnegative/invalid_cast_from_binary_[1-6] which required out file updates.
The patch 7&8 removed decimal round function which breaks things like
round(int/int) and also round(decimal), so its added back. Also added JDBC
support for handling decimal type data and metadata which was missing in Josh's
original patch. I will log a separate ticket for HiveServer2 driver once both
the patches are committed.
I think the outstanding issue is the implicit type conversion for UDFs. Firstly
this changes expressions like (int/int) from double to decimal. This could be a
problem of existing clients like ODBC, perl and python which expect this to be
a double. Besides this leads to inconsistent behavior on division by 0, for
example 1.1/0.0 stays NaN but 1/0 throws exception since it gets promoted by
division of decimal which behaves differently from double. The BigDecimal
throws an exception in case of division by 0. I added a couple of patches and
modified the udf_round_2 test so that it returns NULL (which is also MySQL
default behavior). Perhaps we should change the other cases also to from NaN to
NULL and support a configuration option to fall back to old behavior (which can
be done in a separate patch).
@Vikram, we can collaborate on this. You can add your new changes on top of it
and update on reviewboard.
> Add DECIMAL data type
> ---------------------
>
> Key: HIVE-2693
> URL: https://issues.apache.org/jira/browse/HIVE-2693
> Project: Hive
> Issue Type: New Feature
> Components: Query Processor, Types
> Affects Versions: 0.10.0
> Reporter: Carl Steinbach
> Assignee: Prasad Mujumdar
> Attachments: 2693_7.patch, 2693_8.patch, 2693_fix_all_tests1.patch,
> HIVE-2693-10.patch, HIVE-2693-1.patch.txt, HIVE-2693-all.patch,
> HIVE-2693-fix.patch, HIVE-2693.patch, HIVE-2693-take3.patch,
> HIVE-2693-take4.patch
>
>
> Add support for the DECIMAL data type. HIVE-2272 (TIMESTAMP) provides a nice
> template for how to do this.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira