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

Fix server version incompatibility for updateOne-let and updateMany-let server-side error tests

    • Type: Icon: Bug Bug
    • Resolution: Done
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Component/s: CRUD
    • Needed
    • Hide

      The minServerVersion was updated for some test cases in the updateOne-let and updateMany-let CRUD spec tests. Drivers should sync CRUD spec tests to mongodb/specifications@4a8ac5f.

      Show
      The minServerVersion was updated for some test cases in the updateOne-let and updateMany-let CRUD spec tests. Drivers should sync CRUD spec tests to mongodb/specifications@4a8ac5f .
    • $i18n.getText("admin.common.words.hide")
      Key Status/Resolution FixVersion
      CXX-2455 Fixed 3.7.0
      CSHARP-4059 Duplicate
      GODRIVER-2313 Fixed 1.9.0
      JAVA-4497 Duplicate
      NODE-4013 Fixed 4.4.1
      MOTOR-898 Duplicate
      PYTHON-3129 Done
      RUBY-2910 Fixed 2.18.0
      RUST-1188 Duplicate
      SWIFT-1497 Won't Do
      PHPLIB-748 Fixed 1.13.0-beta1, 1.13.0
      CDRIVER-4198 Fixed 1.22.0, 1.22.0-beta0
      $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 */ } /* Center-align the first row headers */ #scriptField th { text-align: center; } Key Status/Resolution FixVersion CXX-2455 Fixed 3.7.0 CSHARP-4059 Duplicate GODRIVER-2313 Fixed 1.9.0 JAVA-4497 Duplicate NODE-4013 Fixed 4.4.1 MOTOR-898 Duplicate PYTHON-3129 Done RUBY-2910 Fixed 2.18.0 RUST-1188 Duplicate SWIFT-1497 Won't Do PHPLIB-748 Fixed 1.13.0-beta1, 1.13.0 CDRIVER-4198 Fixed 1.22.0, 1.22.0-beta0

      bailey.pearson observed that the updateOne-let.yml and updateMany-let.yml tests introduced in mongodb/specifications@1519da9 for DRIVERS-1788 use pipeline-style updates (4.2+) despite the tests specifying a minServerVersion of 3.6.0.

      These tests should either have minServerVersion bumped to 4.2.0 or be changed to not use pipeline-style updates.

      Per the docs examples in Use Variables in let Option or c Field, it looks like we can reference bound variables in the update's query by using $expr to access the aggregation context. This should be portable for pre-4.2 servers if we'd rather not bump the minServerVersion.

      AFAIK, $expr cannot be used in a non-pipeline update, so we'd need to require 4.2+ if we still want to access the bond variables from the update itself (i.e. u parameter).

            Assignee:
            dmitry.rybakov@mongodb.com Dmitry Rybakov
            Reporter:
            jmikola@mongodb.com Jeremy Mikola
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: