Implement Pluggable DNS Adapter

XMLWordPrintableJSON

    • Type: Task
    • Resolution: Unresolved
    • Priority: Unknown
    • None
    • Affects Version/s: None
    • Component/s: None
    • Hide

      1. What would you like to communicate to the user about this feature?
      2. Would you like the user to see examples of the syntax and/or executable code and its output?
      3. Which versions of the driver/connector does this apply to?

      Show
      1. What would you like to communicate to the user about this feature? 2. Would you like the user to see examples of the syntax and/or executable code and its output? 3. Which versions of the driver/connector does this apply to?
    • None
    • None
    • None
    • None
    • None
    • None

      Use Case

      As a Developer
      I want the driver to use my injected dns adapter for hostname resolution.
      So that I can control service discovery and host lookups in custom environments.

      User Experience

      • The driver uses the custom resolver and passes the lookup function to the socket layer.

      Risks/Unknowns

      The most critical risk is ensuring that the lookup method from the DNS adapter is correctly passed into the net.createConnection calls. If missed, the socket might use the system's default resolver instead of the custom one, leading to inconsistent behavior.

      Acceptance Criteria

      Implementation Requirements

      • Remove import: remove require('dns') from all places inside src folder.
      • Use dns adapter provided with the mongo client options.

      Testing Requirements

      • Existing integration tests should pass when custom dns adapter is provided, no node:dns should be imported.

      Documentation Requirements

      • DOCSP ticket, API docs, etc

      Follow Up Requirements

      • additional tickets to file, required releases, etc
      • if node behavior differs/will differ from other drivers, confirm with dbx devs what standard to aim for and what plan, if any, exists to reconcile the diverging behavior moving forward

            Assignee:
            Unassigned
            Reporter:
            Sergey Zelenov
            None
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: