hive-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Owen O'Malley (JIRA)" <>
Subject [jira] [Commented] (HIVE-15335) Fast Decimal
Date Wed, 21 Dec 2016 18:31:58 GMT


Owen O'Malley commented on HIVE-15335:

Review comments:
* Thank you for addressing my API compatibility concerns.
* Do you have benchmark numbers for the new and old implementation? It should be faster, but
it is worth looking at the numbers before making such a huge change to Hive.
* The test cases in storage-api have a lot of commented out printlns, those should either
be removed or converted into LOG.debug.
* The tests in VersionTestBase should provide a message rather than just call fail().
* There is a commented out fail. That should be removed or uncommented.
* It would be great to have a fast path for decimals where the precision is less than or equal
to 18, that fit into a long. Based on my casual observation more than 90% of Hive schemas
with decimals fit. What would be the right approach to fit that in as a later patch?

> Fast Decimal
> ------------
>                 Key: HIVE-15335
>                 URL:
>             Project: Hive
>          Issue Type: Bug
>          Components: Hive
>            Reporter: Matt McCline
>            Assignee: Matt McCline
>            Priority: Critical
>         Attachments: HIVE-15335.01.patch, HIVE-15335.02.patch, HIVE-15335.03.patch, HIVE-15335.04.patch,
HIVE-15335.05.patch, HIVE-15335.06.patch, HIVE-15335.07.patch, HIVE-15335.08.patch, HIVE-15335.09.patch,
HIVE-15335.091.patch, HIVE-15335.092.patch, HIVE-15335.093.patch, HIVE-15335.094.patch, HIVE-15335.095.patch,
HIVE-15335.096.patch, HIVE-15335.097.patch, HIVE-15335.098.patch, HIVE-15335.099.patch, HIVE-15335.0991.patch
> Replace HiveDecimal implementation that currently represents the decimal internally as
a BigDecimal with a faster version that does not allocate extra objects
> Replace HiveDecimalWritable implementation with a faster version that has new mutable*
calls (e.g. mutableAdd, mutableEnforcePrecisionScale, etc) and stores the result as a fast
decimal instead of a slow byte array containing a serialized BigInteger.
> Provide faster ways to serialize/deserialize decimals.

This message was sent by Atlassian JIRA

View raw message