apache / apache/datafusion

Spark make_dt_interval/make_interval return NULL on overflow instead of erroring

Aperta
#22,401 3 commenti 0 reazioni 1 assegnatario Rivendicata da @kumarUjjawal Vedi su GitHub
Lingua principale
Rust
Stelle
9.3k
Fork
2.4k
Merge medio
3g 11h
PR unite (30g)
360

Descrizione

datafusion-spark's **make_dt_interval** / **make_interval** kernels use checked_add/checked_mul and append_null() on overflow.

Spark's **IntervalUtils.makeDayTimeInterval / makeInterval** use
Math.addExact/multiplyExact and throw SparkArithmeticException (INTERVAL_ARITHMETIC_OVERFLOW).
e.g. make_dt_interval(1000000000, 0, 0, 0) returns NULL here but errors in Spark.

Suggest erroring (or a configurable ANSI-style mode) to match Spark's documented behavior.

Guida per i contributori

Apri la guida per i contributori

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.