Package com.linkedin.venice.pushmonitor
Class PartitionStatusBasedPushMonitor
java.lang.Object
com.linkedin.venice.pushmonitor.AbstractPushMonitor
com.linkedin.venice.pushmonitor.PartitionStatusBasedPushMonitor
- All Implemented Interfaces:
RoutingDataRepository.RoutingDataChangedListener,PartitionStatusListener,PushMonitor
An implementation of
AbstractPushMonitor that listens to ZK PartitionStatus
to determine the push status.-
Nested Class Summary
Nested classes/interfaces inherited from class com.linkedin.venice.pushmonitor.AbstractPushMonitor
AbstractPushMonitor.CurrentVersionChangeNotifier -
Field Summary
Fields inherited from class com.linkedin.venice.pushmonitor.AbstractPushMonitor
MAX_PUSH_TO_KEEP -
Constructor Summary
ConstructorsConstructorDescriptionPartitionStatusBasedPushMonitor(String clusterName, OfflinePushAccessor offlinePushAccessor, StoreCleaner storeCleaner, ReadWriteStoreRepository metadataRepository, RoutingDataRepository routingDataRepository, AggPushHealthStats aggPushHealthStats, RealTimeTopicSwitcher realTimeTopicSwitcher, ClusterLockManager clusterLockManager, String aggregateRealTimeSourceKafkaUrl, List<String> activeActiveRealTimeSourceKafkaURLs, HelixAdminClient helixAdminClient, VeniceControllerClusterConfig controllerConfig, PushStatusStoreReader pushStatusStoreReader, DisabledPartitionStats disabledPartitionStats, VeniceWriterFactory veniceWriterFactory, AbstractPushMonitor.CurrentVersionChangeNotifier currentVersionChangeNotifier) -
Method Summary
Modifier and TypeMethodDescriptionprotected ExecutionStatusWithDetailscheckPushStatus(OfflinePushStatus pushStatus, PartitionAssignment partitionAssignment, DisableReplicaCallback callback) Checking push status based on Venice offlinePush statusgetReadyToServeInstances(PartitionAssignment partitionAssignment, int partitionId) voidonPartitionStatusChange(OfflinePushStatus offlinePushStatus) Methods inherited from class com.linkedin.venice.pushmonitor.AbstractPushMonitor
checkWhetherToStartEOPProcedures, cleanupStoreStatus, getDisableReplicaCallback, getDurationInSec, getIncrementalPushStatusAndDetails, getIncrementalPushStatusFromPushStatusStore, getOfflinePush, getOfflinePushAccessor, getOfflinePushOrThrow, getOfflinePushStatusForStore, getOngoingIncrementalPushVersions, getOngoingIncrementalPushVersions, getPushStatus, getPushStatusAndDetails, getReadWriteStoreRepository, getRealTimeTopicSwitcher, getRoutingDataRepository, getTopicsOfOngoingOfflinePushes, getUncompletedPartitions, handleCompletedPush, handleErrorPush, handleTerminalOfflinePushUpdate, isOfflinePushMonitorDaVinciPushStatusEnabled, loadAllPushes, markOfflinePushAsError, onCustomizedViewAdded, onCustomizedViewChange, onExternalViewChange, onPartitionStatusChange, onRoutingDataDeleted, recordPushPreparationDuration, refreshAndUpdatePushStatus, retireOldErrorPushes, setRealTimeTopicSwitcher, startMonitorOfflinePush, stopAllMonitoring, stopMonitorOfflinePush, updateOfflinePush, updatePushStatus
-
Constructor Details
-
PartitionStatusBasedPushMonitor
public PartitionStatusBasedPushMonitor(String clusterName, OfflinePushAccessor offlinePushAccessor, StoreCleaner storeCleaner, ReadWriteStoreRepository metadataRepository, RoutingDataRepository routingDataRepository, AggPushHealthStats aggPushHealthStats, RealTimeTopicSwitcher realTimeTopicSwitcher, ClusterLockManager clusterLockManager, String aggregateRealTimeSourceKafkaUrl, List<String> activeActiveRealTimeSourceKafkaURLs, HelixAdminClient helixAdminClient, VeniceControllerClusterConfig controllerConfig, PushStatusStoreReader pushStatusStoreReader, DisabledPartitionStats disabledPartitionStats, VeniceWriterFactory veniceWriterFactory, AbstractPushMonitor.CurrentVersionChangeNotifier currentVersionChangeNotifier)
-
-
Method Details
-
onPartitionStatusChange
- Overrides:
onPartitionStatusChangein classAbstractPushMonitor
-
checkPushStatus
protected ExecutionStatusWithDetails checkPushStatus(OfflinePushStatus pushStatus, PartitionAssignment partitionAssignment, DisableReplicaCallback callback) Checking push status based on Venice offlinePush status- Specified by:
checkPushStatusin classAbstractPushMonitor
-
getReadyToServeInstances
public List<Instance> getReadyToServeInstances(PartitionAssignment partitionAssignment, int partitionId) - Specified by:
getReadyToServeInstancesin interfacePushMonitor- Specified by:
getReadyToServeInstancesin classAbstractPushMonitor
-