public interface DiscoveryCustomMessage extends Serializable
GridDiscoveryManager.sendCustomEvent(DiscoveryCustomMessage)
call, message firstly goes to current coordinator, is verified there and after that gets sent to the cluster.
Only after verification it is delivered to listeners on all nodes starting from coordinator.
To register a listener GridDiscoveryManager.setCustomEventListener(Class, CustomEventListener) method is used.
Discovery protocol guarantees include:
TcpDiscoveryNodeAddedMessage and
TcpDiscoveryNodeAddFinishedMessage messages.
It is guaranteed that all discovery messages observed by coordinator in between these two messages
are reordered and guaranteed to be delivered to newly joined node.
ackMessage() method call.
If there were messages of this type in between TcpDiscoveryNodeAddedMessage and
TcpDiscoveryNodeAddFinishedMessage messages, they won't be delivered to new joiner node.
| Modifier and Type | Method and Description |
|---|---|
@Nullable DiscoveryCustomMessage |
ackMessage()
Called when custom message has been handled by all nodes.
|
DiscoCache |
createDiscoCache(GridDiscoveryManager mgr,
AffinityTopologyVersion topVer,
DiscoCache discoCache)
Creates new discovery cache if message caused topology version change.
|
IgniteUuid |
id() |
boolean |
isMutable() |
default boolean |
stopProcess()
|
IgniteUuid id()
@Nullable @Nullable DiscoveryCustomMessage ackMessage()
null if ack is not required.boolean isMutable()
True if message can be modified during listener notification. Changes will be sent to next nodes.default boolean stopProcess()
True if message should not be sent to others nodes after it was processed on coordinator.DiscoCache createDiscoCache(GridDiscoveryManager mgr, AffinityTopologyVersion topVer, DiscoCache discoCache)
mgr - Discovery manager.topVer - New topology version.discoCache - Current discovery cache.
Follow @ApacheIgnite
Ignite Database and Caching Platform : ver. 2.16.0 Release Date : December 15 2023