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

AsyncRequestsSender returns response with no ShardId if it fails to unyield

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 8.1.0-rc0, 8.0.0-rc7
    • Affects Version/s: None
    • Component/s: None
    • None
    • Cluster Scalability
    • Fully Compatible
    • ALL
    • v8.0
    • Cluster Scalability 2024-4-29, Cluster Scalability 2024-5-13, Cluster Scalability 2024-5-27, Cluster Scalability 2024-6-10
    • 200

      SERVER-88391 added logic to the AsyncRequestsSender to return a failed response if it fails to "unyield" its session resources. The response will include only the failed status, not a shard id, which is the only case an ARS response won't have a shard id. This breaks an assumption in the batched write execution logic (e.g. insert, update, delete through mongos) that every ARS response has a shard id, which either triggers a dassert or a segmentation fault accessing a non-existent entry in a map.

      We can either change the ARS to always return some shard id, or possibly relax users of the ARS's assumption that every response has a shard id.

            Assignee:
            cheahuychou.mao@mongodb.com Cheahuychou Mao
            Reporter:
            jack.mulrow@mongodb.com Jack Mulrow
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: