public final class MetadataUpdateProposedMessage extends Object implements DiscoveryCustomMessage
MetadataUpdateAcceptedMessage messages make a basis for
discovery-based protocol for exchanging metadata describing objects in binary format stored in Ignite caches.
All interactions with binary metadata are performed through BinaryMetadataHandler
interface implemented in CacheObjectBinaryProcessorImpl processor.
Protocol works as follows:
ack is sent.
Ack has the same accepted version as pending version
of initial MetadataUpdateProposedMessage message.
MetadataUpdateAcceptedMessage arrives with accepted version
equals to pending version of this metadata to the moment when is was initially read by the thread.| Constructor and Description |
|---|
MetadataUpdateProposedMessage(BinaryMetadata metadata,
UUID origNodeId) |
| Modifier and Type | Method and Description |
|---|---|
@Nullable DiscoveryCustomMessage |
ackMessage()
Called when custom message has been handled by all nodes.
|
@Nullable DiscoCache |
createDiscoCache(GridDiscoveryManager mgr,
AffinityTopologyVersion topVer,
DiscoCache discoCache)
Creates new discovery cache if message caused topology version change.
|
IgniteUuid |
id() |
boolean |
isMutable() |
BinaryMetadata |
metadata() |
void |
metadata(BinaryMetadata metadata) |
String |
toString() |
int |
typeId() |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitstopProcesspublic MetadataUpdateProposedMessage(BinaryMetadata metadata, UUID origNodeId)
metadata - BinaryMetadata requested to be updated.origNodeId - ID of node requested update.public IgniteUuid id()
id in interface DiscoveryCustomMessage@Nullable public @Nullable DiscoveryCustomMessage ackMessage()
ackMessage in interface DiscoveryCustomMessagenull if ack is not required.public boolean isMutable()
isMutable in interface DiscoveryCustomMessageTrue if message can be modified during listener notification. Changes will be sent to next nodes.@Nullable public @Nullable DiscoCache createDiscoCache(GridDiscoveryManager mgr, AffinityTopologyVersion topVer, DiscoCache discoCache)
createDiscoCache in interface DiscoveryCustomMessagemgr - Discovery manager.topVer - New topology version.discoCache - Current discovery cache.public BinaryMetadata metadata()
public void metadata(BinaryMetadata metadata)
metadata - Metadata.public int typeId()
Follow @ApacheIgnite
Ignite Database and Caching Platform : ver. 2.15.0 Release Date : April 25 2023