Logger is destroyed during shutdown when it's still in use
- Lingua principale
- Python
- Stelle
- 1.4k
- Fork
- 191
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Descrizione
We try to use the logger during shutdown but it appears that methods disappear during garbage collection. This issue pops up when shutdown is called in non-interactive mode. [Here's a thread discussing the same issue](https://bugs.python.org/issue26789).
Stack trace:
```
File "/Users/ellbosch/Repos/mssql-cli/mssqlcli/mssql_cli.py", line 197, in __del__
File "/Users/ellbosch/Repos/mssql-cli/mssqlcli/sqltoolsclient.py", line 90, in shutdown
File "/Users/ellbosch/Repos/mssql-cli/mssqlcli/jsonrpc/jsonrpcclient.py", line 184, in shutdown
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/logging/__init__.py", line 1378, in info
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/logging/__init__.py", line 1514, in _log
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/logging/__init__.py", line 1524, in handle
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/logging/__init__.py", line 1586, in callHandlers
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/logging/__init__.py", line 894, in handle
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/logging/__init__.py", line 1126, in emit
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/logging/__init__.py", line 1116, in _open
NameError: name 'open' is not defined
```
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Direzione di ricerca
Inizia dal percorso di arresto in mssqlcli/mssql_cli.py (__del__), mssqlcli/sqltoolsclient.py (shutdown) e mssqlcli/jsonrpc/jsonrpcclient.py (shutdown). Riproduci l’arresto non interattivo e segui la chiamata di logging mostrata nello stack trace. Il lavoro è completato quando l’arresto non solleva più un NameError mentre il logger è ancora utilizzato durante la pulizia dell’interprete.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- python
- Ambito
- cli
- Tipo di issue
- Bug
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Stato di attività
- Ferma
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 42/100