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

Allow ClientOutOfLineExecutor to skip shutdown

    XMLWordPrintable

    Details

    • Backwards Compatibility:
      Fully Compatible
    • Operating System:
      ALL
    • Backport Requested:
      v4.4
    • Linked BF Score:
      151

      Description

      Instances of ClientOutOfLineExecutor, which are decorations on Client, must be shutdown before their destructor is invoked (see here). This requirement is satisfied through destructor actions, however, it may terminate the process if an exception is thrown before the newly constructed client is moved to a UniqueClient (see here).

      We should change ClientOutOfLineExecutor to skip the invariant before the UniqueClient is constructed. We may do so by skipping the invariant before the first task is scheduled on the executor.

      Acceptance criteria: ClientOutOfLineExecutor must only require shutdown before destruction if the new Client is successfully constructed (i.e., and instance of UniqueClient is returned from ServiceContext::makeClient).

        Attachments

          Activity

            People

            Assignee:
            amirsaman.memaripour Amirsaman Memaripour
            Reporter:
            amirsaman.memaripour Amirsaman Memaripour
            Participants:
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved: