Class PushStatusStoreReader
- java.lang.Object
-
- com.linkedin.venice.pushstatushelper.PushStatusStoreReader
-
- All Implemented Interfaces:
java.io.Closeable,java.lang.AutoCloseable
public class PushStatusStoreReader extends java.lang.Object implements java.io.CloseableThis class is a helper class for Venice controller to read PushStatus / Heartbeat messages.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classPushStatusStoreReader.InstanceStatus
-
Constructor Summary
Constructors Constructor Description PushStatusStoreReader(com.linkedin.d2.balancer.D2Client d2Client, java.lang.String clusterDiscoveryD2ServiceName, long heartbeatExpirationTimeInSeconds)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()longgetHeartbeat(java.lang.String storeName, java.lang.String instanceName)PushStatusStoreReader.InstanceStatusgetInstanceStatus(java.lang.String storeName, java.lang.String instanceName)java.util.Map<java.lang.CharSequence,java.lang.Integer>getPartitionStatus(java.lang.String storeName, int version, int partitionId, java.util.Optional<java.lang.String> incrementalPushVersion)java.util.Map<java.lang.CharSequence,java.lang.Integer>getPartitionStatus(java.lang.String storeName, int version, int partitionId, java.util.Optional<java.lang.String> incrementalPushVersion, java.util.Optional<java.lang.String> incrementalPushPrefix)java.util.Map<java.lang.Integer,java.util.Map<java.lang.CharSequence,java.lang.Integer>>getPartitionStatuses(java.lang.String storeName, int storeVersion, java.lang.String incrementalPushVersion, int numberOfPartitions)Return statuses of all replicas belonging to partitions with partitionIds in the range [0 (inclusive), numberOfPartitions (exclusive)) {partitionId: {instance:status, instance:status,...},...}java.util.Map<java.lang.Integer,java.util.Map<java.lang.CharSequence,java.lang.Integer>>getPartitionStatuses(java.lang.String storeName, int storeVersion, java.lang.String incrementalPushVersion, int numberOfPartitions, int batchGetLimit)java.util.Map<java.lang.Integer,java.util.Map<java.lang.CharSequence,java.lang.Integer>>getPartitionStatuses(java.lang.String storeName, int storeVersion, java.lang.String incrementalPushVersion, java.util.Set<java.lang.Integer> partitionIds, java.util.Optional<java.lang.Integer> batchGetLimitOption)Return statuses of all replicas belonging to partitions mentioned in partitionIds.java.util.Map<java.lang.CharSequence,java.lang.Integer>getSupposedlyOngoingIncrementalPushVersions(java.lang.String storeName, int storeVersion)java.util.Map<java.lang.CharSequence,java.lang.Integer>getVersionStatus(java.lang.String storeName, int version, java.util.Optional<java.lang.String> incrementalPushVersion)booleanisInstanceAlive(java.lang.String storeName, java.lang.String instanceName)
-
-
-
Method Detail
-
getVersionStatus
public java.util.Map<java.lang.CharSequence,java.lang.Integer> getVersionStatus(java.lang.String storeName, int version, java.util.Optional<java.lang.String> incrementalPushVersion)
-
getPartitionStatus
public java.util.Map<java.lang.CharSequence,java.lang.Integer> getPartitionStatus(java.lang.String storeName, int version, int partitionId, java.util.Optional<java.lang.String> incrementalPushVersion)
-
getPartitionStatus
public java.util.Map<java.lang.CharSequence,java.lang.Integer> getPartitionStatus(java.lang.String storeName, int version, int partitionId, java.util.Optional<java.lang.String> incrementalPushVersion, java.util.Optional<java.lang.String> incrementalPushPrefix)
-
getPartitionStatuses
public java.util.Map<java.lang.Integer,java.util.Map<java.lang.CharSequence,java.lang.Integer>> getPartitionStatuses(java.lang.String storeName, int storeVersion, java.lang.String incrementalPushVersion, int numberOfPartitions)Return statuses of all replicas belonging to partitions with partitionIds in the range [0 (inclusive), numberOfPartitions (exclusive)) {partitionId: {instance:status, instance:status,...},...}
-
getPartitionStatuses
public java.util.Map<java.lang.Integer,java.util.Map<java.lang.CharSequence,java.lang.Integer>> getPartitionStatuses(java.lang.String storeName, int storeVersion, java.lang.String incrementalPushVersion, int numberOfPartitions, int batchGetLimit)
-
getPartitionStatuses
public java.util.Map<java.lang.Integer,java.util.Map<java.lang.CharSequence,java.lang.Integer>> getPartitionStatuses(java.lang.String storeName, int storeVersion, java.lang.String incrementalPushVersion, java.util.Set<java.lang.Integer> partitionIds, java.util.Optional<java.lang.Integer> batchGetLimitOption)Return statuses of all replicas belonging to partitions mentioned in partitionIds. If status is not available for a partition then empty map will be returned as a value for that partition. {partitionId: {instance:status, instance:status,...},...}
-
getHeartbeat
public long getHeartbeat(java.lang.String storeName, java.lang.String instanceName)- Parameters:
instanceName- = [hostname + appName]
-
isInstanceAlive
public boolean isInstanceAlive(java.lang.String storeName, java.lang.String instanceName)
-
getInstanceStatus
public PushStatusStoreReader.InstanceStatus getInstanceStatus(java.lang.String storeName, java.lang.String instanceName)
-
getSupposedlyOngoingIncrementalPushVersions
public java.util.Map<java.lang.CharSequence,java.lang.Integer> getSupposedlyOngoingIncrementalPushVersions(java.lang.String storeName, int storeVersion)
-
close
public void close()
- Specified by:
closein interfacejava.lang.AutoCloseable- Specified by:
closein interfacejava.io.Closeable
-
-