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

CollectionBulkLoader does not anticipate exceptions from MultiIndexBlock

    XMLWordPrintable

    Details

    • Backwards Compatibility:
      Fully Compatible
    • Operating System:
      ALL
    • Backport Requested:
      v4.2, v4.0
    • Sprint:
      Repl 2019-09-09

      Description

      Currently, CollectionBulkLoaderImpl uses CollectionBulkLoaderImpl::_runTaskReleaseResourcesOnFailure() to wrap function calls into other components such as the MultiIndexBlock index builder component. CollectionBulkLoaderImpl::_runTaskReleaseResourcesOnFailure() assumes no exceptions will reach its top level, since it catches all exceptions and immediately calls std::terminate() when they are caught.

      Since some MultiIndexBlock functions can uassert, I believe we ought to convert exceptions into Statuses either in CollectionBulkLoaderImpl at its call sites, or within the MultiIndexBlock functions themselves.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              mihai.andrei Mihai Andrei
              Reporter:
              milkie Eric Milkie
              Participants:
              Votes:
              0 Vote for this issue
              Watchers:
              9 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: