Releases: dynatrace-oss/hash4j
Releases · dynatrace-oss/hash4j
v0.9.0
New features:
- implementation of ImoHash algorithm useful for file hashing
- implementation of JumpHash for distributed agreement
- added
HashValue128.toByteArray
andHashValue128.toString
Bug fixes:
- fixed bug in martingale estimator for UltraLogLog affecting distinct counts >= 10^15
- fixed bug in ML estimator for HyperLogLog affecting distinct counts >= 10^15
Incompatible changes:
- removed
HyperLogLog.SMALL_RANGE_CORRECTED_RAW_ESTIMATOR
(useHyperLogLog.CORRECTED_RAW_ESTIMATOR
instead)
Full Changelog: v0.8.0...v0.9.0
v0.8.0
v0.7.2
v0.7.1
v0.7.0
New features:
- new
HyperLogLog
implementation - added
PackedArray.update(byte[], int, long, LongBinaryOperator)
- added
PackedArray.readIterator(byte[], int)
- added
Hasher.getHashBitSize()
- added
HashStream.reset()
Improvements:
- faster
Hasher.hashCharsToLong(CharSequence)
implementations
Incompatible changes:
- made
HashStream
interface package-private, useHashStream32
,HashStream64
,HashStream128
instead - made
Hasher
interface package-private, useHasher32
,Hasher64
,Hasher128
interfaces instead - eliminated
HashSink.putUnorderedIterable(Iterable, HashFunnel, Supplier)
, useHashSink.putUnorderedIterable(Iterable, HashFunnel, Hasher64)
instead
v0.6.2
v0.6.1
v0.6.0
v0.5.0
v0.4.0
New features:
- Streaming functionality:
Hasher.hashStream()
opens a new hash stream - New convenience functions:
HashSink
andHashStream
define various put methods for native arrays- Direct hashing of char sequences:
Hasher32.hashCharsToInt
Hasher64.hashCharsToLong
Hasher128.hashCharsTo128Bits
Bug fixes:
WyhashFinal3.putBytes
gave wrong results for nonzero offsets