[
https://issues.apache.org/jira/browse/FLINK-12005?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Flink Jira Bot updated FLINK-12005:
-----------------------------------
Labels: auto-unassigned stale-major (was: auto-unassigned)
I am the [Flink Jira Bot|https://github.com/apache/flink-jira-bot/] and I help
the community manage its development. I see this issues has been marked as
Major but is unassigned and neither itself nor its Sub-Tasks have been updated
for 30 days. I have gone ahead and added a "stale-major" to the issue". If this
ticket is a Major, please either assign yourself or give an update. Afterwards,
please remove the label or in 7 days the issue will be deprioritized.
> [State TTL] Event time support
> ------------------------------
>
> Key: FLINK-12005
> URL: https://issues.apache.org/jira/browse/FLINK-12005
> Project: Flink
> Issue Type: New Feature
> Components: API / DataStream, Runtime / State Backends
> Reporter: Andrey Zagrebin
> Priority: Major
> Labels: auto-unassigned, stale-major
>
> The event time is opted for in StateTtlConfig by setting
> TtlTimeCharacteristic.EventTime.
> To enable event time support, the updated watermark needs to be passed to the
> state backend, shared with TTL state wrappers and additional cleanup
> strategies (snapshot transformers and compaction filter).
> h3. Event time provider
> Additional implementation of TtlTimeProvider, which holds current watermark,
> needs to be passed to the state backend at the moment of its creation in
> StreamTaskStateInitializerImpl. There several ways to update watermark in
> this implementation of TtlTimeProvider:
> * in InternalTimeServiceManager.advanceWatermark explicitly
> * InternalTimeServiceManager/InternalTimerServiceImpl could be refactored to
> use shared EventTimeService which holds current updatable watermark and
> wrapped by TtlTimeProvider
> The TTL state wrapping factory should create TTL state wrappers and snapshot
> transformers with TtlTimeProvider selected by TtlTimeCharacteristic.
> h3. RocksDB TTL compaction filter
> The RocksDB TTL compaction filter factory needs to get selected
> TtlTimeProvider when it gets configured. There are two ways:
> * make it volatile and settable in
> RocksDbTtlCompactFiltersManager.TimeProviderWrapper, track it in
> RocksDbTtlCompactFiltersManager along with FlinkCompactionFilterFactory to
> configure later before configuring FlinkCompactionFilterFactory.
> * Move FlinkCompactionFilter.TimeProvider from FlinkCompactionFilterFactory
> to ConfigHolder and set selected TtlTimeProvider with the Config.
> The second option does not use volatile variable and should be more
> performant but needs changing RocksDB java client and either releasing new
> version FRocksDB or Flink RocksDB extensions.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)