Uploaded image for project: 'Ruby Driver'
  1. Ruby Driver
  2. RUBY-2731

Refuse to work when load-balanced topology is requested, connect != :load_balanced and server description does not have service id

    • Type: Icon: Improvement Improvement
    • Resolution: Fixed
    • Priority: Icon: Unknown Unknown
    • 2.16.0.alpha1
    • Affects Version/s: None
    • Component/s: None
    • Fully Compatible

      Note: If min pool size is > 0, the connection pool populator will attempt to create connections until min pool size is reached. If each connection's handshake is failed by the driver due to missing service id, the populator will be spinning indefinitely creating connections that the driver would then immediately close.

      A possible solution here would be to pause or disable the populator if handshake response doesn't have service id and connect != :load_balanced. In theory the populator can be reenabled when a connection successfully completes handshake & auth inline.

      Note that disabling the populator does not prevent connections being established for operations as needed.

            Assignee:
            oleg.pudeyev@mongodb.com Oleg Pudeyev (Inactive)
            Reporter:
            oleg.pudeyev@mongodb.com Oleg Pudeyev (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: