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

ShardingTaskExecutor::scheduleRemoteCommand should not run passed callback before processing metadata

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 3.5.8
    • Affects Version/s: None
    • Component/s: Sharding
    • None
    • Sharding
    • Fully Compatible
    • ALL
    • 0

      Also add comment in task_executor.h that implementations for scheduleWork/scheduleWorkAt/scheduleRemoteCommand should ensure that the passed callback is the last thing that gets called (no post processing directly related to the callback request).

      orig title: AsyncRequestsSender::_ready should wait for callback to finish running before returning data
      orig description: Currently, it just clears the handle from the executor and never explicitly waits for it to finish. It looks like AsyncResultsMerger may also have the same issue.

            Assignee:
            backlog-server-sharding [DO NOT USE] Backlog - Sharding Team
            Reporter:
            randolph@mongodb.com Randolph Tan
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: