firebase / firebase/firebase-admin-python

google.api_core.exceptions.RetryError: Timeout of 60.0s exceeded, last exception: 503 DNS resolution failed for firestore.googleapis.com: C-ares status is not ARES_SUCCESS qtype=A name=firestore.googleapis.com is_balancer=0: DNS query cancelled

Open
#858 1 comment 1 reaction 0 assignees View on GitHub
api: firestore
Dominant language
Python
Stars
1.2k
Forks
359
Avg merge
5d 6m
Merged PRs (30d)
2

Description

### [REQUIRED] Step 2: Describe your environment

* Operating System version: Mac OS
* Firebase SDK version: 6.1.0
* Firebase Product: firestore
* Python version: 3.12.2
* Pip version: 24.0 from /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/pip (python 3.12)

### [REQUIRED] Step 3: Describe the problem

```
cred = credentials.Certificate("firebase-privateKey.json")
firebase_admin.initialize_app(cred)
db = firestore.client()

collections = list(db.collections())
if collections:
print("Collections found:", [col.id for col in collections])
else:
print("No collections found or access denied.")
```

The code fails with error below.

```
Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/google/api_core/grpc_helpers.py", line 76, in error_remapped_callable
return callable_(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/grpc/_channel.py", line 1181, in __call__
return _end_unary_response_blocking(state, call, False, None)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/grpc/_channel.py", line 1006, in _end_unary_response_blocking
raise _InactiveRpcError(state) # pytype: disable=not-instantiable
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
grpc._channel._InactiveRpcError: <_InactiveRpcError of RPC that terminated with:
status = StatusCode.UNAVAILABLE
details = "DNS resolution failed for firestore.googleapis.com: C-ares status is not ARES_SUCCESS qtype=SRV name=_grpclb._tcp.firestore.googleapis.com: DNS query cancelled"
debug_error_string = "UNKNOWN:Error received from peer {grpc_message:"DNS resolution failed for firestore.googleapis.com: C-ares status is not ARES_SUCCESS qtype=SRV name=_grpclb._tcp.firestore.googleapis.com: DNS query cancelled", grpc_status:14, created_time:"2025-02-02T19:42:12.316149+09:00"}"
>

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/google/api_core/retry/retry_unary.py", line 144, in retry_target
result = target()
^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/google/api_core/timeout.py", line 130, in func_with_timeout
return func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/google/api_core/grpc_helpers.py", line 78, in error_remapped_callable
raise exceptions.from_grpc_error(exc) from exc
google.api_core.exceptions.ServiceUnavailable: 503 DNS resolution failed for firestore.googleapis.com: C-ares status is not ARES_SUCCESS qtype=SRV name=_grpclb._tcp.firestore.googleapis.com: DNS query cancelled

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
File "/Users/tenna/Desktop/tenna/art_sanpo/scraping/museum.py", line 24, in
collections = list(db.collections())
^^^^^^^^^^^^^^^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/google/cloud/firestore_v1/client.py", line 279, in collections
iterator = self._firestore_api.list_collection_ids(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/google/cloud/firestore_v1/services/firestore/client.py", line 2057, in list_collection_ids
response = rpc(
^^^^
File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/google/api_core/gapic_v1/method.py", line 131, in __call__
return wrapped_func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/google/api_core/retry/retry_unary.py", line 293, in retry_wrapped_func
return retry_target(
^^^^^^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/google/api_core/retry/retry_unary.py", line 153, in retry_target
_retry_error_helper(
File "/Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages/google/api_core/retry/retry_base.py", line 221, in _retry_error_helper
raise final_exc from source_exc
google.api_core.exceptions.RetryError: Timeout of 60.0s exceeded, last exception: 503 DNS resolution failed for firestore.googleapis.com: C-ares status is not ARES_SUCCESS qtype=SRV name=_grpclb._tcp.firestore.googleapis.com: DNS query cancelled
```

I am running the script once a month, and It was working fine until 2025/1/5.
Suddenly stopped working yesterday (2025/2/1).

I can confirm the reject exists at: https://console.firebase.google.com/u/0/project/art-sanpo/overview?hl=ja
And the Blaze plan is turned on, access rule is `allow read: if true;` for all of the collections.

Contributor guide

Open the contributing guide

Research direction

Start with the reproduction in museum.py at line 24, using Python 3.12.2, Firebase SDK 6.1.0, and the shown Firestore client call. Check whether the failure can be reproduced and whether it is caused by the SDK or DNS resolution for firestore.googleapis.com. Done requires identifying a reproducible SDK issue and a clear expected result, but the report does not define a code change.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
databases
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.