Package alluxio.master
Class PollingMasterInquireClient
- java.lang.Object
-
- alluxio.master.PollingMasterInquireClient
-
- All Implemented Interfaces:
MasterInquireClient
public class PollingMasterInquireClient extends java.lang.Object implements MasterInquireClient
PollingMasterInquireClient finds the address of the primary master by polling a list of master addresses to see if their RPC servers are serving. This works because only primary masters serve RPCs.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
PollingMasterInquireClient.MultiMasterConnectDetails
Details used to connect to the leader Alluxio master when there are multiple potential leaders.-
Nested classes/interfaces inherited from interface alluxio.master.MasterInquireClient
MasterInquireClient.ConnectDetails, MasterInquireClient.Factory
-
-
Constructor Summary
Constructors Constructor Description PollingMasterInquireClient(java.util.List<java.net.InetSocketAddress> masterAddresses, AlluxioConfiguration alluxioConf, UserState userState, alluxio.grpc.ServiceType serviceType)
PollingMasterInquireClient(java.util.List<java.net.InetSocketAddress> masterAddresses, java.util.function.Supplier<RetryPolicy> retryPolicySupplier, AlluxioConfiguration alluxioConf, alluxio.grpc.ServiceType serviceType)
PollingMasterInquireClient(java.util.List<java.net.InetSocketAddress> masterAddresses, java.util.function.Supplier<RetryPolicy> retryPolicySupplier, AlluxioConfiguration alluxioConf, UserState userState, alluxio.grpc.ServiceType serviceType)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description MasterInquireClient.ConnectDetails
getConnectDetails()
Returns canonical connect details representing how this client connects to the master.java.util.List<java.net.InetSocketAddress>
getMasterRpcAddresses()
java.net.InetSocketAddress
getPrimaryRpcAddress()
-
-
-
Constructor Detail
-
PollingMasterInquireClient
public PollingMasterInquireClient(java.util.List<java.net.InetSocketAddress> masterAddresses, AlluxioConfiguration alluxioConf, UserState userState, alluxio.grpc.ServiceType serviceType)
- Parameters:
masterAddresses
- the potential master addressesalluxioConf
- Alluxio configurationuserState
- user stateserviceType
- service type
-
PollingMasterInquireClient
public PollingMasterInquireClient(java.util.List<java.net.InetSocketAddress> masterAddresses, java.util.function.Supplier<RetryPolicy> retryPolicySupplier, AlluxioConfiguration alluxioConf, alluxio.grpc.ServiceType serviceType)
- Parameters:
masterAddresses
- the potential master addressesretryPolicySupplier
- the retry policy supplieralluxioConf
- Alluxio configurationserviceType
- service type
-
PollingMasterInquireClient
public PollingMasterInquireClient(java.util.List<java.net.InetSocketAddress> masterAddresses, java.util.function.Supplier<RetryPolicy> retryPolicySupplier, AlluxioConfiguration alluxioConf, UserState userState, alluxio.grpc.ServiceType serviceType)
- Parameters:
masterAddresses
- the potential master addressesretryPolicySupplier
- the retry policy supplieralluxioConf
- Alluxio configurationuserState
- user stateserviceType
- service type
-
-
Method Detail
-
getPrimaryRpcAddress
public java.net.InetSocketAddress getPrimaryRpcAddress() throws UnavailableException
- Specified by:
getPrimaryRpcAddress
in interfaceMasterInquireClient
- Returns:
- the rpc address of the primary master. The implementation should perform retries if appropriate
- Throws:
UnavailableException
- if the primary rpc address cannot be determined
-
getMasterRpcAddresses
public java.util.List<java.net.InetSocketAddress> getMasterRpcAddresses()
- Specified by:
getMasterRpcAddresses
in interfaceMasterInquireClient
- Returns:
- a list of all masters' RPC addresses
-
getConnectDetails
public MasterInquireClient.ConnectDetails getConnectDetails()
Description copied from interface:MasterInquireClient
Returns canonical connect details representing how this client connects to the master.- Specified by:
getConnectDetails
in interfaceMasterInquireClient
- Returns:
- the connect details
-
-