dbtsai opened a new pull request, #132:
URL: https://github.com/apache/spark-connect-rust/pull/132

   `createDataFrame([(Decimal("1E+3"),)], DecimalType(...))` currently fails 
while parsing the exponent as an integer digit. Parse scientific Decimal 
strings with checked scaling so exactly representable values, including `1E-7` 
at scale 7, produce the correct Arrow Decimal128 cells.
   
   Scientific inputs that lose fractional digits, exceed the declared 
precision, or use a negative target scale are rejected. This keeps the newly 
accepted inputs exact while leaving the existing fixed-point conversion policy 
unchanged. The parser does not allocate or iterate in proportion to an exponent.
   
   Validation: 396 Rust library tests; all integration targets compiled with 
and without `wasm-udf`; 298 tests in the existing CI-selected Python offline 
suite; 24 new candidate integration cases and 12 independent reference 
tuple/pandas IPC checks against frozen Python/PyArrow, including physical 
Decimal128 cells; baseline regression sensitivity; formatting and diff checks. 
No JVM or live Spark server was used. Clippy is unavailable in the offline 
toolchain.
   
   The unchanged frozen benchmark harness was run with five fresh samples per 
client and case for Decimal tuple/pandas inputs and nine guards. All 165 
samples passed. Fixed-point Decimal tuple/pandas construction medians were 
23.01 → 21.67 ms and 25.88 → 24.34 ms; all nine guard ranges overlap. These 
benchmarks use fixed-point values, while scientific correctness is covered by 
the independent IPC tests. Existing fixed-point rounding/precision limitations 
are deliberately unchanged.
   
   This pull request and its description were written by Isaac.
   


-- 
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]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to