Hello Kudu Jenkins,

I'd like you to reexamine a change. Please visit

    http://gerrit.cloudera.org:8080/17376

to look at the new patch set (#2).

Change subject: [util] Add special handling for empty strings in FastHash
......................................................................

[util] Add special handling for empty strings in FastHash

Impala uses special handling for empty strings while hashing
https://github.com/apache/impala/blob/master/be/src/runtime/raw-value.inline.h#L352

This leads to discrepancy between hash values for empty
strings between Impala and Kudu.
This change basically matches the behavior with Impala.
Since FastHash is not used for any persistent data structures
there are no backward compatibility issues with updating the
hashing implemenation.

Discovered bugs in the Java implementation when a negative
byte is promoted to a long and left shifted. Discovery
was because of the magic value for empty strings/buffer.
Thankfully the Java implementation of the FastHash
is not used currently.

Change-Id: Idb2d401ab692decd5bc03b48a96d710546c0039e
---
M java/kudu-client/src/main/java/org/apache/kudu/util/HashUtil.java
M java/kudu-client/src/test/java/org/apache/kudu/util/TestFashHash.java
M src/kudu/client/predicate-test.cc
M src/kudu/util/hash_util-test.cc
M src/kudu/util/hash_util.h
5 files changed, 87 insertions(+), 26 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/76/17376/2
--
To view, visit http://gerrit.cloudera.org:8080/17376
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Idb2d401ab692decd5bc03b48a96d710546c0039e
Gerrit-Change-Number: 17376
Gerrit-PatchSet: 2
Gerrit-Owner: Bankim Bhavsar <ban...@cloudera.com>
Gerrit-Reviewer: Kudu Jenkins (120)

Reply via email to