Ignore benign consistency errors in `DataConsistencyChecker.canIgnoreCollectionDiff`

XMLWordPrintableJSON

    • Type: Bug
    • Resolution: Fixed
    • Priority: Major - P3
    • 9.0.0-rc1
    • Affects Version/s: None
    • Component/s: None
    • None
    • Replication
    • Fully Compatible
    • ALL
    • 200
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      In DataConsistencyChecker.canIgnoreCollectionDiff, the case where we find a mismatch in the config.image_collection collection is handled differently.

      We are aware that this collection can be unreliable, so we use the invalidated property to disambiguate real data inconsistency from false positives.

      However, because of the unstable nature of this collection, it is very difficult to rigorously prove that we can always trust this field.
      Furthermore, according to this comment, if the txnNumber fields are different, then our retry logic will handle the mismatch appropriately, and worst-case scenario: a retryable write might fail, but no data loss or corruption will actually occur.

      As a result, I think we should relax our special-case logic for confg.image_collection to only return false (as in we should not ignore) if doc1.txnNumber === doc2.txnNumber, since this is the only time where we might actually have a problematic correctness issue.

            Assignee:
            Joseph Obaraye
            Reporter:
            Joseph Obaraye
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: