caojian0613 created FLINK-15549:
-----------------------------------
Summary: integer overflow in
SpillingResettableMutableObjectIterator
Key: FLINK-15549
URL: https://issues.apache.org/jira/browse/FLINK-15549
Project: Flink
Issue Type: Bug
Components: Runtime / Task
Affects Versions: 1.9.1, 1.9.0
Reporter: caojian0613
The SpillingResettableMutableObjectIterator has a data overflow problem if the
number of elements in a single input exceeds Integer.MAX_VALUE.
The reason is inside the SpillingResettableMutableObjectIterator, it track the
total number of elements and the number of elements currently read with two int
type fileds (elementCount and currentElementNum), and if the number of elements
exceeds Integer.MAX_VALUE, it will overflow.
If there is an overflow, then in the next iteration, after reset the input ,
the data will not be read or only part of the data will be read.
Therefore, we should changing the type of these two fields of
SpillingResettableMutableObjectIterator from int to long, and we also need a
pre-check mechanism before such numerical.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)