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

Investigate the need for session_asio.cpp ASIOSession blocking calls

    • Type: Icon: Improvement Improvement
    • Resolution: Duplicate
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • Service Arch
    • 3

      The C++ ASIO library provides both synchronous and asynchronous network operations, where the main difference is a synchronous call blocks the thread calling to it while the asynchronous has its callback eventually called to. To make it even worse, some methods depend on an internal boolean flag to decide which one to call. This is a slippery slope for first-time readers.

      This is a time boxed investigation effort to understand, document and potentially change the behavior. I would like to believe blocking calls aren't pervasively used, and if so, could be retired to their own codepath / file / class...

            Assignee:
            backlog-server-servicearch [DO NOT USE] Backlog - Service Architecture
            Reporter:
            daniel.morilha@mongodb.com Daniel Morilha (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:
              Resolved: