This is an automated email from the ASF dual-hosted git repository.

github-actions[bot] pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/datafusion-comet.git


The following commit(s) were added to refs/heads/asf-site by this push:
     new aaf0b60b97 Publish built docs triggered by 
671a8dd9ee4c4f5bf44f3096ab83b2b30801fcb8
aaf0b60b97 is described below

commit aaf0b60b97ea44567966d8bd24fc5422173c2d25
Author: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
AuthorDate: Sat Aug 1 20:12:21 2026 +0000

    Publish built docs triggered by 671a8dd9ee4c4f5bf44f3096ab83b2b30801fcb8
---
 .../expression-audits/conversion_funcs.md.txt      |  2 +-
 .../expressions/spark-3.4/cast.md.txt              | 24 +++++++++++-----------
 .../expressions/spark-3.5/cast.md.txt              | 24 +++++++++++-----------
 .../expressions/spark-4.0/cast.md.txt              | 24 +++++++++++-----------
 .../expressions/spark-4.1/cast.md.txt              | 24 +++++++++++-----------
 .../expression-audits/conversion_funcs.html        |  2 +-
 searchindex.js                                     |  2 +-
 .../compatibility/expressions/spark-3.4/cast.html  | 24 +++++++++++-----------
 .../compatibility/expressions/spark-3.5/cast.html  | 24 +++++++++++-----------
 .../compatibility/expressions/spark-4.0/cast.html  | 24 +++++++++++-----------
 .../compatibility/expressions/spark-4.1/cast.html  | 24 +++++++++++-----------
 11 files changed, 99 insertions(+), 99 deletions(-)

diff --git 
a/_sources/contributor-guide/expression-audits/conversion_funcs.md.txt 
b/_sources/contributor-guide/expression-audits/conversion_funcs.md.txt
index c11d441a23..64e01822dc 100644
--- a/_sources/contributor-guide/expression-audits/conversion_funcs.md.txt
+++ b/_sources/contributor-guide/expression-audits/conversion_funcs.md.txt
@@ -33,7 +33,7 @@
   - Spark 4.1 `TimeType` casts have no explicit `Unsupported` arm; they fall 
back implicitly but do not appear in the auto-generated compatibility doc 
([#4490](https://github.com/apache/datafusion-comet/issues/4490)).
   - `CAST(<map> AS <map>)` runs natively via `cast_map_to_map`; 
`CometCast.isSupported` recurses into the key and value casts, so the map arm 
inherits whichever support level the inner casts report.
   - `spark.sql.legacy.castComplexTypesToString.enabled=true` is `Unsupported` 
for any array/map/struct-to-string cast, so those casts fall back to Spark 
while the flag is on. Comet only implements the default (`{}`-wrapped, 
NULL-rendering) formatting. The flag is internal from Spark 4.0 onward and 
defaults to false.
-  - `CAST(<float|double> AS DECIMAL)` rounding may differ from Spark 
(`Incompatible`, gated by `spark.comet.expression.Cast.allowIncompatible`, 
tracked at [#1371](https://github.com/apache/datafusion-comet/issues/1371)).
+  - `CAST(<float|double> AS DECIMAL)` is `Compatible`: it rounds the shortest 
decimal string form of the value (matching Spark's `Double.toString` + 
`BigDecimal.setScale(HALF_UP)` path) rather than the binary value, taking a 
guarded binary fast path for values provably far from a rounding tie. NaN and 
infinity are null even in ANSI mode, matching Spark, which swallows the 
`NumberFormatException` from `Decimal(double)` before the ANSI overflow check. 
The support level carries a note: `Dou [...]
 - Spark registers the type-name conversion functions (`bigint`, `binary`, 
`boolean`, `date`, `decimal`, `double`, `float`, `int`, `smallint`, `string`, 
`timestamp`, `tinyint`) as cast aliases. Each lowers to the same `Cast` node, 
so Comet handles it via the `cast` implementation with the same compatibility 
profile.
 - Performance (tuned 2026-07-14, PR 
[#4920](https://github.com/apache/datafusion-comet/pull/4920)): narrowing 
integer casts (`spark_cast_int_to_int`) map the values buffer in a single pass 
with Arrow `unary`/`try_unary` and carry the null buffer over untouched, 
replacing an element-by-element `Option`/`Result` iterator-collect. Up to 100x 
faster on narrowing casts. Benchmark: `benches/cast_numeric.rs`.
 - Performance (tuned 2026-07-15, PR 
[#4940](https://github.com/apache/datafusion-comet/pull/4940)): 
float/double-to-decimal casts (`cast_floating_point_to_decimal128`) now convert 
in a single vectorized `unary_opt` pass that maps out-of-range values (NaN, 
infinity, precision overflow) to null, replacing the per-element 
`Decimal128Builder` loop. ANSI raises via an O(1) null-count check plus a rare 
element-wise rescan. 15-36% faster with no regression on any shape. Benchmark: 
`benches/cast [...]
diff --git 
a/_sources/user-guide/latest/compatibility/expressions/spark-3.4/cast.md.txt 
b/_sources/user-guide/latest/compatibility/expressions/spark-3.4/cast.md.txt
index 418be980d5..9c1bd36fed 100644
--- a/_sources/user-guide/latest/compatibility/expressions/spark-3.4/cast.md.txt
+++ b/_sources/user-guide/latest/compatibility/expressions/spark-3.4/cast.md.txt
@@ -174,8 +174,8 @@ as `"1.23E+4"`).
 | byte | C | C | - | N/A | C | C | C | C | C | C | C | C | N/A |
 | date | N/A | C | C | - | C | C | C | C | C | C | C | C | C |
 | decimal | N/A | C | C | N/A | - | C | C | C | C | C | C | C | N/A |
-| double | N/A | C | C | N/A | I | - | C | C | C | C | C | C | N/A |
-| float | N/A | C | C | N/A | I | C | - | C | C | C | C | C | N/A |
+| double | N/A | C | C | N/A | C | - | C | C | C | C | C | C | N/A |
+| float | N/A | C | C | N/A | C | C | - | C | C | C | C | C | N/A |
 | integer | C | C | C | N/A | C | C | C | - | C | C | C | C | N/A |
 | long | C | C | C | N/A | C | C | C | C | - | C | C | C | N/A |
 | short | C | C | C | N/A | C | C | C | C | C | - | C | C | N/A |
@@ -184,9 +184,9 @@ as `"1.23E+4"`).
 | timestamp_ntz | N/A | N/A | N/A | C | N/A | N/A | N/A | N/A | N/A | N/A | C 
| C | - |
 
 **Notes:**
-- **double -> decimal**: There can be rounding differences
+- **double -> decimal**: Rounding matches Spark on JDK 19 and later. On older 
JDKs, Spark's own result may differ for values whose shortest decimal form 
falls exactly on a rounding tie
 - **double -> string**: String formatting can differ for floating-point values 
near precision limits or when scientific notation is used
-- **float -> decimal**: There can be rounding differences
+- **float -> decimal**: Rounding matches Spark on JDK 19 and later. On older 
JDKs, Spark's own result may differ for values whose shortest decimal form 
falls exactly on a rounding tie
 - **float -> string**: String formatting can differ for floating-point values 
near precision limits or when scientific notation is used
 - **string -> date**: Only supports years between 262143 BC and 262142 AD
 <!-- prettier-ignore-end -->
@@ -203,8 +203,8 @@ as `"1.23E+4"`).
 | byte | U | C | - | N/A | C | C | C | C | C | C | C | C | N/A |
 | date | N/A | U | U | - | U | U | U | U | U | U | C | C | C |
 | decimal | N/A | C | C | N/A | - | C | C | C | C | C | C | C | N/A |
-| double | N/A | C | C | N/A | I | - | C | C | C | C | C | C | N/A |
-| float | N/A | C | C | N/A | I | C | - | C | C | C | C | C | N/A |
+| double | N/A | C | C | N/A | C | - | C | C | C | C | C | C | N/A |
+| float | N/A | C | C | N/A | C | C | - | C | C | C | C | C | N/A |
 | integer | U | C | C | N/A | C | C | C | - | C | C | C | C | N/A |
 | long | U | C | C | N/A | C | C | C | C | - | C | C | C | N/A |
 | short | U | C | C | N/A | C | C | C | C | C | - | C | C | N/A |
@@ -213,9 +213,9 @@ as `"1.23E+4"`).
 | timestamp_ntz | N/A | N/A | N/A | C | N/A | N/A | N/A | N/A | N/A | N/A | C 
| C | - |
 
 **Notes:**
-- **double -> decimal**: There can be rounding differences
+- **double -> decimal**: Rounding matches Spark on JDK 19 and later. On older 
JDKs, Spark's own result may differ for values whose shortest decimal form 
falls exactly on a rounding tie
 - **double -> string**: String formatting can differ for floating-point values 
near precision limits or when scientific notation is used
-- **float -> decimal**: There can be rounding differences
+- **float -> decimal**: Rounding matches Spark on JDK 19 and later. On older 
JDKs, Spark's own result may differ for values whose shortest decimal form 
falls exactly on a rounding tie
 - **float -> string**: String formatting can differ for floating-point values 
near precision limits or when scientific notation is used
 - **string -> date**: Only supports years between 262143 BC and 262142 AD
 <!-- prettier-ignore-end -->
@@ -232,8 +232,8 @@ as `"1.23E+4"`).
 | byte | U | C | - | N/A | C | C | C | C | C | C | C | C | N/A |
 | date | N/A | U | U | - | U | U | U | U | U | U | C | C | C |
 | decimal | N/A | C | C | N/A | - | C | C | C | C | C | C | C | N/A |
-| double | N/A | C | C | N/A | I | - | C | C | C | C | C | C | N/A |
-| float | N/A | C | C | N/A | I | C | - | C | C | C | C | C | N/A |
+| double | N/A | C | C | N/A | C | - | C | C | C | C | C | C | N/A |
+| float | N/A | C | C | N/A | C | C | - | C | C | C | C | C | N/A |
 | integer | U | C | C | N/A | C | C | C | - | C | C | C | C | N/A |
 | long | U | C | C | N/A | C | C | C | C | - | C | C | C | N/A |
 | short | U | C | C | N/A | C | C | C | C | C | - | C | C | N/A |
@@ -242,9 +242,9 @@ as `"1.23E+4"`).
 | timestamp_ntz | N/A | N/A | N/A | C | N/A | N/A | N/A | N/A | N/A | N/A | C 
| C | - |
 
 **Notes:**
-- **double -> decimal**: There can be rounding differences
+- **double -> decimal**: Rounding matches Spark on JDK 19 and later. On older 
JDKs, Spark's own result may differ for values whose shortest decimal form 
falls exactly on a rounding tie
 - **double -> string**: String formatting can differ for floating-point values 
near precision limits or when scientific notation is used
-- **float -> decimal**: There can be rounding differences
+- **float -> decimal**: Rounding matches Spark on JDK 19 and later. On older 
JDKs, Spark's own result may differ for values whose shortest decimal form 
falls exactly on a rounding tie
 - **float -> string**: String formatting can differ for floating-point values 
near precision limits or when scientific notation is used
 - **string -> date**: Only supports years between 262143 BC and 262142 AD
 <!-- prettier-ignore-end -->
diff --git 
a/_sources/user-guide/latest/compatibility/expressions/spark-3.5/cast.md.txt 
b/_sources/user-guide/latest/compatibility/expressions/spark-3.5/cast.md.txt
index 418be980d5..9c1bd36fed 100644
--- a/_sources/user-guide/latest/compatibility/expressions/spark-3.5/cast.md.txt
+++ b/_sources/user-guide/latest/compatibility/expressions/spark-3.5/cast.md.txt
@@ -174,8 +174,8 @@ as `"1.23E+4"`).
 | byte | C | C | - | N/A | C | C | C | C | C | C | C | C | N/A |
 | date | N/A | C | C | - | C | C | C | C | C | C | C | C | C |
 | decimal | N/A | C | C | N/A | - | C | C | C | C | C | C | C | N/A |
-| double | N/A | C | C | N/A | I | - | C | C | C | C | C | C | N/A |
-| float | N/A | C | C | N/A | I | C | - | C | C | C | C | C | N/A |
+| double | N/A | C | C | N/A | C | - | C | C | C | C | C | C | N/A |
+| float | N/A | C | C | N/A | C | C | - | C | C | C | C | C | N/A |
 | integer | C | C | C | N/A | C | C | C | - | C | C | C | C | N/A |
 | long | C | C | C | N/A | C | C | C | C | - | C | C | C | N/A |
 | short | C | C | C | N/A | C | C | C | C | C | - | C | C | N/A |
@@ -184,9 +184,9 @@ as `"1.23E+4"`).
 | timestamp_ntz | N/A | N/A | N/A | C | N/A | N/A | N/A | N/A | N/A | N/A | C 
| C | - |
 
 **Notes:**
-- **double -> decimal**: There can be rounding differences
+- **double -> decimal**: Rounding matches Spark on JDK 19 and later. On older 
JDKs, Spark's own result may differ for values whose shortest decimal form 
falls exactly on a rounding tie
 - **double -> string**: String formatting can differ for floating-point values 
near precision limits or when scientific notation is used
-- **float -> decimal**: There can be rounding differences
+- **float -> decimal**: Rounding matches Spark on JDK 19 and later. On older 
JDKs, Spark's own result may differ for values whose shortest decimal form 
falls exactly on a rounding tie
 - **float -> string**: String formatting can differ for floating-point values 
near precision limits or when scientific notation is used
 - **string -> date**: Only supports years between 262143 BC and 262142 AD
 <!-- prettier-ignore-end -->
@@ -203,8 +203,8 @@ as `"1.23E+4"`).
 | byte | U | C | - | N/A | C | C | C | C | C | C | C | C | N/A |
 | date | N/A | U | U | - | U | U | U | U | U | U | C | C | C |
 | decimal | N/A | C | C | N/A | - | C | C | C | C | C | C | C | N/A |
-| double | N/A | C | C | N/A | I | - | C | C | C | C | C | C | N/A |
-| float | N/A | C | C | N/A | I | C | - | C | C | C | C | C | N/A |
+| double | N/A | C | C | N/A | C | - | C | C | C | C | C | C | N/A |
+| float | N/A | C | C | N/A | C | C | - | C | C | C | C | C | N/A |
 | integer | U | C | C | N/A | C | C | C | - | C | C | C | C | N/A |
 | long | U | C | C | N/A | C | C | C | C | - | C | C | C | N/A |
 | short | U | C | C | N/A | C | C | C | C | C | - | C | C | N/A |
@@ -213,9 +213,9 @@ as `"1.23E+4"`).
 | timestamp_ntz | N/A | N/A | N/A | C | N/A | N/A | N/A | N/A | N/A | N/A | C 
| C | - |
 
 **Notes:**
-- **double -> decimal**: There can be rounding differences
+- **double -> decimal**: Rounding matches Spark on JDK 19 and later. On older 
JDKs, Spark's own result may differ for values whose shortest decimal form 
falls exactly on a rounding tie
 - **double -> string**: String formatting can differ for floating-point values 
near precision limits or when scientific notation is used
-- **float -> decimal**: There can be rounding differences
+- **float -> decimal**: Rounding matches Spark on JDK 19 and later. On older 
JDKs, Spark's own result may differ for values whose shortest decimal form 
falls exactly on a rounding tie
 - **float -> string**: String formatting can differ for floating-point values 
