Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-92727

Wrap getKeys() calls in try/catch in dbCheck

    • Type: Icon: Task Task
    • Resolution: Unresolved
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • Replication
    • Repl 2024-08-19, Repl 2024-09-02, Repl 2024-09-16, Repl 2024-09-30

      It seems getKeys() may throw an exception, as seen in validate command output (ex. SERVER-84114). We should wrap any getKeys() calls in a try/catch and log a healthlog entry with detailed information regarding the record / keystring that failed the call.

      In addition, we should ensure that dbCheck continues with the rest of the batch if an exception is thrown. This may result in a hash mismatch for the node with the inconsistency, which is fine as this is similar behavior to how dbCheck handles corrupt BSON.

            Assignee:
            xuerui.fa@mongodb.com Xuerui Fa
            Reporter:
            xuerui.fa@mongodb.com Xuerui Fa
            Votes:
            1 Vote for this issue
            Watchers:
            7 Start watching this issue

              Created:
              Updated: