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

String read preference in MongoClient options not converted to ReadPreference type

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

      Rebecca and Sophie introduced a subtle bug in their test for an unrelated issue, by specifying the following when creating a client:

      const client = configuration.newClient(
        { w: 1, readPreference: ReadPreference.SECONDARY },
        { poolSize: 1, auto_reconnect: false }
      );
      

      Resulting in this error:

           Uncaught TypeError: self.s.connectOptions.readPreference.equals is not a function
            at shouldTriggerConnect (/Users/katherinewalker/drivers/node/mongodb-core/lib/topologies/replset.js:770:42)
            at /Users/katherinewalker/drivers/node/mongodb-core/lib/topologies/replset.js:841:15
            at applyAuthenticationContexts (/Users/katherinewalker/drivers/node/mongodb-core/lib/topologies/replset.js:731:12)
            at Server.<anonymous> (/Users/katherinewalker/drivers/node/mongodb-core/lib/topologies/replset.js:802:7)
            at /Users/katherinewalker/drivers/node/mongodb-core/lib/topologies/server.js:506:16
            at /Users/katherinewalker/drivers/node/mongodb-core/lib/connection/pool.js:531:18
            at _combinedTickCallback (internal/process/next_tick.js:131:7)
            at process._tickCallback (internal/process/next_tick.js:180:9)
      

      This would seem to indicate that read preferences passed by string to the MongoClient constructor are not properly resolved into ReadPreference types.

            Assignee:
            katherine.walker@mongodb.com Katherine Walker (Inactive)
            Reporter:
            matt.broadstone@mongodb.com Matt Broadstone
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved:
              None
              None
              None
              None