Uploaded image for project: 'Node.js Driver'
  1. Node.js Driver
  2. NODE-4063

Improve BulkWrite organization remove BulkWriteShimOperation

    • Type: Icon: Improvement Improvement
    • Resolution: Unresolved
    • Priority: Icon: Minor - P4 Minor - P4
    • None
    • Affects Version/s: None
    • Component/s: Operations Layer
    • Labels:

      Use Case

      As a node driver engineer
      I want a single path that operations take through the operation layer
      So that reasoning about the many features of an operation is easier.

      User Impact

      Bugginess related to bulkWrite due to it's "special" casing. It's logic doesn't follow the rest of our operation implementations.

      Dependencies

      • None

      Unknowns

      Acceptance Criteria

      • Refactor Bulk to not be an operation, the batching logic can be done to convert the many operations in to a list of normal AbstractOperation subclasses
      • Loop over the operations, standardized error handling, documented merging

      Implementation Requirements

      • Remove the BulkOperationShim class, it shouldn't be needed to execute a series of operations
      • Obtaining a shared session could be made easier

      Testing Requirements

      • Make sure to test against a sharded cluster (session)

      Documentation Requirements

      • None

      Follow Up Requirements

      • Move bulk related logic into operations folder

            Assignee:
            Unassigned Unassigned
            Reporter:
            neal.beeken@mongodb.com Neal Beeken
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: