Phantom time?
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 3/5
- Tempo estimado
- 1-2 dias
- Facilidade para iniciantes
- 48/100
- Tipo de issue
- Bug
- Clareza
- Razoavelmente clara
- Status de atividade
- Estagnada
- Stack de tecnologia
- python
- Domínio
- networking
Direção de pesquisa
Comece lendo socketpool/backend_thread.py, especialmente run e a referência a time.sleep no nível do módulo, e depois reproduza o traceback de desligamento da thread descrito na issue. Determine por que time se torna None e se a referência salva a sleep deve impedir isso; considera-se concluído quando a exceção durante o desligamento e seu impacto forem compreendidos e tratados.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
I frequently see the following error in logs when socketpool is used from inside a thread (via threading module). I'm unaware if the time module or socketpool are inherently un-thread-safe, nor can I tell if there are any negative effects of the issue. It is quite bizarre though:
The exception:
Exception in thread Thread-1 (most likely raised during interpreter shutdown):
Traceback (most recent call last):
File "/usr/lib/python2.7/threading.py", line 810, in __bootstrap_inner
File "/opt/webapps/filmbot/venv/local/lib/python2.7/site-packages/socketpool/backend_thread.py", line 50, in run
<type 'exceptions.AttributeError'>: 'NoneType' object has no attribute 'sleep'
The related code:
def run(self):
self.running = True
while True:
time.sleep(self.delay)
self.pool.murder_connections()
where somehow time has become None.
I see at the top of the backend_thread module that the author assigns a reference to time.sleep, yet never uses the reference and instead still accesses sleep from the time import. Not sure what the utility of that is, or if it's an omission, etc.
- Linguagem predominante
- Python
- Estrelas
- 165
- Forks
- 33
- Métricas de merge de PRs
- Nenhum PR com merge em 30d
Preparar o ambiente
Este projeto não oferece contêiner de desenvolvimento, Dockerfile nem guia de contribuição, então a configuração fica por sua conta: comece pelo README e veja nosso guia da primeira contribuição para os passos gerais.
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de benoitc/socketpool
-
Port tests to py3kAberta
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 45/100
benoitc/socketpool#38 ·
-
Error installing with pipAberta
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 25/100
benoitc/socketpool#35 · 2 comentários ·
-
Please .....Aberta
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 20/100
benoitc/socketpool#30 · 1 comentário ·
-
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 48/100
benoitc/socketpool#28 ·
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 35/100
benoitc/socketpool#26 ·
Todas as issues de benoitc/socketpool
Issues semelhantes
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 62/100
openvinotoolkit/openvino_notebooks#3858 ·
Mantenedores costumam responder em até 1 dia
-
bug
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 88/100
hummingbot/hummingbot-api#256 ·
-
bug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 80/100
-
area:other help wanted
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 70/100
WingedGuardian/GENesis-AGI#4734 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 70/100
peach-mitao/peach#693 ·
Mantenedores costumam responder em até 1 dia