You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@flink.apache.org by "hailong wang (Jira)" <ji...@apache.org> on 2019/12/25 15:34:00 UTC

[jira] [Created] (FLINK-15393) Change 'ReturnExpiredIfNotCleanedUp' to 'NeverReturnExpired' in JoinRecordStateViews#createTtlConfig

hailong wang created FLINK-15393:
------------------------------------

             Summary: Change  'ReturnExpiredIfNotCleanedUp' to 'NeverReturnExpired' in JoinRecordStateViews#createTtlConfig 
                 Key: FLINK-15393
                 URL: https://issues.apache.org/jira/browse/FLINK-15393
             Project: Flink
          Issue Type: Improvement
          Components: Table SQL / Runtime
    Affects Versions: 1.10.0
            Reporter: hailong wang
             Fix For: 1.11.0


In Blink planner, we use ttl state to clean expired data by rocksdb for regular joins. The StateTtlConfig is:
{code:java}
 StateTtlConfig
   .newBuilder(Time.milliseconds(retentionTime))
   .setUpdateType(StateTtlConfig.UpdateType.OnCreateAndWrite)
   .setStateVisibility(StateTtlConfig.StateVisibility.ReturnExpiredIfNotCleanedUp)
   .build();
{code}
I think we should use StateTtlConfig.StateVisibility.NeverReturnExpired to prevent to join expired data.

BTW, Only regular joins use rocksdb filter to clean expired data, should we change timer to rocksdb filter in other sql operator such as TemporalTableJoin?

 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)