[ https://issues.apache.org/jira/browse/HIVE-2693?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13490481#comment-13490481 ]
Vikram Dixit K commented on HIVE-2693: -------------------------------------- With this latest patch, I see all the failed tests passing. I have just started a run of the entire test suite just to be sure I did not break anything. There is one issue however. The mysql round function behavior does not seem to be reproducible via the bigdecimal round function. The round function takes a math context object whose scale can only be a positive integer and this results in some inconsistent results. The currently existing double-based method is producing the expected results in accordance with the mysql response. I am not sure which way the coin should drop in this case. Bigdecimal's primary use case is to have higher precision but, the round operation is not entirely compatible with the current mysql standard. As an err on the mysql side strategy, I have taken the approach of sticking to the current double based round api. Based on consensus in the hive community, I can add back the capability to go the big decimal route or if anyone knows how to tune the bigdecimal to round the way mysql does it, I would be happy to correct/use that. Apart from this change, I have also had to refactor the code in FunctionRegistry to be able to choose a 'higher denominator' api over a lower one as alluded to in the comment above. This was required for the logarithm udf function. I have refactored things in such a way that new apis can easily be added that uses the already existing hierarchy without the user having to get caught in these internals. > 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 > Reporter: Carl Steinbach > Assignee: Prasad Mujumdar > Attachments: 2693_fix_all_tests1.patch, 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