[ https://issues.apache.org/jira/browse/IGNITE-21658?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andrey Mashenkov updated IGNITE-21658: -------------------------------------- Description: *Motivation.* Some components requires listening watermark updates for resource cleanup purposes, but for now, LowWatermark component is internal object in TableManager. E.g. CatalogManager and TableManager should destroy stale data and collect the garbage. *Suggestion* Let's make LowWatermark a top-level component and subscribe all dependants. Note: * the components recovery process should be completed before any LWM update is triggered. Thus, it's should be started at last. * some operation may take a time and run asynchronously. Thus, it make no sense to trigger next LWM events before the latest one has been completed. * dependant components must be able to get valid watermark. Thus, LWM must be recovered first. was: Motivation. Some components requires listening watermark updates for resource cleanup purposes, but for now, LowWatermark component is internal object in TableManager. E.g. CatalogManager and TableManager should destroy stale data and collect the garbage. Let's make LowWatermark a top-level component and subscribe all dependants. Note: * the components recovery process should be completed before any LWM update is triggered. Thus, it's should be started at last. * some operation may take a time and run asynchronously. Thus, it make no sense to trigger next LWM events before the latest one has been completed. * dependant components must be able to get valid watermark. Thus, LWM must be recovered first. > Make LowWatermark a top-level component > --------------------------------------- > > Key: IGNITE-21658 > URL: https://issues.apache.org/jira/browse/IGNITE-21658 > Project: Ignite > Issue Type: Improvement > Reporter: Andrey Mashenkov > Assignee: Andrey Mashenkov > Priority: Major > Labels: ignite-3 > Fix For: 3.0.0-beta2 > > > *Motivation.* > Some components requires listening watermark updates for resource cleanup > purposes, but for now, LowWatermark component is internal object in > TableManager. E.g. CatalogManager and TableManager should destroy stale data > and collect the garbage. > *Suggestion* > Let's make LowWatermark a top-level component and subscribe all dependants. > Note: > * the components recovery process should be completed before any LWM update > is triggered. Thus, it's should be started at last. > * some operation may take a time and run asynchronously. Thus, it make no > sense to trigger next LWM events before the latest one has been completed. > * dependant components must be able to get valid watermark. Thus, LWM must be > recovered first. -- This message was sent by Atlassian Jira (v8.20.10#820010)