- Notifications
You must be signed in to change notification settings - Fork2.1k
Commit712be83
committed
treat Semaphore._waiters as length zero when it is None
We access the `._waiters` private attribute of the Python asyncio`Semaphore` class. This was changed in Python 3.10.8 (and other versions)to be initialized to `None` instead of an empty deque. Our existingunconditional length checks failed on the new `None` default. This seemsto block syncing.python/cpython#97020https://github.com/python/cpython/compare/v3.10.7..v3.10.8#diff-0fee1befb15023abc0dad2623effa93a304946796929f6cb445d11a57821e737Reported traceback:```python-traceback2022-10-12T20:03:59.367 full_node full_node_server : INFO Connected with full_node {'host': '65.34.144.6', 'port': 8444}2022-10-12T20:03:59.370 full_node full_node_server : ERROR Exception: object of type 'NoneType' has no len(), {'host': '65.34.144.6', 'port': 8444}. Traceback (most recent call last):File "/home/summa/chia-blockchain/chia/server/server.py", line 598, in wrapped_coroutineresult = await coroutineFile "/home/summa/chia-blockchain/chia/full_node/full_node_api.py", line 114, in new_peakwaiter_count = len(self.full_node.new_peak_sem._waiters)TypeError: object of type 'NoneType' has no len()2022-10-12T20:03:59.371 full_node full_node_server : ERROR Exception: object of type 'NoneType' has no len() <class 'TypeError'>, closing connection {'host': '65.34.144.6', 'port': 8444}. Traceback (most recent call last):File "/home/summa/chia-blockchain/chia/server/server.py", line 608, in api_callresponse: Optional[Message] = await asyncio.wait_for(wrapped_coroutine(), timeout=timeout)File "/usr/lib/python3.10/asyncio/tasks.py", line 408, in wait_forreturn await futFile "/home/summa/chia-blockchain/chia/server/server.py", line 605, in wrapped_coroutineraise eFile "/home/summa/chia-blockchain/chia/server/server.py", line 598, in wrapped_coroutineresult = await coroutineFile "/home/summa/chia-blockchain/chia/full_node/full_node_api.py", line 114, in new_peakwaiter_count = len(self.full_node.new_peak_sem._waiters)TypeError: object of type 'NoneType' has no len()2022-10-12T20:03:59.487 full_node full_node_server : INFO Connection closed: 65.34.144.6, node id: 506fe4c05ce6b72bb707471842e552307c7a547aa9ba981175db5c08fa3e47e6```1 parent5ee4c39 commit712be83
1 file changed
+6
-3
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
122 | 122 | | |
123 | 123 | | |
124 | 124 | | |
125 | | - | |
| 125 | + | |
| 126 | + | |
126 | 127 | | |
127 | 128 | | |
128 | 129 | | |
129 | 130 | | |
130 | 131 | | |
131 | 132 | | |
132 | 133 | | |
133 | | - | |
| 134 | + | |
134 | 135 | | |
135 | 136 | | |
136 | 137 | | |
| |||
1436 | 1437 | | |
1437 | 1438 | | |
1438 | 1439 | | |
1439 | | - | |
| 1440 | + | |
| 1441 | + | |
| 1442 | + | |
1440 | 1443 | | |
1441 | 1444 | | |
1442 | 1445 | | |
| |||
0 commit comments
Comments
(0)