Uploaded image for project: 'Python Driver'
  1. Python Driver
  2. PYTHON-5342

Test Failure - test_dns_failures is failing

    • Type: Icon: Build Failure Build Failure
    • Resolution: Unresolved
    • Priority: Icon: Unknown Unknown
    • None
    • Affects Version/s: None
    • Component/s: greenerbuild
    • None
    • None
    • Python Drivers
    • None
    • None
    • None
    • None
    • None
    • None

      test_dns_failures is failing often on windows Python 3.13:

       [2025/04/07 10:41:44.698] FAILURE: pymongo.errors.ConfigurationError: The resolution lifetime expired after 20.103 seconds: Server Do53:10.122.0.2@53 answered The DNS operation timed out after 0.000 seconds; Server Do53:10.0.0.2@53 answered The DNS operation timed out after 1.999 seconds; Server Do53:10.122.0.2@53 answered The DNS operation timed out after 1.999 seconds; Server Do53:10.0.0.2@53 answered The DNS operation timed out after 1.999 seconds; Server Do53:10.122.0.2@53 answered The DNS operation timed out after 2.000 seconds; Server Do53:10.0.0.2@53 answered The DNS operation timed out after 1.999 seconds; Server Do53:10.122.0.2@53 answered The DNS operation timed out after 1.901 seconds ()
       [2025/04/07 10:41:44.698] self = <test.asynchronous.test_srv_polling.TestSrvPolling testMethod=test_dns_failures>
       [2025/04/07 10:41:44.698]     async def test_dns_failures(self):
       [2025/04/07 10:41:44.698]         from dns import exception
       [2025/04/07 10:41:44.698]     
       [2025/04/07 10:41:44.698]         for exc in (exception.FormError, exception.TooBig, exception.Timeout):
       [2025/04/07 10:41:44.698]     
       [2025/04/07 10:41:44.698]             def response_callback(*args):
       [2025/04/07 10:41:44.698]                 raise exc("DNS Failure!")
       [2025/04/07 10:41:44.698]     
       [2025/04/07 10:41:44.698] >           await self.run_scenario(response_callback, False)
       [2025/04/07 10:41:44.698] test\asynchronous\test_srv_polling.py:222: 
       [2025/04/07 10:41:44.698] _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
       [2025/04/07 10:41:44.698] test\asynchronous\test_srv_polling.py:179: in run_scenario
       [2025/04/07 10:41:44.698]     await client.aconnect()
       [2025/04/07 10:41:44.698] pymongo\asynchronous\mongo_client.py:1012: in aconnect
       [2025/04/07 10:41:44.698]     await self._get_topology()
       [2025/04/07 10:41:44.698] pymongo\asynchronous\mongo_client.py:1722: in _get_topology
       [2025/04/07 10:41:44.698]     await self._resolve_srv()
       [2025/04/07 10:41:44.698] pymongo\asynchronous\mongo_client.py:905: in _resolve_srv
       [2025/04/07 10:41:44.698]     res = await uri_parser._parse_srv(
       [2025/04/07 10:41:44.698] pymongo\asynchronous\uri_parser.py:164: in _parse_srv
       [2025/04/07 10:41:44.698]     dns_options = await dns_resolver.get_options()
       [2025/04/07 10:41:44.698] _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
       [2025/04/07 10:41:44.698] self = <pymongo.asynchronous.srv_resolver._SrvResolver object at 0x000002265CA5D4D0>
       [2025/04/07 10:41:44.698]     async def get_options(self) -> Optional[str]:
       [2025/04/07 10:41:44.698]         from dns import resolver
       [2025/04/07 10:41:44.698]     
       [2025/04/07 10:41:44.698]         try:
       [2025/04/07 10:41:44.698]             results = await _resolve(self.__fqdn, "TXT", lifetime=self.__connect_timeout)
       [2025/04/07 10:41:44.698]         except (resolver.NoAnswer, resolver.NXDOMAIN):
       [2025/04/07 10:41:44.698]             # No TXT records
       [2025/04/07 10:41:44.698]             return None
       [2025/04/07 10:41:44.698]         except Exception as exc:
       [2025/04/07 10:41:44.698] >           raise ConfigurationError(str(exc)) from None
       [2025/04/07 10:41:44.698] E           pymongo.errors.ConfigurationError: The resolution lifetime expired after 20.103 seconds: Server Do53:10.122.0.2@53 answered The DNS operation timed out after 0.000 seconds; Server Do53:10.0.0.2@53 answered The DNS operation timed out after 1.999 seconds; Server Do53:10.122.0.2@53 answered The DNS operation timed out after 1.999 seconds; Server Do53:10.0.0.2@53 answered The DNS operation timed out after 1.999 seconds; Server Do53:10.122.0.2@53 answered The DNS operation timed out after 2.000 seconds; Server Do53:10.0.0.2@53 answered The DNS operation timed out after 1.999 seconds; Server Do53:10.122.0.2@53 answered The DNS operation timed out after 1.901 seconds
       [2025/04/07 10:41:44.698] pymongo\asynchronous\srv_resolver.py:109: ConfigurationError
      

      https://spruce.mongodb.com/task/mongo_python_driver_test_win64_python3.13_test_4.0_standalone_noauth_nossl_async_79e5d601397f6d3891d9eaf881b43fd40a712ee2_25_04_07_14_48_05/tests?execution=0&sortBy=STATUS&sortDir=ASC

      This was probably caused by PYTHON-3636.

            Assignee:
            noah.stapp@mongodb.com Noah Stapp
            Reporter:
            shane.harvey@mongodb.com Shane Harvey
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated: