[jira] [Updated] (HIVE-6243) error in high-precision division for Decimal128

2014-01-27 Thread Eric Hanson (JIRA)

 [ 
https://issues.apache.org/jira/browse/HIVE-6243?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Hanson updated HIVE-6243:
--

   Resolution: Fixed
Fix Version/s: 0.13.0
   Status: Resolved  (was: Patch Available)

Committed to trunk

> error in high-precision division for Decimal128
> ---
>
> Key: HIVE-6243
> URL: https://issues.apache.org/jira/browse/HIVE-6243
> Project: Hive
>  Issue Type: Sub-task
>Reporter: Eric Hanson
>Assignee: Eric Hanson
> Fix For: 0.13.0
>
> Attachments: HIVE-6243.01.patch, HIVE-6243.02.patch, 
> divide-error.01.patch
>
>
> a = 213474114411690
> b = 5062120663
> a * b = 1080631725579042037750470
> (a * b) / b ==> 
>   actual:   251599050984618
>   expected: 213474114411690



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Updated] (HIVE-6243) error in high-precision division for Decimal128

2014-01-23 Thread Eric Hanson (JIRA)

 [ 
https://issues.apache.org/jira/browse/HIVE-6243?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Hanson updated HIVE-6243:
--

Attachment: HIVE-6243.02.patch

Fixed compile error

> error in high-precision division for Decimal128
> ---
>
> Key: HIVE-6243
> URL: https://issues.apache.org/jira/browse/HIVE-6243
> Project: Hive
>  Issue Type: Sub-task
>Reporter: Eric Hanson
>Assignee: Eric Hanson
> Attachments: HIVE-6243.01.patch, HIVE-6243.02.patch, 
> divide-error.01.patch
>
>
> a = 213474114411690
> b = 5062120663
> a * b = 1080631725579042037750470
> (a * b) / b ==> 
>   actual:   251599050984618
>   expected: 213474114411690



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Updated] (HIVE-6243) error in high-precision division for Decimal128

2014-01-21 Thread Eric Hanson (JIRA)

 [ 
https://issues.apache.org/jira/browse/HIVE-6243?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Hanson updated HIVE-6243:
--

Assignee: Eric Hanson
  Status: Patch Available  (was: Open)

> error in high-precision division for Decimal128
> ---
>
> Key: HIVE-6243
> URL: https://issues.apache.org/jira/browse/HIVE-6243
> Project: Hive
>  Issue Type: Sub-task
>Reporter: Eric Hanson
>Assignee: Eric Hanson
> Attachments: HIVE-6243.01.patch, divide-error.01.patch
>
>
> a = 213474114411690
> b = 5062120663
> a * b = 1080631725579042037750470
> (a * b) / b ==> 
>   actual:   251599050984618
>   expected: 213474114411690



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Updated] (HIVE-6243) error in high-precision division for Decimal128

2014-01-21 Thread Eric Hanson (JIRA)

 [ 
https://issues.apache.org/jira/browse/HIVE-6243?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Hanson updated HIVE-6243:
--

Attachment: HIVE-6243.01.patch

Modified Decimal128.divideDestructive to use HiveDecimal division. This is slow 
but fixes the bug in the existing divide method. It also provides the same 
rounding behavior has HiveDecimal for consistency between row-mode and 
vectorized execution.

At some point in the future, another JIRA can be done to both fix the divide 
error in the original Decimal128.divideDestructive() and make it use the same 
rounding behavior as the current HiveDecimal.

> error in high-precision division for Decimal128
> ---
>
> Key: HIVE-6243
> URL: https://issues.apache.org/jira/browse/HIVE-6243
> Project: Hive
>  Issue Type: Sub-task
>Reporter: Eric Hanson
> Attachments: HIVE-6243.01.patch, divide-error.01.patch
>
>
> a = 213474114411690
> b = 5062120663
> a * b = 1080631725579042037750470
> (a * b) / b ==> 
>   actual:   251599050984618
>   expected: 213474114411690



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Updated] (HIVE-6243) error in high-precision division for Decimal128

2014-01-20 Thread Eric Hanson (JIRA)

 [ 
https://issues.apache.org/jira/browse/HIVE-6243?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Hanson updated HIVE-6243:
--

Attachment: divide-error.01.patch

Run TestDecimal128.testKnownPriorErrors() to exhibit the bug.

Stepping through the code shows that a * b gives the correct value, but then 
dividing that by a again does not give the expected result. So, the bug is in 
the division method divideDestructive();

> error in high-precision division for Decimal128
> ---
>
> Key: HIVE-6243
> URL: https://issues.apache.org/jira/browse/HIVE-6243
> Project: Hive
>  Issue Type: Sub-task
>Reporter: Eric Hanson
> Attachments: divide-error.01.patch
>
>
> a = 213474114411690
> b = 5062120663
> a * b = 1080631725579042037750470
> (a * b) / b ==> 
>   actual:   251599050984618
>   expected: 213474114411690



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)


[jira] [Updated] (HIVE-6243) error in high-precision division for Decimal128

2014-01-20 Thread Eric Hanson (JIRA)

 [ 
https://issues.apache.org/jira/browse/HIVE-6243?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Hanson updated HIVE-6243:
--

Description: 
a = 213474114411690
b = 5062120663

a * b = 1080631725579042037750470

(a * b) / b ==> 

  actual:   251599050984618
  expected: 213474114411690

  was:
a = 213474114411690
b = 5062120663

a * b = 1080631725579042037750470

(a * b) / a ==> 

  actual:   251599050984618
  expected: 213474114411690


> error in high-precision division for Decimal128
> ---
>
> Key: HIVE-6243
> URL: https://issues.apache.org/jira/browse/HIVE-6243
> Project: Hive
>  Issue Type: Sub-task
>Reporter: Eric Hanson
>
> a = 213474114411690
> b = 5062120663
> a * b = 1080631725579042037750470
> (a * b) / b ==> 
>   actual:   251599050984618
>   expected: 213474114411690



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)