Segmentation fault with many go routines
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Facilidade para iniciantes
- 28/100
Direção de pesquisa
Comece executando a reprodução fornecida com 10,000 goroutines usando os interpretadores Python e as versões de offset/fibers listados. Rastreie se o segmentation fault se origina em offset, fibers ou na interação entre eles e, em seguida, adicione um teste de regressão para a reprodução. Está concluído quando o programa não trava mais e produz 10001.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Running this program.
from offset import maintask, run, go, makechan
def gopher(left, right):
value = right.recv()
left.send(value + 1)
def starter(chan):
chan.send(1)
@maintask
def main():
leftmost = makechan()
right = leftmost
left = leftmost
for _ in range(10000):
right = makechan()
go(gopher, left, right)
left = right
go(starter, right)
print(leftmost.recv())
if __name__ == "__main__":
run()
I get:
$ python gophers.offset.py
zsh: segmentation fault python gophers.offset.py
The output I expected was 10001.
Tested with
- Interpreters
Python 2.7.3 (87aa9de10f9ca71da9ab4a3d53e0ba176b67d086, Feb 03 2014, 13:03:18)[PyPy 2.2.1]Python 3.3.3 (default, Dec 22 2013, 19:33:55)
- offset library from github
- fibers 0.3.0
I don't know if this is caused by the offset library, fibers library or any other combination so I decided to start from here. :)
- Linguagem predominante
- Python
- Estrelas
- 380
- Forks
- 15
- 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/offset
-
Crash using over 2000 fibersTalvez livre de novo @benoitc assumiu há 4479 dias e não há nenhum pull request aberto. Abertabug
-
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 15/100
-
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 20/100
-
i/o apiAbertaenhancement stdlib
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 20/100
-
net APIAbertaenhancement stdlib
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 15/100
Todas as issues de benoitc/offset
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