Package org.apache.cassandra.schema
Class MigrationCoordinator
- java.lang.Object
-
- org.apache.cassandra.schema.MigrationCoordinator
-
public class MigrationCoordinator extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringIGNORED_ENDPOINTS_PROPstatic java.lang.StringIGNORED_VERSIONS_PROPstatic MigrationCoordinatorinstance
-
Constructor Summary
Constructors Constructor Description MigrationCoordinator()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanawaitSchemaRequests(long waitMillis)Wait until we've received schema responses for all versions we're aware ofintgetInflightTasks()protected intgetMaxOutstandingVersionRequests()protected org.apache.cassandra.schema.MigrationCoordinator.VersionInfogetVersionInfoUnsafe(java.util.UUID version)protected booleanisAlive(InetAddressAndPort endpoint)protected booleanisLocalVersion(java.util.UUID version)protected voidmergeSchemaFrom(InetAddressAndPort endpoint, java.util.Collection<Mutation> mutations)java.util.Map<java.util.UUID,java.util.Set<InetAddressAndPort>>outstandingVersions()voidremoveAndIgnoreEndpoint(InetAddressAndPort endpoint)java.util.concurrent.Future<java.lang.Void>reportEndpointVersion(InetAddressAndPort endpoint, java.util.UUID version)java.util.concurrent.Future<java.lang.Void>reportEndpointVersion(InetAddressAndPort endpoint, EndpointState state)voidreset()protected voidsendMigrationMessage(org.apache.cassandra.schema.MigrationCoordinator.Callback callback)static voidsetUptimeFn(java.util.function.LongSupplier supplier)protected booleanshouldPullFromEndpoint(InetAddressAndPort endpoint)protected booleanshouldPullImmediately(InetAddressAndPort endpoint, java.util.UUID version)protected booleanshouldPullSchema(java.util.UUID version)voidstart()
-
-
-
Field Detail
-
instance
public static final MigrationCoordinator instance
-
IGNORED_VERSIONS_PROP
public static final java.lang.String IGNORED_VERSIONS_PROP
- See Also:
- Constant Field Values
-
IGNORED_ENDPOINTS_PROP
public static final java.lang.String IGNORED_ENDPOINTS_PROP
- See Also:
- Constant Field Values
-
-
Method Detail
-
setUptimeFn
public static void setUptimeFn(java.util.function.LongSupplier supplier)
-
start
public void start()
-
reset
public void reset()
-
outstandingVersions
public java.util.Map<java.util.UUID,java.util.Set<InetAddressAndPort>> outstandingVersions()
-
getVersionInfoUnsafe
protected org.apache.cassandra.schema.MigrationCoordinator.VersionInfo getVersionInfoUnsafe(java.util.UUID version)
-
getMaxOutstandingVersionRequests
protected int getMaxOutstandingVersionRequests()
-
isAlive
protected boolean isAlive(InetAddressAndPort endpoint)
-
shouldPullSchema
protected boolean shouldPullSchema(java.util.UUID version)
-
shouldPullFromEndpoint
protected boolean shouldPullFromEndpoint(InetAddressAndPort endpoint)
-
shouldPullImmediately
protected boolean shouldPullImmediately(InetAddressAndPort endpoint, java.util.UUID version)
-
isLocalVersion
protected boolean isLocalVersion(java.util.UUID version)
-
reportEndpointVersion
public java.util.concurrent.Future<java.lang.Void> reportEndpointVersion(InetAddressAndPort endpoint, java.util.UUID version)
-
reportEndpointVersion
public java.util.concurrent.Future<java.lang.Void> reportEndpointVersion(InetAddressAndPort endpoint, EndpointState state)
-
removeAndIgnoreEndpoint
public void removeAndIgnoreEndpoint(InetAddressAndPort endpoint)
-
mergeSchemaFrom
protected void mergeSchemaFrom(InetAddressAndPort endpoint, java.util.Collection<Mutation> mutations)
-
sendMigrationMessage
protected void sendMigrationMessage(org.apache.cassandra.schema.MigrationCoordinator.Callback callback)
-
getInflightTasks
public int getInflightTasks()
-
awaitSchemaRequests
public boolean awaitSchemaRequests(long waitMillis)
Wait until we've received schema responses for all versions we're aware of- Parameters:
waitMillis-- Returns:
- true if response for all schemas were received, false if we timed out waiting
-
-