The GitHub Actions job "CI" on iceberg-rust.git/main has failed.
Run started by GitHub user liurenjie1024 (triggered by liurenjie1024).

Head commit for run:
76cdf280231bf27ea888de15507d918392f08d44 / Aditya Subrahmanyan 
<[email protected]>
fix: Use correct byte representation for decimal hashing (#1998)

## Which issue does this PR close?

- Closes #1981.

## What changes are included in this PR?

The
[spec](https://iceberg.apache.org/spec/#appendix-b-32-bit-hash-requirements)
states that:
>"Decimal values are hashed using the minimum number of bytes required
to hold the unscaled value as a two's complement big-endian".

Prior to this fix, we would incorrectly consume leading `0xFF` bytes and
hash them. Now, we only consume the bytes starting with the one that is
used to preserve the sign, and everything that follows it.

## Are these changes tested?

Added unit tests for original scenario mentioned in the issue, as well
as some additional cases

Report URL: https://github.com/apache/iceberg-rust/actions/runs/20803287032

With regards,
GitHub Actions via GitBox

Reply via email to