internal void AddNode(KeyManager manager, int nodeId) { Debug.Assert(!_nodeIds.Contains(nodeId), "don't add existing node to partition"); _nodeIds.Add(nodeId); manager._identifiers[nodeId].Partition = this; }
/// <summary> /// A result is merged with another when it is merged as part of an equi-join. /// </summary> /// <remarks> /// In theory, this should only ever be called on two keys (since we only join on /// keys). We throw in the base implementation, and override in KeyResult. By convention /// the principal key is always the first result in the chain (in case of an RIC). In /// addition, entity entries always appear before relationship entries. /// </remarks> /// <param name="other">Result to merge with.</param> /// <returns>Merged result.</returns> internal virtual PropagatorResult Merge(KeyManager keyManager, PropagatorResult other) { throw EntityUtil.InternalError(EntityUtil.InternalErrorCode.UpdatePipelineResultRequestInvalid, 0, "PropagatorResult.Merge"); }