You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iceberg.apache.org by bl...@apache.org on 2019/07/24 18:50:27 UTC
[incubator-iceberg] branch master updated: Bucket transform: Use
doubleToLongBits instead of doubleToRawLongBits (#303)
This is an automated email from the ASF dual-hosted git repository.
blue pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-iceberg.git
The following commit(s) were added to refs/heads/master by this push:
new 2082aad Bucket transform: Use doubleToLongBits instead of doubleToRawLongBits (#303)
2082aad is described below
commit 2082aad292ce5dbfc2750cef6482ed615c7a3a4d
Author: Li Cheng <bl...@gmail.com>
AuthorDate: Thu Jul 25 02:50:22 2019 +0800
Bucket transform: Use doubleToLongBits instead of doubleToRawLongBits (#303)
---
api/src/main/java/org/apache/iceberg/transforms/Bucket.java | 4 ++--
site/docs/spec.md | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/api/src/main/java/org/apache/iceberg/transforms/Bucket.java b/api/src/main/java/org/apache/iceberg/transforms/Bucket.java
index 3bba9aa..9448d02 100644
--- a/api/src/main/java/org/apache/iceberg/transforms/Bucket.java
+++ b/api/src/main/java/org/apache/iceberg/transforms/Bucket.java
@@ -183,7 +183,7 @@ abstract class Bucket<T> implements Transform<T, Integer> {
@Override
public int hash(Float value) {
- return MURMUR3.hashLong(Double.doubleToRawLongBits((double) value)).asInt();
+ return MURMUR3.hashLong(Double.doubleToLongBits((double) value)).asInt();
}
@Override
@@ -201,7 +201,7 @@ abstract class Bucket<T> implements Transform<T, Integer> {
@Override
public int hash(Double value) {
- return MURMUR3.hashLong(Double.doubleToRawLongBits(value)).asInt();
+ return MURMUR3.hashLong(Double.doubleToLongBits(value)).asInt();
}
@Override
diff --git a/site/docs/spec.md b/site/docs/spec.md
index 5a0a22d..afed11f 100644
--- a/site/docs/spec.md
+++ b/site/docs/spec.md
@@ -508,7 +508,7 @@ The 32-bit hash implementation is 32-bit Murmur3 hash, x86 variant, seeded with
| **`int`** | `hashLong(long(v))` [1] | `34` → `2017239379` |
| **`long`** | `hashBytes(littleEndianBytes(v))` | `34L` → `2017239379` |
| **`float`** | `hashDouble(double(v))` [2] | `1.0F` → `-142385009` |
-| **`double`** | `hashLong(doubleToRawLongBits(v))` | `1.0D` → `-142385009` |
+| **`double`** | `hashLong(doubleToLongBits(v))` | `1.0D` → `-142385009` |
| **`decimal(P,S)`** | `hashBytes(minBigEndian(unscaled(v)))`[3] | `14.20` → `-500754589` |
| **`date`** | `hashInt(daysFromUnixEpoch(v))` | `2017-11-16` → `-653330422` |
| **`time`** | `hashLong(microsecsFromMidnight(v))` | `22:31:08` → `-662762989` |