Throws an error after 1 hour on linux (Connection reset by peer)
維護者通常 1 天內回覆
還沒有人認領這個 Issue。
評估
- 難度
- 4/5
- 預估耗時
- 3-5 天
- 新手友好度
- 25/100
- Issue 類型
- 缺陷
- 描述清晰度
- 需要釐清
- 活躍度
- 停滯
- 技術堆疊
- firebase, linux, python, raspberry-pi
研究方向
此故障是在呼叫 db.reference('roomsDevices').get() 時由 StatusControllers.py 第 110 行回報的,traceback 經過了 firebase_admin、google-auth、requests 和 urllib3。先重現這個長時間執行的 Linux 請求,並檢查服務帳戶權杖重新整理路徑。完成條件是確認原因,並提供可重現的修正方案或已記錄的設定指引。
由索引模型根據 Issue 內容生成。
描述
The program worked for a long time on windows. Ported to linux (raspberry pi 4). After 1 hour of work, it gives an error. I assume that this is related to the id token. Please help me solve this problem
Python 3.9.2 (default, Mar 12 2021, 04:06:34)
[GCC 10.2.1 20210110] on linux
Type "help", "copyright", "credits" or "license()" for more information.
=============== RESTART: /home/sabri/Desktop/StatusControllers.py ==============
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 699, in urlopen
httplib_response = self._make_request(
File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 445, in _make_request
six.raise_from(e, None)
File "", line 3, in raise_from
File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 440, in _make_request
httplib_response = conn.getresponse()
File "/usr/lib/python3.9/http/client.py", line 1347, in getresponse
response.begin()
File "/usr/lib/python3.9/http/client.py", line 307, in begin
version, status, reason = self._read_status()
File "/usr/lib/python3.9/http/client.py", line 268, in _read_status
line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1")
File "/usr/lib/python3.9/socket.py", line 704, in readinto
return self._sock.recv_into(b)
File "/usr/lib/python3.9/ssl.py", line 1241, in recv_into
return self.read(nbytes, buffer)
File "/usr/lib/python3.9/ssl.py", line 1099, in read
return self._sslobj.read(len, buffer)
ConnectionResetError: [Errno 104] Connection reset by peer
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/requests/adapters.py", line 439, in send
resp = conn.urlopen(
File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 755, in urlopen
retries = retries.increment(
File "/usr/lib/python3/dist-packages/urllib3/util/retry.py", line 532, in increment
raise six.reraise(type(error), error, _stacktrace)
File "/usr/lib/python3/dist-packages/six.py", line 718, in reraise
raise value.with_traceback(tb)
File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 699, in urlopen
httplib_response = self._make_request(
File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 445, in _make_request
six.raise_from(e, None)
File "", line 3, in raise_from
File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 440, in _make_request
httplib_response = conn.getresponse()
File "/usr/lib/python3.9/http/client.py", line 1347, in getresponse
response.begin()
File "/usr/lib/python3.9/http/client.py", line 307, in begin
version, status, reason = self._read_status()
File "/usr/lib/python3.9/http/client.py", line 268, in _read_status
line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1")
File "/usr/lib/python3.9/socket.py", line 704, in readinto
return self._sock.recv_into(b)
File "/usr/lib/python3.9/ssl.py", line 1241, in recv_into
return self.read(nbytes, buffer)
File "/usr/lib/python3.9/ssl.py", line 1099, in read
return self._sslobj.read(len, buffer)
urllib3.exceptions.ProtocolError: ('Connection aborted.', ConnectionResetError(104, 'Connection reset by peer'))
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/sabri/.local/lib/python3.9/site-packages/google/auth/transport/requests.py", line 193, in call
response = self.session.request(
File "/usr/lib/python3/dist-packages/requests/sessions.py", line 542, in request
resp = self.send(prep, **send_kwargs)
File "/usr/lib/python3/dist-packages/requests/sessions.py", line 655, in send
r = adapter.send(request, **kwargs)
File "/usr/lib/python3/dist-packages/requests/adapters.py", line 498, in send
raise ConnectionError(err, request=request)
requests.exceptions.ConnectionError: ('Connection aborted.', ConnectionResetError(104, 'Connection reset by peer'))
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/home/sabri/Desktop/StatusControllers.py", line 110, in
jsonStr = db.reference('roomsDevices').get() #получаем данные
File "/home/sabri/.local/lib/python3.9/site-packages/firebase_admin/db.py", line 221, in get
return self._client.body('get', self._add_suffix(), params=params)
File "/home/sabri/.local/lib/python3.9/site-packages/firebase_admin/_http_client.py", line 131, in body
resp = self.request(method, url, **kwargs)
File "/home/sabri/.local/lib/python3.9/site-packages/firebase_admin/db.py", line 929, in request
return super(_Client, self).request(method, url, **kwargs)
File "/home/sabri/.local/lib/python3.9/site-packages/firebase_admin/_http_client.py", line 118, in request
resp = self._session.request(method, self.base_url + url, **kwargs)
File "/home/sabri/.local/lib/python3.9/site-packages/google/auth/transport/requests.py", line 545, in request
self.credentials.before_request(auth_request, method, url, request_headers)
File "/home/sabri/.local/lib/python3.9/site-packages/google/auth/credentials.py", line 135, in before_request
self.refresh(request)
File "/home/sabri/.local/lib/python3.9/site-packages/google/oauth2/service_account.py", line 429, in refresh
access_token, expiry, _ = _client.jwt_grant(
File "/home/sabri/.local/lib/python3.9/site-packages/google/oauth2/_client.py", line 299, in jwt_grant
response_data = _token_endpoint_request(
File "/home/sabri/.local/lib/python3.9/site-packages/google/oauth2/_client.py", line 260, in _token_endpoint_request
response_status_ok, response_data, retryable_error = _token_endpoint_request_no_throw(
File "/home/sabri/.local/lib/python3.9/site-packages/google/oauth2/_client.py", line 209, in _token_endpoint_request_no_throw
request_succeeded, response_data, retryable_error = _perform_request()
File "/home/sabri/.local/lib/python3.9/site-packages/google/oauth2/_client.py", line 185, in _perform_request
response = request(
File "/home/sabri/.local/lib/python3.9/site-packages/google/auth/transport/requests.py", line 199, in call
six.raise_from(new_exc, caught_exc)
File "", line 3, in raise_from
google.auth.exceptions.TransportError: ('Connection aborted.', ConnectionResetError(104, 'Connection reset by peer'))
- 主要語言
- Python
- 星號
- 1.2k
- 分支
- 362
- 平均合併
- 8 小時 7 分鐘
- 30 天內合併 PR
- 3
環境準備
- 沒有 Dockerfile 或 Docker Compose 檔案
- 有 Pull Request 範本
- 閱讀貢獻指南
從這裡開始
- 先讀完整個 Issue,再讀專案的貢獻指南。
- 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
- Fork 儲存庫,在一個分支上完成修改。
- 送出 Pull Request,並在描述裡引用這個 Issue 編號。
firebase/firebase-admin-python 的其他 Issue
-
Fix typos and wrong types in remote_config.py可能已有人在做 @Shubham-Padkonde 於 11 天前認領。 未關閉api: remoteconfig
難度 2/5 1-3 小時 新手友好度 75/100
firebase/firebase-admin-python#957 · 1 則留言 ·
維護者通常 1 天內回覆
-
api: database type: feature request
難度 2/5 1-3 小時 新手友好度 62/100
firebase/firebase-admin-python#58 ·
維護者通常 1 天內回覆
-
難度 4/5 3-5 天 新手友好度 45/100
firebase/firebase-admin-python#978 · 1 則留言 ·
維護者通常 1 天內回覆
-
[FR] Support VERIFY_AND_CHANGE_EMAIL in generate_email_action_link (parity with firebase-admin-node)可能已有人在做 @lahirumaramba 於 153 天前認領。 未關閉api: auth
firebase/firebase-admin-python#949 · 2 則留言 · 1 個 reaction · 已指派 1 人 ·
維護者通常 1 天內回覆
-
難度 4/5 3-5 天 新手友好度 43/100
firebase/firebase-admin-python#945 · 1 則留言 · 1 個 reaction ·
維護者通常 1 天內回覆
查看 firebase/firebase-admin-python 的全部 Issue
相似的 Issue
-
難度 2/5 1-3 小時 新手友好度 82/100
維護者通常 1 天內回覆
-
難度 2/5 半天 新手友好度 70/100
維護者通常 1 天內回覆
-
bug
難度 2/5 1-3 小時 新手友好度 72/100
Qiskit/qiskit-ibm-runtime#3431 · 1 則留言 ·
維護者通常 1 天內回覆
-
[Lesson] A compatibility-gate rejection is a verdict, not something to overwrite with --accept-risk未關閉lesson-submission needs-ac pending-review
難度 2/5 1-3 小時 新手友好度 65/100
Ikalus1988/MisakaNet#2870 ·
維護者通常 1 天內回覆
-
feature:LinkChecker
難度 2/5 1-3 小時 新手友好度 66/100
digitalfabrik/integreat-cms#4594 ·
維護者通常 5 天內回覆