You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "Andrey Zagrebin (JIRA)" <ji...@apache.org> on 2018/06/04 08:01:00 UTC
[jira] [Updated] (FLINK-9514) Create wrapper with TTL logic for
value state
[ https://issues.apache.org/jira/browse/FLINK-9514?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andrey Zagrebin updated FLINK-9514:
-----------------------------------
Description:
TTL state decorator uses original state with packed TTL and add TTL logic using time provider:
{code:java}
TtlValueState<V> implements ValueState<V> {
ValueState<TtlValue<V>> underlyingState;
InternalTimeService timeProvider;
V value() {
TtlValue<V> valueWithTtl = underlyingState.get();
// ttl logic here (e.g. update timestamp)
return valueWithTtl.getValue();
}
void update() { ... underlyingState.update(valueWithTtl) ... }
}
{code}
TTL decorators are apply to state produced by normal state binder in its TTL wrapper from FLINK-9513
was:
TTL state decorator uses original state with packed TTL and add TTL logic using time provider:
{code:java}
TtlValueState<V> implements ValueState<V> {
ValueState<TtlValue<V>> underlyingState;
InternalTimeService timeProvider;
V value() {
TtlValue<V> valueWithTtl = underlyingState.get();
// ttl logic here (e.g. update timestamp)
return valueWithTtl.getValue();
}
void update() { ... underlyingState.update(valueWithTtl) ... }
}
{code}
TTL decorators are apply to state produced by normal state binder in its TTL wrapper
> Create wrapper with TTL logic for value state
> ---------------------------------------------
>
> Key: FLINK-9514
> URL: https://issues.apache.org/jira/browse/FLINK-9514
> Project: Flink
> Issue Type: Sub-task
> Components: State Backends, Checkpointing
> Affects Versions: 1.6.0
> Reporter: Andrey Zagrebin
> Priority: Major
> Fix For: 1.6.0
>
>
> TTL state decorator uses original state with packed TTL and add TTL logic using time provider:
> {code:java}
> TtlValueState<V> implements ValueState<V> {
> ValueState<TtlValue<V>> underlyingState;
> InternalTimeService timeProvider;
> V value() {
> TtlValue<V> valueWithTtl = underlyingState.get();
> // ttl logic here (e.g. update timestamp)
> return valueWithTtl.getValue();
> }
> void update() { ... underlyingState.update(valueWithTtl) ... }
> }
> {code}
> TTL decorators are apply to state produced by normal state binder in its TTL wrapper from FLINK-9513
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)