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

Handle write errors and other transient errors if any

    XMLWordPrintableJSON

Details

    • Icon: Task Task
    • Resolution: Fixed
    • Icon: Major - P3 Major - P3
    • 7.2.0-rc0
    • None
    • None
    • None
    • Sharding NYC
    • Fully Compatible

    Description

      After we have a retry loop structure, figure out how are errors handled; what kind of errors need to be retried at the loop structure, and what kind at the "execute()" stub function. What kinds of errors result in stopping of work. How and where are interrupts and cancellations handled for this code path?

      EDIT: With the changes incorporated in code to interface easily with BulkWriteAPI, we will need to handle retryable/non-retryable errors smartly when calling WriteOp:noteWriteWithoutShardKeyWithIdResponse() and later when checking targeter.hasStaleShardResponse() in executeNonTargetedSingleWriteWithoutShardKeyWithId() so that we don't reset the WriteOp after marking it completed

      Thanks to kaitlin.mahar@mongodb.com for catching this in code review.

      Attachments

        Activity

          People

            abdul.qadeer@mongodb.com Abdul Qadeer
            abdul.qadeer@mongodb.com Abdul Qadeer
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: