You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "Yu Li (Jira)" <ji...@apache.org> on 2020/02/06 13:27:00 UTC
[jira] [Commented] (FLINK-15938) Idle state not cleaned in
StreamingJoinOperator and StreamingSemiAntiJoinOperator
[ https://issues.apache.org/jira/browse/FLINK-15938?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17031586#comment-17031586 ]
Yu Li commented on FLINK-15938:
-------------------------------
Let me confirm: according to the document, for backend supporting background GC such as RocksDB, the state would be cleaned even with no read, otherwise it won't be cleaned w/o read on it (such as with Heap backend). Are you observing any behavior inconsistent with the documentation? If so, could you clarify the exact divergence? [~libenchao] Thanks.
> Idle state not cleaned in StreamingJoinOperator and StreamingSemiAntiJoinOperator
> ---------------------------------------------------------------------------------
>
> Key: FLINK-15938
> URL: https://issues.apache.org/jira/browse/FLINK-15938
> Project: Flink
> Issue Type: Improvement
> Components: Table SQL / Planner
> Affects Versions: 1.9.2, 1.10.0
> Reporter: Benchao Li
> Priority: Critical
>
> {code:java}
> return StateTtlConfig
> .newBuilder(Time.milliseconds(retentionTime))
> .setUpdateType(StateTtlConfig.UpdateType.OnCreateAndWrite)
> .setStateVisibility(StateTtlConfig.StateVisibility.ReturnExpiredIfNotCleanedUp)
> .build();
> {code}
> StateTtl is constructed in above code for `StreamingJoinOperator` and `StreamingSemiAntiJoinOperator`.
> However, as stated in [https://ci.apache.org/projects/flink/flink-docs-master/dev/stream/state/state.html#cleanup-of-expired-state] , the state will be cleaned only when it's read which means the state will not be cleaned enless we read it.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)