Hi all, Java's t-digest could produce different serialized sketches from identical input, because its centroid sort wasn't actually stable (random pivot). PR https://github.com/apache/datasketches-java/pull/779 fixes this by sorting centroids by mean ascending, then weight ascending, and by using StrictMath.log. The result should be byte-identical sketches on any Java 17+ JVM. The change is backward compatible, and the serialization format is unchanged.
The other languages don't need to do anything. Any that want their sort to also ignore input order should adopt exactly the same rule. Byte-identical results across languages are still not achievable for t-digest; the issue below explains why. Full write-up: https://github.com/apache/datasketches-java/issues/780 Comments welcome, here or on the issue. Unless anyone objects, I plan to merge the Java PR once the two small requested changes are in. Lee --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
