Package com.linkedin.davinci.helix
Class LeaderFollowerPartitionStateModelFactory
- java.lang.Object
-
- org.apache.helix.participant.statemachine.StateModelFactory<org.apache.helix.participant.statemachine.StateModel>
-
- com.linkedin.davinci.helix.AbstractStateModelFactory
-
- com.linkedin.davinci.helix.LeaderFollowerPartitionStateModelFactory
-
- Direct Known Subclasses:
LeaderFollowerPartitionStateModelDualPoolFactory
public class LeaderFollowerPartitionStateModelFactory extends AbstractStateModelFactory
State Transition Handler factory for handling Leader/Follower resources in the storage node.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
LeaderFollowerPartitionStateModelFactory.LeaderFollowerThreadPoolStrategy
The leader follower state thread pool strategy specifies how thread pools are allocated for Helix state transition.
-
Field Summary
-
Fields inherited from class com.linkedin.davinci.helix.AbstractStateModelFactory
executorService, instanceName, logger, partitionPushStatusAccessorFuture, stateTransitionStats, storeMetadataRepo
-
-
Constructor Summary
Constructors Constructor Description LeaderFollowerPartitionStateModelFactory(IngestionBackend ingestionBackend, VeniceConfigLoader configService, java.util.concurrent.ExecutorService executorService, ParticipantStateTransitionStats stateTransitionStats, ReadOnlyStoreRepository metadataRepo, java.util.concurrent.CompletableFuture<HelixPartitionStatusAccessor> partitionPushStatusAccessorFuture, java.lang.String instanceName, HeartbeatMonitoringService heartbeatMonitoringService)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description LeaderFollowerPartitionStateModel
createNewStateModel(java.lang.String resourceName, java.lang.String partitionName)
This method will be invoked only once per partition per session-
Methods inherited from class com.linkedin.davinci.helix.AbstractStateModelFactory
getConfigService, getExecutorService, getIngestionBackend, getStateModelID, getStateTransitionStats, getStoreMetadataRepo, shutDownExecutor, waitExecutorTermination
-
Methods inherited from class org.apache.helix.participant.statemachine.StateModelFactory
createAndAddBatchMessageWrapper, createAndAddStateModel, createAndAddStateModel, createBatchMessageWrapper, createNewStateModel, getBatchMessageWrapper, getExecutorService, getExecutorService, getPartitionSet, getPartitionSet, getResourceSet, getStateModel, getStateModel, removeStateModel, removeStateModel
-
-
-
-
Constructor Detail
-
LeaderFollowerPartitionStateModelFactory
public LeaderFollowerPartitionStateModelFactory(IngestionBackend ingestionBackend, VeniceConfigLoader configService, java.util.concurrent.ExecutorService executorService, ParticipantStateTransitionStats stateTransitionStats, ReadOnlyStoreRepository metadataRepo, java.util.concurrent.CompletableFuture<HelixPartitionStatusAccessor> partitionPushStatusAccessorFuture, java.lang.String instanceName, HeartbeatMonitoringService heartbeatMonitoringService)
-
-
Method Detail
-
createNewStateModel
public LeaderFollowerPartitionStateModel createNewStateModel(java.lang.String resourceName, java.lang.String partitionName)
Description copied from class:AbstractStateModelFactory
This method will be invoked only once per partition per session- Specified by:
createNewStateModel
in classAbstractStateModelFactory
- Parameters:
resourceName
- $(topic_name) where state transition is happeningpartitionName
- $(topic_name)_$(partition) for which the State Transition Handler is required- Returns:
- VenicePartitionStateModel for the partition.
-
-