Investigate changes in SERVER-128506: Create a new optional top-level oplog entry field h (document hash)

XMLWordPrintableJSON

    • Type: Investigation
    • Resolution: Unresolved
    • None
    • Affects Version/s: None
    • Component/s: None
    • Tools and Replicator
    • 4

      Original Downstream Change Summary

      Adds a new optional top-level oplog field h (document hash) to DurableReplOperation/oplog entries. This is only a schema change, no producer or consumer is wired yet. Downstream oplog parsers should tolerate the presence or absence of h.

      Description of Linked Ticket

      Context

      Adds a new optional top-level field h (cpp name docHash) to DurableReplOperation in oplog_entry.idl
      This ticket only adds the field to the oplog entry. Nothing should produce or read h yet.

      This h field will eventually carry a hash of the document affected by an insert, update, or delete operation.

      h must be optional. This is because older binaries, feature-off, FCV downgrade, and unsupported collections will produce oplog entries without it, and a required field would fail to parse those entries.

      Acceptance criteria

      • h added to DurableReplOperation as optional: true, as a int32 safeInt.
      • Round-trip test: a DurableReplOperation without h parses without error.
      • Round-trip test: a DurableReplOperation with h serializes and deserializes to the same value without error.
      • No producer or consumer wired
      • Marked downstream-impacting; tools team notified per the Downstream Impact process.

            Assignee:
            Felipe Gasper
            Reporter:
            Backlog - Core Eng Program Management Team
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: