DUE TO SPAM, SIGN-UP IS DISABLED. Goto Selfserve wiki signup and request an account.
DUE TO SPAM, SIGN-UP IS DISABLED. Goto Selfserve wiki signup and request an account.
...
Services deployment map exchange process - is a process of change deployed services state.
Unified steps of service deployments exchangeprocess:
...
...
byte flags; // Change’s types flags [deploy, undeploy, etc.]
}
class ServicesSingleMapMessage ServicesSingleDeploymentsMessage {
ServicesDeploymentExchangeId exchIdServicesDeploymentProcessId depId;
Map<IgniteUuid, ServiceSingleDeploymentsResults> results;
...
Collection<byte[]> errors; // Serialized exceptions to avoid issues at spi-level
}
class ServicesFullMapMessage ServicesFullDeploymentsMessage {
ServicesDeploymentExchangeId exchIdServicesDeploymentProcessId depId;
Collection<ServiceFullDeploymentsResults> results;
...
Map<UUID, ServiceSingleDeploymentsResults> results; // Per node
}
class ServicesDeploymentExchangeId ServicesDeploymentProcessId {
AffinityTopologyVersion topVer;
...
All nodes handle requests of service’s state changes and put it them into deployment queue, but only the coordinator aggregates single maps deployments messages received from nodes and builds a full map deployments to finish exchange. If coordinator left or fail during deployment exchange another server node will become the coordinator and continue the process.
Each topology change event (NODE_JOIN/LEFT/FAILED event) causes service's states causes deployment task. Assignments will be recalculated and applied for each deployed service if needed.
Services reassignment process takes into account previous assignments to avoid redundant redeployments.
If left/failed node had not deployed any services, then deployment task will be finished without sending messages.
...
ServiceDeploymentFailuresPolicy describes rules of handling deployment errors during deployment exchange process. Policy is configurable per service level using ServiceConfiguration.
There were implemented 2 basic policy:
...