Yun Tang created FLINK-13004: -------------------------------- Summary: Correct the logic of needToCleanupState in KeyedProcessFunctionWithCleanupState Key: FLINK-13004 URL: https://issues.apache.org/jira/browse/FLINK-13004 Project: Flink Issue Type: Bug Reporter: Yun Tang Assignee: Yun Tang
Current implementation of needToCleanupState in KeyedProcessFunctionWithCleanupState actually has potention bug: {code:java} protected Boolean needToCleanupState(Long timestamp) throws IOException { if (stateCleaningEnabled) { Long cleanupTime = cleanupTimeState.value(); // check that the triggered timer is the last registered processing time timer. return null != cleanupTime && timestamp == cleanupTime; } else { return false; } } {code} Please note that it directly use "==" to judge whether *Long* type timestamp and cleanupTime equals. However, if that value is larger than 127L, the result would actually return false instead of wanted true. -- This message was sent by Atlassian JIRA (v7.6.3#76005)