Uploaded image for project: 'Drivers'
  1. Drivers
  2. DRIVERS-3184

Assert unset BulkWriteException.partialResult in CRUD prose tests

    • Type: Icon: Task Task
    • Resolution: Unresolved
    • Priority: Icon: Minor - P4 Minor - P4
    • None
    • Component/s: Bulk API
    • Needed
    • Hide

      Summary of necessary driver changes

      • Assert unset BulkWriteException.partialResult in CRUD prose tests 12 and 13.

      Commits for syncing spec/prose tests

      Show
      Summary of necessary driver changes Assert unset  BulkWriteException.partialResult in CRUD prose tests 12 and 13. Commits for syncing spec/prose tests https://github.com/mongodb/specifications/commit/63e382ee72e63ea65dfb3dd8eff7af7bb7fbb568
    • $i18n.getText("admin.common.words.hide")
      Key Status/Resolution FixVersion
      CDRIVER-6001 Duplicate
      CXX-3284 Backlog
      CSHARP-5582 Backlog
      GODRIVER-3549 Backlog
      JAVA-5869 Needs Triage
      NODE-6942 Needs Triage
      MOTOR-1461 Duplicate
      PYTHON-5374 Backlog
      PHPLIB-1677 Ready for Work
      RUBY-3666 Needs Triage
      RUST-2209 Fixed 3.3.0
      $i18n.getText("admin.common.words.show")
      #scriptField, #scriptField *{ border: 1px solid black; } #scriptField{ border-collapse: collapse; } #scriptField td { text-align: center; /* Center-align text in table cells */ } #scriptField td.key { text-align: left; /* Left-align text in the Key column */ } #scriptField a { text-decoration: none; /* Remove underlines from links */ border: none; /* Remove border from links */ } /* Add green background color to cells with FixVersion */ #scriptField td.hasFixVersion { background-color: #00FF00; /* Green color code */ } #scriptField td.willNotDo { background-color: #FF0000; /* Red color code */ } /* Center-align the first row headers */ #scriptField th { text-align: center; } Key Status/Resolution FixVersion CDRIVER-6001 Duplicate CXX-3284 Backlog CSHARP-5582 Backlog GODRIVER-3549 Backlog JAVA-5869 Needs Triage NODE-6942 Needs Triage MOTOR-1461 Duplicate PYTHON-5374 Backlog PHPLIB-1677 Ready for Work RUBY-3666 Needs Triage RUST-2209 Fixed 3.3.0

      Summary

      Assert unset BulkWriteException.partialResult in CRUD prose tests expecting no writes succeeded.

      Motivation

      CDRIVER-5969 identified an implementation bug. Empty (rather than unset) results were sometimes returned on client errors when no writes succeeded server-side. This contradicted the spec, which expects unset:

      Drivers MUST NOT populate the partialResult field in BulkWriteException if it cannot be determined that at least one write was successfully performed.

      Who is the affected end user?

      Users of the new MongoClient.BulkWrite API.

      How does this affect the end user?

      May result in a (likely minor) bug.

      How likely is it that this problem or use case will occur?

      If the problem does occur, what are the consequences and how severe are they?

      Minor bug. BulkWriteException.partialResult may be unexpectedly set in an error case.

      Is this issue urgent?

      No?

      Is this ticket only for tests?

      Yes.

      Acceptance Criteria

      Add assertions for BulkWriteException.partialResult in CRUD prose tests expecting no writes succeeded.

            Assignee:
            kevin.albertson@mongodb.com Kevin Albertson
            Reporter:
            kevin.albertson@mongodb.com Kevin Albertson
            Kevin Albertson Kevin Albertson
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: