-
Notifications
You must be signed in to change notification settings - Fork 25.8k
SQL: division by zero even if conditional function should have protected from this #49388
Copy link
Copy link
Closed
Labels
Description
SELECT CASE WHEN languages = 0 THEN NULL ELSE (salary / languages) END FROM test_emp
results in
java.lang.ArithmeticException: / by zero
at org.elasticsearch.xpack.sql.expression.predicate.operator.arithmetic.Arithmetics.div(Arithmetics.java:113) ~[?:?]
at org.elasticsearch.xpack.sql.expression.predicate.operator.arithmetic.BinaryArithmeticProcessor$NumericArithmetic.wrap(BinaryArithmeticProcessor.java:29) ~[?:?]
at org.elasticsearch.xpack.sql.expression.predicate.operator.arithmetic.BinaryArithmeticProcessor$BinaryArithmeticOperation.doApply(BinaryArithmeticProcessor.java:131) ~[?:?]
at org.elasticsearch.xpack.sql.expression.predicate.PredicateBiFunction.apply(PredicateBiFunction.java:24) ~[?:?]
at org.elasticsearch.xpack.sql.expression.predicate.operator.arithmetic.BinaryArithmeticProcessor.doProcess(BinaryArithmeticProcessor.java:176) ~[?:?]
at org.elasticsearch.xpack.sql.expression.gen.processor.BinaryProcessor.process(BinaryProcessor.java:50) ~[?:?]
at org.elasticsearch.xpack.sql.expression.predicate.conditional.CaseProcessor.process(CaseProcessor.java:45) ~[?:?]
at org.elasticsearch.xpack.sql.execution.search.extractor.ComputingExtractor.extract(ComputingExtractor.java:78) ~[?:?]
at org.elasticsearch.xpack.sql.execution.search.SearchHitRowSet.extractValue(SearchHitRowSet.java:128) ~[?:?]
at org.elasticsearch.xpack.sql.execution.search.SearchHitRowSet.extractValue(SearchHitRowSet.java:31) ~[?:?]
at org.elasticsearch.xpack.sql.execution.search.ResultRowSet.getColumn(ResultRowSet.java:37) ~[?:?]
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
Type
Fields
Give feedbackNo fields configured for issues without a type.