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

Unified test runner does not run distinct hack at all

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 4.1.1
    • Affects Version/s: None
    • Component/s: None
    • None
    • Not Needed

      The transactions spec gives some guidance to avoid StableDbVersion errors on sharded clusters. The unified spec runner has some code written for this but it a) is never run, and b) is not implemented correctly.

      The basic fix for a) is to replace these lines with:

          const topologyType = ctx.configuration.topologyType;
          if (topologyType === TopologyType.Sharded || topologyType === TopologyType.LoadBalanced) {
      

      But the bigger issue here is that the clients used to execute these operations are also the clients under test, so they:

      • erroneously collect command events for these "utility" tasks
      • are susceptible to incompatible configurations, such as a strict API version for the stable api tests, which will not permit the unstable distinct command

      The old test runner creates utility clients for all possible hosts, though the implementation was brittle (subject to duplicate clients, and lacking any required URI parameters, such as loadBalanced).

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

              Created:
              Updated:
              Resolved: