Jak przesłać łatkę, aby naprawić wszystkie szkody wyrządzone przez LP: # 600941?


9

Jaki jest najlepszy sposób na przesłanie łatki, która naprawi wszystkie szkody wyrządzone przez LP: # 600941 ?

Pytam, ponieważ LP: # 600941 został umieszczony w każdej wersji Ubuntu, która jest obecnie obsługiwana. Czy powinienem wybrać konkretną wersję i uruchomić ubuntu-bugją? Czy ta wersja to LTS, Oneiric lub Precise (jak mogę uzyskać Precise, jeśli jej potrzebuję?)

Historia jest taka, że ​​po wypchnięciu wszystkich naszych systemów zaczęły występować awarie restartu Nagios nrpe.

Polecenia takie jak /etc/init.d/nagios-nrpe-server restart

spowodowałoby zatrzymanie nrpe, ale nie ponowne uruchomienie.

Śledziłem to tak, jak /etc/init.d/nagios-nrpe-serverwywołuje skrypt start-stop-daemon.

Problem polega na tym, że /etc/init.d/nagios-nrpe-serversekcja „stop” w skrypcie najpierw wywołuje start-stop-daemon, który wysyła SIGTERM do nrpe, a następnie czeka tylko przez jedną sekundę.

Jeśli nrpe nie wyszedł do tego czasu, plik pid nadal będzie istniał, a /etc/init.d/nagios-nrpe-serverskrypt go usunie.

Co gorsza, jeśli /etc/init.d/nagios-nrpe-server restartzostanie użyty nie tylko plik pid zostanie usunięty, próba ponownego uruchomienia nrpe zakończy się niepowodzeniem, pod warunkiem, że demon nrpe nadal opóźnia się przy zamykaniu.

Próba uruchomienia w tych okolicznościach zakończy się niepowodzeniem, ponieważ nrpe nadal będzie powiązane z gniazdem, a druga próba powiązania spowoduje przerwanie uruchamiania nrpe.

Powinni byli się zastanawiać, dlaczego skomentowano „czasami plik pid nie jest usuwany”.

Powinny one były przetestowane na systemach, które mają duże obciążenie, a zatem wolne czasy odpowiedzi nrpe.

Poprawka polega na dodaniu --retry 10lub innym wywołaniustart-stop-daemon ... --stop ...

Dzięki

Odpowiedzi:


14

Po pierwsze dziękuję za wszystkie dotychczasowe prace związane z błędami. Wspaniale, że chcesz wziąć udział w naprawianiu tego błędu!

Najlepszym sposobem jest zgłoszenie nowego błędu przeciw precyzji i wyjaśnienie, że jest to regresja spowodowana przez LP: # 600941. Daj mu tag „regresja-aktualizacje”. Dobrze byłoby również wspomnieć o tym w komentarzach LP: # 600941, aby użytkownicy zobaczyli to, gdy sami badają, czy skończą się regresje. Tag regresji-aktualizacji zapewni, że twój błąd zostanie podzielony na segmenty i szybko na nie zareaguje. Więc tak, zacznij od tego:

ubuntu-bug nagios-nrpe-server

Ponieważ wpływa na wszystkie wersje, nie ma znaczenia, gdzie to zrobisz (lepiej, abyś zrobił to na platformie, którą możesz zostawić w spokoju, aby można było zweryfikować poprawki).

Obecnie dokładne ISO nie są prawdopodobnie instalowalne, ale możesz je wypróbować tutaj:

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

Możesz także ustawić maszynę oniryczną na precyzyjne, edytując źródła w /etc/apt/sources.list* i zmieniając oneiryczną na precyzyjną, a następnie robiąc to apt-get update && apt-get dist-upgrade. Są jednak przejścia i duże zmiany, więc nie rób tego w systemie produkcyjnym!

Aby przesłać poprawkę, najlepszym sposobem jest użycie Ubuntu Distributed Development. Przypisz błąd do siebie, a następnie wykonaj następujące kroki:

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 to Twój nowy błąd #

Więcej informacji o tym, jak to zrobić, można znaleźć na stronie https://wiki.ubuntu.com/DistributDevelopment

Nie wahaj się i zapytaj na # ubuntu-devel i / lub # ubuntu-server na Freenode.


Dzięki za te wszystkie wspaniałe informacje. Zobaczę, czy będę mógł z niego dobrze skorzystać w przyszłości.
nutznboltz

Dołączyłem twoją listę rzeczy do zrobienia do naszego wewnętrznego systemu biletów Atlassian, więc nie stracę tego z oczu.
nutznboltz

Do tej pory mam na swoim koncie LP: # 896388.
nutznboltz

1
Okazuje się, że oszukałeś mnie, że marnujesz mój czas, patrz ubuntuforums.org/showthread.php?p=11489142
nutznboltz

nutznboltz, nie sądzę, żebyś w ogóle zmarnował swój czas! Jak powiedział Stgraber, chciałby, aby Twoja poprawka została zaakceptowana w Debianie. To dość normalna odpowiedź i ważny krok w procesie. W przeciwnym razie może się cofnąć w następnej wersji. Twoja praca jest bardzo doceniana i jestem pewien, że Twoja poprawka zostanie zaakceptowana.
SpamapS,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.