[ https://issues.apache.org/jira/browse/FLINK-21125?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Flink Jira Bot updated FLINK-21125: ----------------------------------- Labels: stale-major (was: ) I am the [Flink Jira Bot|https://github.com/apache/flink-jira-bot/] and I help the community manage its development. I see this issues has been marked as Major but is unassigned and neither itself nor its Sub-Tasks have been updated for 30 days. I have gone ahead and added a "stale-major" to the issue". If this ticket is a Major, please either assign yourself or give an update. Afterwards, please remove the label or in 7 days the issue will be deprioritized. > Sum or Sum0 overflow quietly > ---------------------------- > > Key: FLINK-21125 > URL: https://issues.apache.org/jira/browse/FLINK-21125 > Project: Flink > Issue Type: Bug > Components: Table SQL / Runtime > Reporter: Sebastian Liu > Priority: Major > Labels: stale-major > Fix For: 1.14.0 > > > Overflow is not calculated correctly in the build-in sum function of Blink > planner. > For a aggregate calculation such as: > {code:java} > CREATE TABLE TestTable ( > amount INT > ); > insert into TestTable (2147483647); > insert into TestTable (1); > SELECT sum(amount) FROM TestTable; > The result will be: -2147483648, which is an overflowed value and no > exception was thrown. {code} > The overflow occurs quietly and is difficult to detect. > Compare the processing semantics of other systems: > * *mysql*: provide two SQL mode for handling overflow. If strict SQL mode is > enabled, MySQL rejects the out-of-range value with an error, and the insert > fails, in accordance with the SQL standard. If no restrictive modes are > enabled, MySQL clips the value to the appropriate endpoint of the column data > type range and stores the resulting value instead. FYI: > [https://dev.mysql.com/doc/refman/8.0/en/out-of-range-and-overflow.html] > * *presto*: all numeric types are automatically cast to Long type, and If > the long is out of range, an exception is thrown to prompt user. > IMO, exception hint is necessary, instead of quietly overflow. > > -- This message was sent by Atlassian Jira (v8.3.4#803005)