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

Introduce a TemporarilyUnavailable error type

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 6.0.0-rc0, 5.0.15
    • Affects Version/s: None
    • Component/s: None
    • Labels:
    • Minor Change
    • ALL
    • v5.0
    • Execution Team 2022-02-07, Execution Team 2022-02-21
    • 10

      The TemporarilyUnavailable error indicates that the operation has been aborted, likely due to excessive server load (e.g. transaction rolled back for eviction). This error is retried in the server with an increasingly larger backoff. Internal operations are retried indefinitely, user operations are retried up to a fixed number of attempts before returning TemporarilyUnavailable to the client.
      Original title: Instead of WriteConflict, return a more specialized error when oldest transactions are rolled back for eviction
      Original description: Currently, when a write operation is hitting the wt dirty threshold limit, we take the error from WiredTiger, a WT_ROLLBACK, and up-convert to a WriteConflict. This is misleading and should print something more specific instead. Something that would indicate the actual reason.

            josef.ahmad@mongodb.com Josef Ahmad
            dmitry.agranat@mongodb.com Dmitry Agranat
            0 Vote for this issue
            24 Start watching this issue