near precision limits or when scientific notation is used
 - **string -> date**: Only supports years between 262143 BC and 262142 AD
 <!-- prettier-ignore-end -->
@@ -232,8 +232,8 @@ as `"1.23E+4"`).
 | byte | U | C | - | N/A | C | C | C | C | C | C | C | C | N/A |
 | date | N/A | U | U | - | U | U | U | U | U | U | C | C | C |
 | decimal | N/A | C | C | N/A | - | C | C | C | C | C | C | C | N/A |
-| double | N/A | C | C | N/A | I | - | C | C | C | C | C | C | N/A |
-| float | N/A | C | C | N/A | I | C | - | C | C | C | C | C | N/A |
+| double | N/A | C | C | N/A | C | - | C | C | C | C | C | C | N/A |
+| float | N/A | C | C | N/A | C | C | - | C | C | C | C | C | N/A |
 | integer | U | C | C | N/A | C | C | C | - | C | C | C | C | N/A |
 | long | U | C | C | N/A | C | C | C | C | - | C | C | C | N/A |
 | short | U | C | C | N/A | C | C | C | C | C | - | C | C | N/A |
@@ -242,9 +242,9 @@ as `"1.23E+4"`).
 | timestamp_ntz | N/A | N/A | N/A | C | N/A | N/A | N/A | N/A | N/A | N/A | C 
| C | - |
 
 **Notes:**
-- **double -> decimal**: There can be rounding differences
+- **double -> decimal**: Rounding matches Spark on JDK 19 and later. On older 
JDKs, Spark's own result may differ for values whose shortest decimal form 
falls exactly on a rounding tie
 - **double -> string**: String formatting can differ for floating-point values 
near precision limits or when scientific notation is used
-- **float -> decimal**: There can be rounding differences
+- **float -> decimal**: Rounding matches Spark on JDK 19 and later. On older 
JDKs, Spark's own result may differ for values whose shortest decimal form 
falls exactly on a rounding tie
 - **float -> string**: String formatting can differ for floating-point values 
near precision limits or when scientific notation is used
 - **string -> date**: Only supports years between 262143 BC and 262142 AD
 <!-- prettier-ignore-end -->
diff --git 
a/_sources/user-guide/latest/compatibility/expressions/spark-4.0/cast.md.txt 
b/_sources/user-guide/latest/compatibility/expressions/spark-4.0/cast.md.txt
index 418be980d5..9c1bd36fed 100644
--- a/_sources/user-guide/latest/compatibility/expressions/spark-4.0/cast.md.txt
+++ b/_sources/user-guide/latest/compatibility/expressions/spark-4.0/cast.md.txt
@@ -174,8 +174,8 @@ as `"1.23E+4"`).
 | byte | C | C | - | N/A | C | C | C | C | C | C | C | C | N/A |
 | date | N/A | C | C | - | C | C | C | C | C | C | C | C | C |
 | decimal | N/A | C | C | N/A | - | C | C | C | C | C | C | C | N/A |
-| double | N/A | C | C | N/A | I | - | C | C | C | C | C | C | N/A |
-| float | N/A | C | C | N/A | I | C | - | C | C | C | C | C | N/A |
+| double | N/A | C | C | N/A | C | - | C | C | C | C | C | C | N/A |
+| float | N/A | C | C | N/A | C | C | - | C | C | C | C | C | N/A |
 | integer | C | C | C | N/A | C | C | C | - | C | C | C | C | N/A |
 | long | C | C | C | N/A | C | C | C | C | - | C | C | C | N/A |
 | short | C | C | C | N/A | C | C | C | C | C | - | C | C | N/A |
@@ -184,9 +184,9 @@ as `"1.23E+4"`).
 | timestamp_ntz | N/A | N/A | N/A | C | N/A | N/A | N/A | N/A | N/A | N/A | C 
| C | - |
 
 **Notes:**
-- **double -> decimal**: There can be rounding differences
+- **double -> decimal**: Rounding matches Spark on JDK 19 and later. On older 
JDKs, Spark's own result may differ for values whose shortest decimal form 
falls exactly on a rounding tie
 - **double -> string**: String formatting can differ for floating-point values 
near precision limits or when scientific notation is used
-- **float -> decimal**: There can be rounding differences
+- **float -> decimal**: Rounding matches Spark on JDK 19 and later. On older 
JDKs, Spark's own result may differ for values whose shortest decimal form 
falls exactly on a rounding tie
 - **float -> string**: String formatting can differ for floating-point values 
near precision limits or when scientific notation is used
 - **string -> date**: Only supports years between 262143 BC and 262142 AD
 <!-- prettier-ignore-end -->
@@ -203,8 +203,8 @@ as `"1.23E+4"`).
 | byte | U | C | - | N/A | C | C | C | C | C | C | C | C | N/A |
 | date | N/A | U | U | - | U | U | U | U | U | U | C | C | C |
 | decimal | N/A | C | C | N/A | - | C | C | C | C | C | C | C | N/A |
-| double | N/A | C | C | N/A | I | - | C | C | C | C | C | C | N/A |
-| float | N/A | C | C | N/A | I | C | - | C | C | C | C | C | N/A |
+| double | N/A | C | C | N/A | C | - | C | C | C | C | C | C | N/A |
+| float | N/A | C | C | N/A | C | C | - | C | C | C | C | C | N/A |
 | integer | U | C | C | N/A | C | C | C | - | C | C | C | C | N/A |
 | long | U | C | C | N/A | C | C | C | C | - | C | C | C | N/A |
 | short | U | C | C | N/A | C | C | C | C | C | - | C | C | N/A |
@@ -213,9 +213,9 @@ as `"1.23E+4"`).
 | timestamp_ntz | N/A | N/A | N/A | C | N/A | N/A | N/A | N/A | N/A | N/A | C 
| C | - |
 
 **Notes:**
-- **double -> decimal**: There can be rounding differences
+- **double -> decimal**: Rounding matches Spark on JDK 19 and later. On older 
JDKs, Spark's own result may differ for values whose shortest decimal form 
falls exactly on a rounding tie
 - **double -> string**: String formatting can differ for floating-point values 
near precision limits or when scientific notation is used
-- **float -> decimal**: There can be rounding differences
+- **float -> decimal**: Rounding matches Spark on JDK 19 and later. On older 
JDKs, Spark's own result may differ for values whose shortest decimal form 
falls exactly on a rounding tie
 - **float -> string**: String formatting can differ for floating-point values 
near precision limits or when scientific notation is used
 - **string -> date**: Only supports years between 262143 BC and 262142 AD
 <!-- prettier-ignore-end -->
@@ -232,8 +232,8 @@ as `"1.23E+4"`).
 | byte | U | C | - | N/A | C | C | C | C | C | C | C | C | N/A |
 | date | N/A | U | U | - | U | U | U | U | U | U | C | C | C |
 | decimal | N/A | C | C | N/A | - | C | C | C | C | C | C | C | N/A |
-| double | N/A | C | C | N/A | I | - | C | C | C | C | C | C | N/A |
-| float | N/A | C | C | N/A | I | C | - | C | C | C | C | C | N/A |
+| double | N/A | C | C | N/A | C | - | C | C | C | C | C | C | N/A |
+| float | N/A | C | C | N/A | C | C | - | C | C | C | C | C | N/A |
 | integer | U | C | C | N/A | C | C | C | - | C | C | C | C | N/A |
 | long | U | C | C | N/A | C | C | C | C | - | C | C | C | N/A |
 | short | U | C | C | N/A | C | C | C | C | C | - | C | C | N/A |
@@ -242,9 +242,9 @@ as `"1.23E+4"`).
 | timestamp_ntz | N/A | N/A | N/A | C | N/A | N/A | N/A | N/A | N/A | N/A | C 
| C | - |
 
 **Notes:**
-- **double -> decimal**: There can be rounding differences
+- **double -> decimal**: Rounding matches Spark on JDK 19 and later. On older 
JDKs, Spark's own result may differ for values whose shortest decimal form 
falls exactly on a rounding tie
 - **double -> string**: String formatting can differ for floating-point values 
near precision limits or when scientific notation is used
-- **float -> decimal**: There can be rounding differences
+- **float -> decimal**: Rounding matches Spark on JDK 19 and later. On older 
JDKs, Spark's own result may differ for values whose shortest decimal form 
falls exactly on a rounding tie
 - **float -> string**: String formatting can differ for floating-point values 
near precision limits or when scientific notation is used
 - **string -> date**: Only supports years between 262143 BC and 262142 AD
 <!-- prettier-ignore-end -->
diff --git 
a/_sources/user-guide/latest/compatibility/expressions/spark-4.1/cast.md.txt 
b/_sources/user-guide/latest/compatibility/expressions/spark-4.1/cast.md.txt
index 418be980d5..9c1bd36fed 100644
--- a/_sources/user-guide/latest/compatibility/expressions/spark-4.1/cast.md.txt
+++ b/_sources/user-guide/latest/compatibility/expressions/spark-4.1/cast.md.txt
@@ -174,8 +174,8 @@ as `"1.23E+4"`).
 | byte | C | C | - | N/A | C | C | C | C | C | C | C | C | N/A |
 | date | N/A | C | C | - | C | C | C | C | C | C | C | C | C |
 | decimal | N/A | C | C | N/A | - | C | C | C | C | C | C | C | N/A |
-| double | N/A | C | C | N/A | I | - | C | C | C | C | C | C | N/A |
-| float | N/A | C | C | N/A | I | C | - | C | C | C | C | C | N/A |
+| double | N/A | C | C | N/A | C | - | C | C | C | C | C | C | N/A |
+| float | N/A | C | C | N/A | C | C | - | C | C | C | C | C | N/A |
 | integer | C | C | C | N/A | C | C | C | - | C | C | C | C | N/A |
 | long | C | C | C | N/A | C | C | C | C | - | C | C | C | N/A |
 | short | C | C | C | N/A | C | C | C | C | C | - | C | C | N/A |
@@ -184,9 +184,9 @@ as `"1.23E+4"`).
 | timestamp_ntz | N/A | N/A | N/A | C | N/A | N/A | N/A | N/A | N/A | N/A | C 
| C | - |
 
 **Notes:**
-- **double -> decimal**: There can be rounding differences
+- **double -> decimal**: Rounding matches Spark on JDK 19 and later. On older 
JDKs, Spark's own result may differ for values whose shortest decimal form 
falls exactly on a rounding tie
 - **double -> string**: String formatting can differ for floating-point values 
near precision limits or when scientific notation is used
-- **float -> decimal**: There can be rounding differences
+- **float -> decimal**: Rounding matches Spark on JDK 19 and later. On older 
JDKs, Spark's own result may differ for values whose shortest decimal form 
falls exactly on a rounding tie
 - **float -> string**: String formatting can differ for floating-point values 
near precision limits or when scientific notation is used
 - **string -> date**: Only supports years between 262143 BC and 262142 AD
 <!-- prettier-ignore-end -->
@@ -203,8 +203,8 @@ as `"1.23E+4"`).
 | byte | U | C | - | N/A | C | C | C | C | C | C | C | C | N/A |
 | date | N/A | U | U | - | U | U | U | U | U | U | C | C | C |
 | decimal | N/A | C | C | N/A | - | C | C | C | C | C | C | C | N/A |
-| double | N/A | C | C | N/A | I | - | C | C | C | C | C | C | N/A |
-| float | N/A | C | C | N/A | I | C | - | C | C | C | C | C | N/A |
+| double | N/A | C | C | N/A | C | - | C | C | C | C | C | C | N/A |
+| float | N/A | C | C | N/A | C | C | - | C | C | C | C | C | N/A |
 | integer | U | C | C | N/A | C | C | C | - | C | C | C | C | N/A |
 | long | U | C | C | N/A | C | C | C | C | - | C | C | C | N/A |
 | short | U | C | C | N/A | C | C | C | C | C | - | C | C | N/A |
@@ -213,9 +213,9 @@ as `"1.23E+4"`).
 | timestamp_ntz | N/A | N/A | N/A | C | N/A | N/A | N/A | N/A | N/A | N/A | C 
| C | - |
 
 **Notes:**
-- **double -> decimal**: There can be rounding differences
+- **double -> decimal**: Rounding matches Spark on JDK 19 and later. On older 
JDKs, Spark's own result may differ for values whose shortest decimal form 
falls exactly on a rounding tie
 - **double -> string**: String formatting can differ for floating-point values 
near precision limits or when scientific notation is used
-- **float -> decimal**: There can be rounding differences
+- **float -> decimal**: Rounding matches Spark on JDK 19 and later. On older 
JDKs, Spark's own result may differ for values whose shortest decimal form 
falls exactly on a rounding tie
 - **float -> string**: String formatting can differ for floating-point values 
near precision limits or when scientific notation is used
 - **string -> date**: Only supports years between 262143 BC and 262142 AD
 <!-- prettier-ignore-end -->
@@ -232,8 +232,8 @@ as `"1.23E+4"`).
 | byte | U | C | - | N/A | C | C | C | C | C | C | C | C | N/A |
 | date | N/A | U | U | - | U | U | U | U | U | U | C | C | C |
 | decimal | N/A | C | C | N/A | - | C | C | C | C | C | C | C | N/A |
-| double | N/A | C | C | N/A | I | - | C | C | C | C | C | C | N/A |
-| float | N/A | C | C | N/A | I | C | - | C | C | C | C | C | N/A |
+| double | N/A | C | C | N/A | C | - | C | C | C | C | C | C | N/A |
+| float | N/A | C | C | N/A | C | C | - | C | C | C | C | C | N/A |
 | integer | U | C | C | N/A | C | C | C | - | C | C | C | C | N/A |
 | long | U | C | C | N/A | C | C | C | C | - | C | C | C | N/A |
 | short | U | C | C | N/A | C | C | C | C | C | - | C | C | N/A |
@@ -242,9 +242,9 @@ as `"1.23E+4"`).
 | timestamp_ntz | N/A | N/A | N/A | C | N/A | N/A | N/A | N/A | N/A | N/A | C 
| C | - |
 
 **Notes:**
-- **double -> decimal**: There can be rounding differences
+- **double -> decimal**: Rounding matches Spark on JDK 19 and later. On older 
JDKs, Spark's own result may differ for values whose shortest decimal form 
falls exactly on a rounding tie
 - **double -> string**: String formatting can differ for floating-point values 
near precision limits or when scientific notation is used
-- **float -> decimal**: There can be rounding differences
+- **float -> decimal**: Rounding matches Spark on JDK 19 and later. On older 
JDKs, Spark's own result may differ for values whose shortest decimal form 
falls exactly on a rounding tie
 - **float -> string**: String formatting can differ for floating-point values 
near precision limits or when scientific notation is used
 - **string -> date**: Only supports years between 262143 BC and 262142 AD
 <!-- prettier-ignore-end -->
diff --git a/contributor-guide/expression-audits/conversion_funcs.html 
b/contributor-guide/expression-audits/conversion_funcs.html
index c48a408717..c5bfbbfb36 100644
--- a/contributor-guide/expression-audits/conversion_funcs.html
+++ b/contributor-guide/expression-audits/conversion_funcs.html
@@ -566,7 +566,7 @@ under the License.
 <li><p>Spark 4.1 <code class="docutils literal notranslate"><span 
class="pre">TimeType</span></code> casts have no explicit <code class="docutils 
literal notranslate"><span class="pre">Unsupported</span></code> arm; they fall 
back implicitly but do not appear in the auto-generated compatibility doc (<a 
class="reference external" 
href="https://github.com/apache/datafusion-comet/issues/4490";>#4490</a>).</p></li>
 <li><p><code class="docutils literal notranslate"><span 
class="pre">CAST(&lt;map&gt;</span> <span class="pre">AS</span> <span 
class="pre">&lt;map&gt;)</span></code> runs natively via <code class="docutils 
literal notranslate"><span class="pre">cast_map_to_map</span></code>; <code 
class="docutils literal notranslate"><span 
class="pre">CometCast.isSupported</span></code> recurses into the key and value 
casts, so the map arm inherits whichever support level the inner casts 
report.</p></li>
 <li><p><code class="docutils literal notranslate"><span 
class="pre">spark.sql.legacy.castComplexTypesToString.enabled=true</span></code>
 is <code class="docutils literal notranslate"><span 
class="pre">Unsupported</span></code> for any array/map/struct-to-string cast, 
so those casts fall back to Spark while the flag is on. Comet only implements 
the default (<code class="docutils literal notranslate"><span 
class="pre">{}</span></code>-wrapped, NULL-rendering) formatting. The flag is 
intern [...]
-<li><p><code class="docutils literal notranslate"><span 
class="pre">CAST(&lt;float|double&gt;</span> <span class="pre">AS</span> <span 
class="pre">DECIMAL)</span></code> rounding may differ from Spark (<code 
class="docutils literal notranslate"><span 
class="pre">Incompatible</span></code>, gated by <code class="docutils literal 
notranslate"><span 
class="pre">spark.comet.expression.Cast.allowIncompatible</span></code>, 
tracked at <a class="reference external" href="https://github.com/apac [...]
+<li><p><code class="docutils literal notranslate"><span 
class="pre">CAST(&lt;float|double&gt;</span> <span class="pre">AS</span> <span 
class="pre">DECIMAL)</span></code> is <code class="docutils literal 
notranslate"><span class="pre">Compatible</span></code>: it rounds the shortest 
decimal string form of the value (matching Spark’s <code class="docutils 
literal notranslate"><span class="pre">Double.toString</span></code> + <code 
class="docutils literal notranslate"><span class="pre">BigD [...]
 </ul>
 </li>
 <li><p>Spark registers the type-name conversion functions (<code 
class="docutils literal notranslate"><span class="pre">bigint</span></code>, 
<code class="docutils literal notranslate"><span 
class="pre">binary</span></code>, <code class="docutils literal 
notranslate"><span class="pre">boolean</span></code>, <code class="docutils 
literal notranslate"><span class="pre">date</span></code>, <code 
class="docutils literal notranslate"><span class="pre">decimal</span></code>, 
<code class="docut [...]
diff --git a/searchindex.js b/searchindex.js
index 55392de756..b5375dc6c4 100644
--- a/searchindex.js
+++ b/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"alltitles": {"!": [[54, "id1"]], "%": [[52, "id1"]], "&": 
[[42, "id1"]], "*": [[52, "id2"]], "+": [[52, "id3"]], "-": [[52, "id4"]], "/": 
[[52, "id5"]], "1. Format Your Code": [[39, "format-your-code"]], "1. Install 
Comet": [[60, "install-comet"], [70, "install-comet"]], "1. Native Operators 
(nativeExecs map)": [[27, "native-operators-nativeexecs-map"]], "2. Build and 
Verify": [[39, "build-and-verify"]], "2. Clone Iceberg and Apply Diff": [[60, 
"clone-iceberg-and-apply- [...]
\ No newline at end of file
+Search.setIndex({"alltitles": {"!": [[54, "id1"]], "%": [[52, "id1"]], "&": 
[[42, "id1"]], "*": [[52, "id2"]], "+": [[52, "id3"]], "-": [[52, "id4"]], "/": 
[[52, "id5"]], "1. Format Your Code": [[39, "format-your-code"]], "1. Install 
Comet": [[60, "install-comet"], [70, "install-comet"]], "1. Native Operators 
(nativeExecs map)": [[27, "native-operators-nativeexecs-map"]], "2. Build and 
Verify": [[39, "build-and-verify"]], "2. Clone Iceberg and Apply Diff": [[60, 
"clone-iceberg-and-apply- [...]
\ No newline at end of file
diff --git a/user-guide/latest/compatibility/expressions/spark-3.4/cast.html 
b/user-guide/latest/compatibility/expressions/spark-3.4/cast.html
index b0a0308cc7..07f029b22c 100644
--- a/user-guide/latest/compatibility/expressions/spark-3.4/cast.html
+++ b/user-guide/latest/compatibility/expressions/spark-3.4/cast.html
@@ -1029,7 +1029,7 @@ as <code class="docutils literal notranslate"><span 
class="pre">&quot;1.23E+4&qu
 <td><p>C</p></td>
 <td><p>C</p></td>
 <td><p>N/A</p></td>
-<td><p>I</p></td>
+<td><p>C</p></td>
 <td><p>-</p></td>
 <td><p>C</p></td>
 <td><p>C</p></td>
@@ -1044,7 +1044,7 @@ as <code class="docutils literal notranslate"><span 
class="pre">&quot;1.23E+4&qu
 <td><p>C</p></td>
 <td><p>C</p></td>
 <td><p>N/A</p></td>
-<td><p>I</p></td>
+<td><p>C</p></td>
 <td><p>C</p></td>
 <td><p>-</p></td>
 <td><p>C</p></td>
@@ -1149,9 +1149,9 @@ as <code class="docutils literal notranslate"><span 
class="pre">&quot;1.23E+4&qu
 </div>
 <p><strong>Notes:</strong></p>
 <ul class="simple">
-<li><p><strong>double -&gt; decimal</strong>: There can be rounding 
differences</p></li>
+<li><p><strong>double -&gt; decimal</strong>: Rounding matches Spark on JDK 19 
and later. On older JDKs, Spark’s own result may differ for values whose 
shortest decimal form falls exactly on a rounding tie</p></li>
 <li><p><strong>double -&gt; string</strong>: String formatting can differ for 
floating-point values near precision limits or when scientific notation is 
used</p></li>
-<li><p><strong>float -&gt; decimal</strong>: There can be rounding 
differences</p></li>
+<li><p><strong>float -&gt; decimal</strong>: Rounding matches Spark on JDK 19 
and later. On older JDKs, Spark’s own result may differ for values whose 
shortest decimal form falls exactly on a rounding tie</p></li>
 <li><p><strong>float -&gt; string</strong>: String formatting can differ for 
floating-point values near precision limits or when scientific notation is 
used</p></li>
 <li><p><strong>string -&gt; date</strong>: Only supports years between 262143 
BC and 262142 AD</p></li>
 </ul>
@@ -1261,7 +1261,7 @@ as <code class="docutils literal notranslate"><span 
class="pre">&quot;1.23E+4&qu
 <td><p>C</p></td>
 <td><p>C</p></td>
 <td><p>N/A</p></td>
-<td><p>I</p></td>
+<td><p>C</p></td>
 <td><p>-</p></td>
 <td><p>C</p></td>
 <td><p>C</p></td>
@@ -1276,7 +1276,7 @@ as <code class="docutils literal notranslate"><span 
class="pre">&quot;1.23E+4&qu
 <td><p>C</p></td>
 <td><p>C</p></td>
 <td><p>N/A</p></td>
-<td><p>I</p></td>
+<td><p>C</p></td>
 <td><p>C</p></td>
 <td><p>-</p></td>
 <td><p>C</p></td>
@@ -1381,9 +1381,9 @@ as <code class="docutils literal notranslate"><span 
class="pre">&quot;1.23E+4&qu
 </div>
 <p><strong>Notes:</strong></p>
 <ul class="simple">
-<li><p><strong>double -&gt; decimal</strong>: There can be rounding 
differences</p></li>
+<li><p><strong>double -&gt; decimal</strong>: Rounding matches Spark on JDK 19 
and later. On older JDKs, Spark’s own result may differ for values whose 
shortest decimal form falls exactly on a rounding tie</p></li>
 <li><p><strong>double -&gt; string</strong>: String formatting can differ for 
floating-point values near precision limits or when scientific notation is 
used</p></li>
-<li><p><strong>float -&gt; decimal</strong>: There can be rounding 
differences</p></li>
+<li><p><strong>float -&gt; decimal</strong>: Rounding matches Spark on JDK 19 
and later. On older JDKs, Spark’s own result may differ for values whose 
shortest decimal form falls exactly on a rounding tie</p></li>
 <li><p><strong>float -&gt; string</strong>: String formatting can differ for 
floating-point values near precision limits or when scientific notation is 
used</p></li>
 <li><p><strong>string -&gt; date</strong>: Only supports years between 262143 
BC and 262142 AD</p></li>
 </ul>
@@ -1493,7 +1493,7 @@ as <code class="docutils literal notranslate"><span 
class="pre">&quot;1.23E+4&qu
 <td><p>C</p></td>
 <td><p>C</p></td>
 <td><p>N/A</p></td>
-<td><p>I</p></td>
+<td><p>C</p></td>
 <td><p>-</p></td>
 <td><p>C</p></td>
 <td><p>C</p></td>
@@ -1508,7 +1508,7 @@ as <code class="docutils literal notranslate"><span 
class="pre">&quot;1.23E+4&qu
 <td><p>C</p></td>
 <td><p>C</p></td>
 <td><p>N/A</p></td>
-<td><p>I</p></td>
+<td><p>C</p></td>
 <td><p>C</p></td>
 <td><p>-</p></td>
 <td><p>C</p></td>
@@ -1613,9 +1613,9 @@ as <code class="docutils literal notranslate"><span 
class="pre">&quot;1.23E+4&qu
 </div>
 <p><strong>Notes:</strong></p>
 <ul class="simple">
-<li><p><strong>double -&gt; decimal</strong>: There can be rounding 
differences</p></li>
+<li><p><strong>double -&gt; decimal</strong>: Rounding matches Spark on JDK 19 
and later. On older JDKs, Spark’s own result may differ for values whose 
shortest decimal form falls exactly on a rounding tie</p></li>
 <li><p><strong>double -&gt; string</strong>: String formatting can differ for 
floating-point values near precision limits or when scientific notation is 
used</p></li>
-<li><p><strong>float -&gt; decimal</strong>: There can be rounding 
differences</p></li>
+<li><p><strong>float -&gt; decimal</strong>: Rounding matches Spark on JDK 19 
and later. On older JDKs, Spark’s own result may differ for values whose 
shortest decimal form falls exactly on a rounding tie</p></li>
 <li><p><strong>float -&gt; string</strong>: String formatting can differ for 
floating-point values near precision limits or when scientific notation is 
used</p></li>
 <li><p><strong>string -&gt; date</strong>: Only supports years between 262143 
BC and 262142 AD</p></li>
 </ul>
diff --git a/user-guide/latest/compatibility/expressions/spark-3.5/cast.html 
b/user-guide/latest/compatibility/expressions/spark-3.5/cast.html
index 1355117203..88945b9106 100644
--- a/user-guide/latest/compatibility/expressions/spark-3.5/cast.html
+++ b/user-guide/latest/compatibility/expressions/spark-3.5/cast.html
@@ -1029,7 +1029,7 @@ as <code class="docutils literal notranslate"><span 
class="pre">&quot;1.23E+4&qu
 <td><p>C</p></td>
 <td><p>C</p></td>
 <td><p>N/A</p></td>
-<td><p>I</p></td>
+<td><p>C</p></td>
 <td><p>-</p></td>
 <td><p>C</p></td>
 <td><p>C</p></td>
@@ -1044,7 +1044,7 @@ as <code class="docutils literal notranslate"><span 
class="pre">&quot;1.23E+4&qu
 <td><p>C</p></td>
 <td><p>C</p></td>
 <td><p>N/A</p></td>
-<td><p>I</p></td>
+<td><p>C</p></td>
 <td><p>C</p></td>
 <td><p>-</p></td>
 <td><p>C</p></td>
@@ -1149,9 +1149,9 @@ as <code class="docutils literal notranslate"><span 
class="pre">&quot;1.23E+4&qu
 </div>
 <p><strong>Notes:</strong></p>
 <ul class="simple">
-<li><p><strong>double -&gt; decimal</strong>: There can be rounding 
differences</p></li>
+<li><p><strong>double -&gt; decimal</strong>: Rounding matches Spark on JDK 19 
and later. On older JDKs, Spark’s own result may differ for values whose 
shortest decimal form falls exactly on a rounding tie</p></li>
 <li><p><strong>double -&gt; string</strong>: String formatting can differ for 
floating-point values near precision limits or when scientific notation is 
used</p></li>
-<li><p><strong>float -&gt; decimal</strong>: There can be rounding 
differences</p></li>
+<li><p><strong>float -&gt; decimal</strong>: Rounding matches Spark on JDK 19 
and later. On older JDKs, Spark’s own result may differ for values whose 
shortest decimal form falls exactly on a rounding tie</p></li>
 <li><p><strong>float -&gt; string</strong>: String formatting can differ for 
floating-point values near precision limits or when scientific notation is 
used</p></li>
 <li><p><strong>string -&gt; date</strong>: Only supports years between 262143 
BC and 262142 AD</p></li>
 </ul>
@@ -1261,7 +1261,7 @@ as <code class="docutils literal notranslate"><span 
class="pre">&quot;1.23E+4&qu
 <td><p>C</p></td>
 <td><p>C</p></td>
 <td><p>N/A</p></td>
-<td><p>I</p></td>
+<td><p>C</p></td>
 <td><p>-</p></td>
 <td><p>C</p></td>
 <td><p>C</p></td>
@@ -1276,7 +1276,7 @@ as <code class="docutils literal notranslate"><span 
class="pre">&quot;1.23E+4&qu
 <td><p>C</p></td>
 <td><p>C</p></td>
 <td><p>N/A</p></td>
-<td><p>I</p></td>
+<td><p>C</p></td>
 <td><p>C</p></td>
 <td><p>-</p></td>
 <td><p>C</p></td>
@@ -1381,9 +1381,9 @@ as <code class="docutils literal notranslate"><span 
class="pre">&quot;1.23E+4&qu
 </div>
 <p><strong>Notes:</strong></p>
 <ul class="simple">
-<li><p><strong>double -&gt; decimal</strong>: There can be rounding 
differences</p></li>
+<li><p><strong>double -&gt; decimal</strong>: Rounding matches Spark on JDK 19 
and later. On older JDKs, Spark’s own result may differ for values whose 
shortest decimal form falls exactly on a rounding tie</p></li>
 <li><p><strong>double -&gt; string</strong>: String formatting can differ for 
floating-point values near precision limits or when scientific notation is 
used</p></li>
-<li><p><strong>float -&gt; decimal</strong>: There can be rounding 
differences</p></li>
+<li><p><strong>float -&gt; decimal</strong>: Rounding matches Spark on JDK 19 
and later. On older JDKs, Spark’s own result may differ for values whose 
shortest decimal form falls exactly on a rounding tie</p></li>
 <li><p><strong>float -&gt; string</strong>: String formatting can differ for 
floating-point values near precision limits or when scientific notation is 
used</p></li>
 <li><p><strong>string -&gt; date</strong>: Only supports years between 262143 
BC and 262142 AD</p></li>
 </ul>
@@ -1493,7 +1493,7 @@ as <code class="docutils literal notranslate"><span 
class="pre">&quot;1.23E+4&qu
 <td><p>C</p></td>
 <td><p>C</p></td>
 <td><p>N/A</p></td>
-<td><p>I</p></td>
+<td><p>C</p></td>
 <td><p>-</p></td>
 <td><p>C</p></td>
 <td><p>C</p></td>
@@ -1508,7 +1508,7 @@ as <code class="docutils literal notranslate"><span 
class="pre">&quot;1.23E+4&qu
 <td><p>C</p></td>
 <td><p>C</p></td>
 <td><p>N/A</p></td>
-<td><p>I</p></td>
+<td><p>C</p></td>
 <td><p>C</p></td>
 <td><p>-</p></td>
 <td><p>C</p></td>
@@ -1613,9 +1613,9 @@ as <code class="docutils literal notranslate"><span 
class="pre">&quot;1.23E+4&qu
 </div>
 <p><strong>Notes:</strong></p>
 <ul class="simple">
-<li><p><strong>double -&gt; decimal</strong>: There can be rounding 
differences</p></li>
+<li><p><strong>double -&gt; decimal</strong>: Rounding matches Spark on JDK 19 
and later. On older JDKs, Spark’s own result may differ for values whose 
shortest decimal form falls exactly on a rounding tie</p></li>
 <li><p><strong>double -&gt; string</strong>: String formatting can differ for 
floating-point values near precision limits or when scientific notation is 
used</p></li>
-<li><p><strong>float -&gt; decimal</strong>: There can be rounding 
differences</p></li>
+<li><p><strong>float -&gt; decimal</strong>: Rounding matches Spark on JDK 19 
and later. On older JDKs, Spark’s own result may differ for values whose 
shortest decimal form falls exactly on a rounding tie</p></li>
 <li><p><strong>float -&gt; string</strong>: String formatting can differ for 
floating-point values near precision limits or when scientific notation is 
used</p></li>
 <li><p><strong>string -&gt; date</strong>: Only supports years between 262143 
BC and 262142 AD</p></li>
 </ul>
diff --git a/user-guide/latest/compatibility/expressions/spark-4.0/cast.html 
b/user-guide/latest/compatibility/expressions/spark-4.0/cast.html
index 2aacfff086..1eeb178ee4 100644
--- a/user-guide/latest/compatibility/expressions/spark-4.0/cast.html
+++ b/user-guide/latest/compatibility/expressions/spark-4.0/cast.html
@@ -1029,7 +1029,7 @@ as <code class="docutils literal notranslate"><span 
class="pre">&quot;1.23E+4&qu
 <td><p>C</p></td>
 <td><p>C</p></td>
 <td><p>N/A</p></td>
-<td><p>I</p></td>
+<td><p>C</p></td>
 <td><p>-</p></td>
 <td><p>C</p></td>
 <td><p>C</p></td>
@@ -1044,7 +1044,7 @@ as <code class="docutils literal notranslate"><span 
class="pre">&quot;1.23E+4&qu
 <td><p>C</p></td>
 <td><p>C</p></td>
 <td><p>N/A</p></td>
-<td><p>I</p></td>
+<td><p>C</p></td>
 <td><p>C</p></td>
 <td><p>-</p></td>
 <td><p>C</p></td>
@@ -1149,9 +1149,9 @@ as <code class="docutils literal notranslate"><span 
class="pre">&quot;1.23E+4&qu
 </div>
 <p><strong>Notes:</strong></p>
 <ul class="simple">
-<li><p><strong>double -&gt; decimal</strong>: There can be rounding 
differences</p></li>
+<li><p><strong>double -&gt; decimal</strong>: Rounding matches Spark on JDK 19 
and later. On older JDKs, Spark’s own result may differ for values whose 
shortest decimal form falls exactly on a rounding tie</p></li>
 <li><p><strong>double -&gt; string</strong>: String formatting can differ for 
floating-point values near precision limits or when scientific notation is 
used</p></li>
-<li><p><strong>float -&gt; decimal</strong>: There can be rounding 
differences</p></li>
+<li><p><strong>float -&gt; decimal</strong>: Rounding matches Spark on JDK 19 
and later. On older JDKs, Spark’s own result may differ for values whose 
shortest decimal form falls exactly on a rounding tie</p></li>
 <li><p><strong>float -&gt; string</strong>: String formatting can differ for 
floating-point values near precision limits or when scientific notation is 
used</p></li>
 <li><p><strong>string -&gt; date</strong>: Only supports years between 262143 
BC and 262142 AD</p></li>
 </ul>
@@ -1261,7 +1261,7 @@ as <code class="docutils literal notranslate"><span 
class="pre">&quot;1.23E+4&qu
 <td><p>C</p></td>
 <td><p>C</p></td>
 <td><p>N/A</p></td>
-<td><p>I</p></td>
+<td><p>C</p></td>
 <td><p>-</p></td>
 <td><p>C</p></td>
 <td><p>C</p></td>
@@ -1276,7 +1276,7 @@ as <code class="docutils literal notranslate"><span 
class="pre">&quot;1.23E+4&qu
 <td><p>C</p></td>
 <td><p>C</p></td>
 <td><p>N/A</p></td>
-<td><p>I</p></td>
+<td><p>C</p></td>
 <td><p>C</p></td>
 <td><p>-</p></td>
 <td><p>C</p></td>
@@ -1381,9 +1381,9 @@ as <code class="docutils literal notranslate"><span 
class="pre">&quot;1.23E+4&qu
 </div>
 <p><strong>Notes:</strong></p>
 <ul class="simple">
-<li><p><strong>double -&gt; decimal</strong>: There can be rounding 
differences</p></li>
+<li><p><strong>double -&gt; decimal</strong>: Rounding matches Spark on JDK 19 
and later. On older JDKs, Spark’s own result may differ for values whose 
shortest decimal form falls exactly on a rounding tie</p></li>
 <li><p><strong>double -&gt; string</strong>: String formatting can differ for 
floating-point values near precision limits or when scientific notation is 
used</p></li>
-<li><p><strong>float -&gt; decimal</strong>: There can be rounding 
differences</p></li>
+<li><p><strong>float -&gt; decimal</strong>: Rounding matches Spark on JDK 19 
and later. On older JDKs, Spark’s own result may differ for values whose 
shortest decimal form falls exactly on a rounding tie</p></li>
 <li><p><strong>float -&gt; string</strong>: String formatting can differ for 
floating-point values near precision limits or when scientific notation is 
used</p></li>
 <li><p><strong>string -&gt; date</strong>: Only supports years between 262143 
BC and 262142 AD</p></li>
 </ul>
@@ -1493,7 +1493,7 @@ as <code class="docutils literal notranslate"><span 
class="pre">&quot;1.23E+4&qu
 <td><p>C</p></td>
 <td><p>C</p></td>
 <td><p>N/A</p></td>
-<td><p>I</p></td>
+<td><p>C</p></td>
 <td><p>-</p></td>
 <td><p>C</p></td>
 <td><p>C</p></td>
@@ -1508,7 +1508,7 @@ as <code class="docutils literal notranslate"><span 
class="pre">&quot;1.23E+4&qu
 <td><p>C</p></td>
 <td><p>C</p></td>
 <td><p>N/A</p></td>
-<td><p>I</p></td>
+<td><p>C</p></td>
 <td><p>C</p></td>
 <td><p>-</p></td>
 <td><p>C</p></td>
@@ -1613,9 +1613,9 @@ as <code class="docutils literal notranslate"><span 
class="pre">&quot;1.23E+4&qu
 </div>
 <p><strong>Notes:</strong></p>
 <ul class="simple">
-<li><p><strong>double -&gt; decimal</strong>: There can be rounding 
differences</p></li>
+<li><p><strong>double -&gt; decimal</strong>: Rounding matches Spark on JDK 19 
and later. On older JDKs, Spark’s own result may differ for values whose 
shortest decimal form falls exactly on a rounding tie</p></li>
 <li><p><strong>double -&gt; string</strong>: String formatting can differ for 
floating-point values near precision limits or when scientific notation is 
used</p></li>
-<li><p><strong>float -&gt; decimal</strong>: There can be rounding 
differences</p></li>
+<li><p><strong>float -&gt; decimal</strong>: Rounding matches Spark on JDK 19 
and later. On older JDKs, Spark’s own result may differ for values whose 
shortest decimal form falls exactly on a rounding tie</p></li>
 <li><p><strong>float -&gt; string</strong>: String formatting can differ for 
floating-point values near precision limits or when scientific notation is 
used</p></li>
 <li><p><strong>string -&gt; date</strong>: Only supports years between 262143 
BC and 262142 AD</p></li>
 </ul>
diff --git a/user-guide/latest/compatibility/expressions/spark-4.1/cast.html 
b/user-guide/latest/compatibility/expressions/spark-4.1/cast.html
index d32bb08c69..cee2d958f2 100644
--- a/user-guide/latest/compatibility/expressions/spark-4.1/cast.html
+++ b/user-guide/latest/compatibility/expressions/spark-4.1/cast.html
@@ -1029,7 +1029,7 @@ as <code class="docutils literal notranslate"><span 
class="pre">&quot;1.23E+4&qu
 <td><p>C</p></td>
 <td><p>C</p></td>
 <td><p>N/A</p></td>
-<td><p>I</p></td>
+<td><p>C</p></td>
 <td><p>-</p></td>
 <td><p>C</p></td>
 <td><p>C</p></td>
@@ -1044,7 +1044,7 @@ as <code class="docutils literal notranslate"><span 
class="pre">&quot;1.23E+4&qu
 <td><p>C</p></td>
 <td><p>C</p></td>
 <td><p>N/A</p></td>
-<td><p>I</p></td>
+<td><p>C</p></td>
 <td><p>C</p></td>
 <td><p>-</p></td>
 <td><p>C</p></td>
@@ -1149,9 +1149,9 @@ as <code class="docutils literal notranslate"><span 
class="pre">&quot;1.23E+4&qu
 </div>
 <p><strong>Notes:</strong></p>
 <ul class="simple">
-<li><p><strong>double -&gt; decimal</strong>: There can be rounding 
differences</p></li>
+<li><p><strong>double -&gt; decimal</strong>: Rounding matches Spark on JDK 19 
and later. On older JDKs, Spark’s own result may differ for values whose 
shortest decimal form falls exactly on a rounding tie</p></li>
 <li><p><strong>double -&gt; string</strong>: String formatting can differ for 
floating-point values near precision limits or when scientific notation is 
used</p></li>
-<li><p><strong>float -&gt; decimal</strong>: There can be rounding 
differences</p></li>
+<li><p><strong>float -&gt; decimal</strong>: Rounding matches Spark on JDK 19 
and later. On older JDKs, Spark’s own result may differ for values whose 
shortest decimal form falls exactly on a rounding tie</p></li>
 <li><p><strong>float -&gt; string</strong>: String formatting can differ for 
floating-point values near precision limits or when scientific notation is 
used</p></li>
 <li><p><strong>string -&gt; date</strong>: Only supports years between 262143 
BC and 262142 AD</p></li>
 </ul>
@@ -1261,7 +1261,7 @@ as <code class="docutils literal notranslate"><span 
class="pre">&quot;1.23E+4&qu
 <td><p>C</p></td>
 <td><p>C</p></td>
 <td><p>N/A</p></td>
-<td><p>I</p></td>
+<td><p>C</p></td>
 <td><p>-</p></td>
 <td><p>C</p></td>
 <td><p>C</p></td>
@@ -1276,7 +1276,7 @@ as <code class="docutils literal notranslate"><span 
class="pre">&quot;1.23E+4&qu
 <td><p>C</p></td>
 <td><p>C</p></td>
 <td><p>N/A</p></td>
-<td><p>I</p></td>
+<td><p>C</p></td>
 <td><p>C</p></td>
 <td><p>-</p></td>
 <td><p>C</p></td>
@@ -1381,9 +1381,9 @@ as <code class="docutils literal notranslate"><span 
class="pre">&quot;1.23E+4&qu
 </div>
 <p><strong>Notes:</strong></p>
 <ul class="simple">
-<li><p><strong>double -&gt; decimal</strong>: There can be rounding 
differences</p></li>
+<li><p><strong>double -&gt; decimal</strong>: Rounding matches Spark on JDK 19 
and later. On older JDKs, Spark’s own result may differ for values whose 
shortest decimal form falls exactly on a rounding tie</p></li>
 <li><p><strong>double -&gt; string</strong>: String formatting can differ for 
floating-point values near precision limits or when scientific notation is 
used</p></li>
-<li><p><strong>float -&gt; decimal</strong>: There can be rounding 
differences</p></li>
+<li><p><strong>float -&gt; decimal</strong>: Rounding matches Spark on JDK 19 
and later. On older JDKs, Spark’s own result may differ for values whose 
shortest decimal form falls exactly on a rounding tie</p></li>
 <li><p><strong>float -&gt; string</strong>: String formatting can differ for 
floating-point values near precision limits or when scientific notation is 
used</p></li>
 <li><p><strong>string -&gt; date</strong>: Only supports years between 262143 
BC and 262142 AD</p></li>
 </ul>
@@ -1493,7 +1493,7 @@ as <code class="docutils literal notranslate"><span 
class="pre">&quot;1.23E+4&qu
 <td><p>C</p></td>
 <td><p>C</p></td>
 <td><p>N/A</p></td>
-<td><p>I</p></td>
+<td><p>C</p></td>
 <td><p>-</p></td>
 <td><p>C</p></td>
 <td><p>C</p></td>
@@ -1508,7 +1508,7 @@ as <code class="docutils literal notranslate"><span 
class="pre">&quot;1.23E+4&qu
 <td><p>C</p></td>
 <td><p>C</p></td>
 <td><p>N/A</p></td>
-<td><p>I</p></td>
+<td><p>C</p></td>
 <td><p>C</p></td>
 <td><p>-</p></td>
 <td><p>C</p></td>
@@ -1613,9 +1613,9 @@ as <code class="docutils literal notranslate"><span 
class="pre">&quot;1.23E+4&qu
 </div>
 <p><strong>Notes:</strong></p>
 <ul class="simple">
-<li><p><strong>double -&gt; decimal</strong>: There can be rounding 
differences</p></li>
+<li><p><strong>double -&gt; decimal</strong>: Rounding matches Spark on JDK 19 
and later. On older JDKs, Spark’s own result may differ for values whose 
shortest decimal form falls exactly on a rounding tie</p></li>
 <li><p><strong>double -&gt; string</strong>: String formatting can differ for 
floating-point values near precision limits or when scientific notation is 
used</p></li>
-<li><p><strong>float -&gt; decimal</strong>: There can be rounding 
differences</p></li>
+<li><p><strong>float -&gt; decimal</strong>: Rounding matches Spark on JDK 19 
and later. On older JDKs, Spark’s own result may differ for values whose 
shortest decimal form falls exactly on a rounding tie</p></li>
 <li><p><strong>float -&gt; string</strong>: String formatting can differ for 
floating-point values near precision limits or when scientific notation is 
used</p></li>
 <li><p><strong>string -&gt; date</strong>: Only supports years between 262143 
BC and 262142 AD</p></li>
 </ul>


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

Reply via email to