3.1.7.32 Record Conflict Resolution

When a record is received in a FLOOD message and the local node already has a record with that record ID in its database, the local node MUST determine whether the received record is "newer" (will replace the existing record), "already present" (the Records are the same), or "older". The decision MUST be made as follows:

  • If the Record Versions are different, the record with the higher Version is "newer", and the other is "older".

  • Otherwise, if one record has been updated (Last Modified By ID is not empty), but the other has not, the record that was updated is "newer", and the other is "older".

  • Otherwise, if the Last Modified By ID fields are different, the Record that has the lexigraphically higher value is "newer", and the other is "older".

  • Otherwise, if the Last Modification Time is different, the Record with the higher value is "newer", and the other is "older".

  • Otherwise, if the record Security Data Size is different, the record with the larger value is "newer", and the other is "older".

  • Otherwise, if the record Security Data is different, the Record with the higher value is "newer", and the other is "older".

  • Otherwise, the record is "already present".