[ https://issues.apache.org/jira/browse/FLINK-9511?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Andrey Zagrebin updated FLINK-9511:
-----------------------------------
Description:
TTL can be enabled and configured in the constructor of abstract StateDescriptor and become
available in all subclasses:
| {code:java}
enum StateTtlUpdateType { Disabled, OnCreateAndWrite, OnReadAndWrite }
enum StateTtlCleanupGuarantee { Relaxed, Exact }
enum TtlStateVisibility { Relaxed, Exact }
class TtlConfig {
StateTtlUpdateType updateType;
StateTtlCleanupGuarantee cleanupStrategy;
TtlStateVisibility stateVisibility;
TimeCharacteristic timeCharacteristic;
long ttl;
}
// previous constructor
StateDescriptor(...) {
this.ttlConfig = ttlConfig.DISABLED;
}
// overloaded constructor with TtlConfig
StateDescriptor(..., ttlConfig) {
...
}
{code}
|
`TtlConfig` has to be in flink core module.
Another option is to consider adding TtlConfig builder.
Queryable state can be unsupported with TTL for now.
was:
TTL can be enabled and configured in the constructor of abstract StateDescriptor and become
available in all subclasses:
| {code:java}
enum StateTtlUpdateType { Disabled, OnCreateAndWrite, OnReadAndWrite }
enum StateTtlCleanupGuarantee { Relaxed, Exact }
enum TtlStateVisibility { Relaxed, Exact }
class TtlConfig {
StateTtlUpdateType updateType;
StateTtlCleanupGuarantee cleanupStrategy;
TtlStateVisibility stateVisibility;
TimeCharacteristic timeCharacteristic;
long ttl;
}
// previous constructor
StateDescriptor(...) {
this.ttlConfig = ttlConfig.DISABLED;
}
// overloaded constructor with TtlConfig
StateDescriptor(..., ttlConfig) {
...
}
{code}
|
Another option is to consider adding StateDescriptor builder
Queryable state can be unsupported with TTL for now.
> Make StateDescriptor configurable with optional TTL
> ---------------------------------------------------
>
> Key: FLINK-9511
> URL: https://issues.apache.org/jira/browse/FLINK-9511
> Project: Flink
> Issue Type: Sub-task
> Components: Java API, State Backends, Checkpointing
> Affects Versions: 1.6.0
> Reporter: Andrey Zagrebin
> Assignee: vinoyang
> Priority: Major
> Fix For: 1.6.0
>
>
> TTL can be enabled and configured in the constructor of abstract StateDescriptor and
become available in all subclasses:
> | {code:java}
> enum StateTtlUpdateType { Disabled, OnCreateAndWrite, OnReadAndWrite }
> enum StateTtlCleanupGuarantee { Relaxed, Exact }
> enum TtlStateVisibility { Relaxed, Exact }
> class TtlConfig {
> StateTtlUpdateType updateType;
> StateTtlCleanupGuarantee cleanupStrategy;
> TtlStateVisibility stateVisibility;
> TimeCharacteristic timeCharacteristic;
> long ttl;
> }
> // previous constructor
> StateDescriptor(...) {
> this.ttlConfig = ttlConfig.DISABLED;
> }
> // overloaded constructor with TtlConfig
> StateDescriptor(..., ttlConfig) {
> ...
> }
> {code}
> |
> `TtlConfig` has to be in flink core module.
> Another option is to consider adding TtlConfig builder.
> Queryable state can be unsupported with TTL for now.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
|