boost::algorithm::split_regex hangs and consumes CPU on dangling alternatives
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Facilidade para iniciantes
- 38/100
Direção de pesquisa
Comece reproduzindo o caso split_regex do gist vinculado com o padrão ;| pendente, usando os ambientes Boost 1.65 ou 1.67 mencionados. Rastreie a chamada até o algoritmo do Boost e o comportamento de regex para identificar por que o uso da CPU não termina; considera-se concluído quando a entrada relatada não trava mais e o comportamento está coberto por um teste de regressão.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
I happened to typo a regex, and I noticed that boost::algorithm::split_regex started consuming a bunch of CPU. I don't know is this would have eventually caught itself and terminating. The regex in question was ;|, and this appears to be true for any dangling |.
I'm a bit surprised that boost::regex allowed ;| as valid, given split_regex's behavior.
Simple example up at https://gist.github.com/directionless/c38eb7dc216bcd93b40c3ecaf99f326e
I tested this on darwin with boost 1.67, and on linux with boost 1.65
(This was moved here from https://github.com/boostorg/regex/issues/76)
- Linguagem predominante
- C++
- Estrelas
- 131
- Forks
- 117
- 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 boostorg/algorithm
-
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 30/100
-
variadic min/max/minmaxAberta
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 35/100
-
fast variadic string-concatAberta
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 35/100
-
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 25/100
-
Automated formattingAberta
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 25/100
Todas as issues de boostorg/algorithm
Issues semelhantes
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 85/100
Icinga/icinga2#11077 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 66/100
-
agent:WSL bug linux LOW ui
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 78/100
Mantenedores costumam responder em até 1 dia
-
Copter: PosHold brake-entry threshold became 16 deg instead of 0.16 deg after the radians conversionAberta
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 78/100
ArduPilot/ardupilot#34617 · 1 comentário · 1 reação ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 85/100
tesseract-robotics/tesseract_nanobind#168 ·
Mantenedores costumam responder em até 1 dia