andygrove commented on issue #4452:
URL: 
https://github.com/apache/datafusion-comet/issues/4452#issuecomment-4555314150

   After a closer look at Spark, this is not a divergence. Spark's 
`MakeDate.nullSafeEval` uses `LocalDate.of(year, month, day)` 
(`datetimeExpressions.scala:2453` in v3.5.8), which accepts any year in 
`[-999999999, 999999999]` (the Java `LocalDate` range). chrono's 
`NaiveDate::from_ymd_opt` accepts the same range, so year 0 and negative years 
produce the same date on both engines.
   
   The existing SQL tests at 
`spark/src/test/resources/sql-tests/expressions/datetime/make_date.sql:133,136` 
exercise `make_date(0, 1, 1)` and `make_date(-1, 1, 1)` in default `query` mode 
and pass, confirming no divergence. The audit finding that produced this issue 
was overstated: Spark's `@ExpressionDescription` documents the range as 1..9999 
but the implementation does not enforce that bound.


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