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

Allow custom service names with srvServiceName URI option

    • Type: Icon: New Feature New Feature
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 2.18.0
    • Affects Version/s: None
    • Component/s: Spec Comp
    • Labels:
      None
    • Hide

      DRIVERS Ticket Description
      We are using DCOS (marathon/mesos) to manage our services. DCOS generates SRV records for our mongos instances under a record that looks like

      _mongos-mongodb._tcp.marathon.mesos
      

      However, there's currently no way for me to use this because when I provide a connection url like

      mongodb+srv://_mongos-mongodb._tcp.marathon.mesos
      

      the drivers prepend "mongodb._tcp" to the provided url. It's not clear why it's required that the host _must start with "_mongodb._tcp". Why not let the user specify the actual DNS entry to query?

      I believe the same issue will exist for multiple orchestration frameworks such as Consul/Nomad and Kubernetes.

      Drivers should sync their URI options and seedlist discovery spec tests to this commit. Drivers should accept a new URI option srvServiceName that overrides the default "mongodb" service name for SRV lookup in both discovery and polling.

      Show
      DRIVERS Ticket Description We are using DCOS (marathon/mesos) to manage our services. DCOS generates SRV records for our mongos instances under a record that looks like _mongos-mongodb._tcp.marathon.mesos However, there's currently no way for me to use this because when I provide a connection url like mongodb+srv: //_mongos-mongodb._tcp.marathon.mesos the drivers prepend " mongodb._tcp" to the provided url. It's not clear why it's required that the host _must start with "_mongodb._tcp". Why not let the user specify the actual DNS entry to query? I believe the same issue will exist for multiple orchestration frameworks such as Consul/Nomad and Kubernetes. Drivers should sync their URI options and seedlist discovery spec tests to this commit . Drivers should accept a new URI option srvServiceName that overrides the default "mongodb" service name for SRV lookup in both discovery and polling.

      We are using DCOS (marathon/mesos) to manage our services. DCOS generates SRV records for our mongos instances under a record that looks like

      _mongos-mongodb._tcp.marathon.mesos
      

      However, there's currently no way for me to use this because when I provide a connection url like

      mongodb+srv://_mongos-mongodb._tcp.marathon.mesos
      

      the drivers prepend "mongodb._tcp" to the provided url. It's not clear why it's required that the host _must start with "_mongodb._tcp". Why not let the user specify the actual DNS entry to query?

      I believe the same issue will exist for multiple orchestration frameworks such as Consul/Nomad and Kubernetes.

      Drivers should sync their URI options and seedlist discovery spec tests to this commit. Drivers should accept a new URI option srvServiceName that overrides the default "mongodb" service name for SRV lookup in both discovery and polling.

            Assignee:
            neil.shweky@mongodb.com Neil Shweky (Inactive)
            Reporter:
            backlog-server-pm Backlog - Core Eng Program Management Team
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: