private void HandleTopologyUpdate(MessageStreamWriter <StorageMessageUnion> writer) { node.UpdateTopology(); writer.Write(new StorageMessageUnion.Builder { Type = StorageMessageType.TopologyUpdated }.Build()); }
private void AssertMatchingTopologyVersion(int topologyVersionFromClient) { if (TopologyVersion == topologyVersionFromClient) { return; } //client thinks that the version is newer if (topologyVersionFromClient > TopologyVersion) { log.InfoFormat("Got request for topology {0} but current local version is {1}, forcing topology update, request will still fail", topologyVersionFromClient, TopologyVersion); distributedHashTableNode.UpdateTopology(); } else { log.InfoFormat("Got request for topology {0} but current local version is {1}", topologyVersionFromClient, TopologyVersion); } throw new TopologyVersionDoesNotMatchException( "Topology Version doesn't match, you need to refresh the topology from the master"); }