carloea2 opened a new issue, #8255:
URL: https://github.com/apache/texera/issues/8255

   ### Current behavior
   
   The JVM range partitioner truncates double keys to a long before calculating 
their bucket, while the Python partitioner uses the raw fractional value. With 
ranges that cross zero, finite negative fractions can therefore route to 
different workers in the two engines.
   
   Before: key -0.5 in range -10 through 9 routes to A in Python and B in Scala
   
   After: Python truncates the finite key to zero and routes to B
   
   ### Steps to reproduce
   
   On `50321e403c82df299a13deb50a7f9849dd93bdba`, range-shuffle key `-0.5` 
across receivers A and B with minimum -10 and maximum 9.
   
   Observed result:
   
   ```text
   python_index=0 receiver=A scala_truncated_index=1
   ```
   
   ### Expected behavior
   
   Python should truncate finite double keys toward zero before range routing, 
matching Scala, while retaining the existing endpoint behavior for infinities.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to