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

Update NetworkInterface::startExhaustCommand to return an ExhaustResponseReader

    • Type: Icon: Improvement Improvement
    • Resolution: Unresolved
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • None
    • Networking & Observability
    • Networking & Obs 2024-08-19, Networking & Obs 2024-09-02, Networking & Obs 2024-09-16, Networking & Obs 2024-09-30

      Today, NetworkInterface::startExhaustCommand kicks off recursive tasks for reading exhaust responses and passes each to an argument-provided callback. This prevents callers from specifying when they're ready to receive the next response, which can easily lead to bugs in practice.

      We should update NI::startExhaustCommand to return an ExhaustResponseReader (implemented in SERVER-93113) instead. As part of this, we'll need to move the recursive exhaust response work scheduling into ThreadPoolTaskExecutor, rather than in NetworkInterfaceTL. See the design for more details.

            Assignee:
            patrick.freed@mongodb.com Patrick Freed
            Reporter:
            patrick.freed@mongodb.com Patrick Freed
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: