[
https://issues.apache.org/jira/browse/FLINK-25695?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17478523#comment-17478523
]
Lyn Zhang edited comment on FLINK-25695 at 1/19/22, 10:12 AM:
--------------------------------------------------------------
Because The operator only register the smallest event time as trigger, So when
the coding is running at line 213 means the last smallest triggered is
completed and the new smallest trigger is not registered because of line 203
return false.
was (Author: zicat):
Because The operator only register the smallest event time as trigger, So when
the coding is running at line 213 means the event time is triggered and the new
smallest trigger is not registered because of line 203 return false.
> TemporalJoin cause state leak in some cases
> -------------------------------------------
>
> Key: FLINK-25695
> URL: https://issues.apache.org/jira/browse/FLINK-25695
> Project: Flink
> Issue Type: Bug
> Components: Table SQL / Runtime
> Affects Versions: 1.14.3
> Reporter: Lyn Zhang
> Priority: Major
> Labels: pull-request-available
> Attachments: test.sql
>
>
> Last year, I reported the similar bug of TemporalJoin cause state leak.
> Detail: FLINK-21833
> Recently, I found the fix code can reduce the the leak size but can not
> resolve it completely.
> The code of line 213 cause it and the right fix is to invoke cleanUp() method.
> In FLINK-21833, we discussed when the code is running on line 213, that means
> Left State, Right State, registeredTimerState is empty, actually the Left
> State and Right State value(MapState) is empty but the key is still be in
> state, So invoke state.clear() is necessary.
--
This message was sent by Atlassian Jira
(v8.20.1#820001)