Qual é a maneira de enviar um patch para corrigir todos os danos que o LP: # 600941 causa?

9

Qual é a melhor maneira de enviar um patch para corrigir todos os danos que o LP: # 600941 causa?

Eu pergunto porque o LP: # 600941 foi colocado em todas as versões do Ubuntu ainda suportadas no momento. Devo escolher uma versão específica e executá ubuntu-bug-la? Essa versão deve ser LTS, Oneiric ou Precise (como posso obter o Precise se precisar?)

A história é que, depois que foi lançado, todos os nossos sistemas começaram a experimentar falhas de reinicialização do Nagios nrpe.

Comandos como /etc/init.d/nagios-nrpe-server restart

faria o nrpe parar, mas não reiniciar.

Eu rastreei isso da maneira que o /etc/init.d/nagios-nrpe-serverscript está chamando start-stop-daemon.

O problema é que a sub-rotina "stop" no /etc/init.d/nagios-nrpe-serverscript chama primeiro start-stop-daemon que envia o SIGTERM para o nrpe e aguarda apenas um segundo.

Se o nrpe ainda não tiver saído, o arquivo pid ainda existirá e o /etc/init.d/nagios-nrpe-serverscript o removerá.

Pior ainda, se /etc/init.d/nagios-nrpe-server restartfor usado não apenas o arquivo pid será removido, a tentativa de reiniciar o nrpe falhará, desde que o daemon nrpe ainda esteja atrasado no desligamento.

A tentativa de iniciar nessas circunstâncias falhará porque o nrpe ainda estará vinculado a um soquete e a segunda tentativa de ligação fará com que a inicialização do nrpe seja interrompida.

Eles deveriam ter se perguntado por que houve um comentário sobre "às vezes o arquivo pid não é removido".

Eles deveriam ter testado em sistemas que possuem uma carga pesada e, portanto, diminuem os tempos de resposta do nrpe.

A correção é adicionar --retry 10ou não à invocação destart-stop-daemon ... --stop ...

obrigado

nutznboltz
fonte

Respostas:

14

Primeiramente, obrigado por todo o trabalho que você fez até agora. É ótimo que você gostaria de se envolver com a correção desse bug!

A melhor maneira é relatar um novo bug com precisão e deixar claro que é uma regressão causada pelo LP: # 600941. Atribua a tag 'atualizações de regressão'. Também seria bom mencioná-lo nos comentários do LP: # 600941, para que os usuários vejam isso quando estiverem investigando a própria regressão. A tag regression-updates garantirá que seu bug seja triado e respondido rapidamente. Então, sim, primeiro comece com isso:

ubuntu-bug nagios-nrpe-server

Como afeta todas as versões, não importa onde você faz isso (é melhor fazê-lo em uma plataforma que você pode deixar em paz para verificar as correções).

No momento, as ISOs precisas provavelmente não são instaláveis, mas você pode experimentá-las aqui:

http://cdimage.ubuntu.com/daily/current/

Você também pode usar uma máquina onírica precisa editando as fontes em /etc/apt/sources.list* e alterando onírica para precisa e, em seguida, executando apt-get update && apt-get dist-upgrade. Existem transições e grandes mudanças acontecendo, portanto, não faça isso em um sistema de produção!

Para enviar a correção, a melhor maneira é usar o Desenvolvimento Distribuído do Ubuntu. Atribua o bug a si mesmo e siga estas etapas:

bzr branch lp:ubuntu/nagios-nrpe
cd nagios-nrpe
<edit files that need editing>
dch -D precise -i 'Fixing regression caused by bug 600941. (LP: #XXXXXX)'
debcommit
bzr push lp:~nutznboltz/ubuntu/precise/nagios-nrpe/fix-lpXXXXXX
bzr lp-propose

XXXXXX é seu novo bug #

Você pode encontrar mais informações sobre como fazer isso em https://wiki.ubuntu.com/DistributedDevelopment

Por favor, não hesite em vir perguntar em # ubuntu-devel e / ou # ubuntu-server no Freenode também.

SpamapS
fonte
Obrigado por todas essas ótimas informações. Vou ver se posso fazer bom uso disso no futuro.
nutznboltz
Anexamos sua lista de coisas a fazer ao nosso sistema interno de bilhetes Atlassian, para não perder o controle.
nutznboltz
Até agora eu tenho o LP: # 896388 no lugar.
nutznboltz
1
Acontece que você deixe enganar-me para perder o meu tempo, ver ubuntuforums.org/showthread.php?p=11489142
nutznboltz
nutznboltz, acho que você não perdeu tempo! Como o stgraber disse, ele gostaria que sua correção fosse aceita no upstream no Debian. Essa é uma resposta bastante normal e um passo importante no processo. Caso contrário, poderá regredir no próximo lançamento. Seu trabalho é bastante apreciado e tenho certeza de que sua correção será aceita.
SpamapS