Package com.linkedin.venice.controller
Class TerminalStateTopicCheckerForParentController
- java.lang.Object
-
- com.linkedin.venice.controller.TerminalStateTopicCheckerForParentController
-
- All Implemented Interfaces:
java.io.Closeable
,java.lang.AutoCloseable
,java.lang.Runnable
public class TerminalStateTopicCheckerForParentController extends java.lang.Object implements java.lang.Runnable, java.io.Closeable
A task that periodically polls the job state for existing version topics in the parent fabric. This is to make sure topics in the parent fabric are cleaned up in a timely manner once they reach terminal states in all child fabrics. This is to prevent out-of-order issue when compaction is enabled and MM rewind old messages from parent to child fabrics during restart. Topic cleanup is part of job status polling because it's only safe to delete the VT in parent fabric once the job reaches terminal state in all child fabrics.
-
-
Constructor Summary
Constructors Constructor Description TerminalStateTopicCheckerForParentController(VeniceParentHelixAdmin parentController, HelixReadOnlyStoreConfigRepository storeConfigRepository, long checkDelayInMs)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
CausesTerminalStateTopicCheckerForParentController
task to stop executing.void
run()
-
-
-
Constructor Detail
-
TerminalStateTopicCheckerForParentController
public TerminalStateTopicCheckerForParentController(VeniceParentHelixAdmin parentController, HelixReadOnlyStoreConfigRepository storeConfigRepository, long checkDelayInMs)
-
-
Method Detail
-
close
public void close()
CausesTerminalStateTopicCheckerForParentController
task to stop executing.- Specified by:
close
in interfacejava.lang.AutoCloseable
- Specified by:
close
in interfacejava.io.Closeable
-
run
public void run()
- Specified by:
run
in interfacejava.lang.Runnable
-
-