Wie kann ein Patch eingereicht werden, um den gesamten Schaden zu beheben, den LP: # 600941 verursacht?


9

Was ist der beste Weg, um einen Patch einzureichen, um den gesamten Schaden zu beheben, den LP: # 600941 verursacht?

Ich frage, weil LP: # 600941 in jede Version von Ubuntu eingefügt wurde, die zu diesem Zeitpunkt noch unterstützt wird. Soll ich eine bestimmte Version auswählen und darauf ausführen ubuntu-bug? Sollte diese Version LTS oder Oneiric oder Precise sein (wie kann ich Precise erhalten, wenn ich es brauche?)

Die Geschichte ist, dass nach dem Herausschieben aller unserer Systeme Nagios nrpe-Neustartfehler auftraten.

Befehle wie /etc/init.d/nagios-nrpe-server restart

würde dazu führen, dass nrpe stoppt, aber nicht neu startet.

Ich habe dies bis zu der Art und Weise verfolgt, wie das /etc/init.d/nagios-nrpe-serverSkript aufruft start-stop-daemon.

Das Problem ist, dass die /etc/init.d/nagios-nrpe-serverZeilengruppe "stop" im Skript zuerst den Start-Stopp-Dämon aufruft, der SIGTERM an nrpe sendet und dann nur eine Sekunde wartet.

Wenn nrpe zu diesem Zeitpunkt noch nicht beendet wurde, ist die PID-Datei weiterhin vorhanden und wird vom /etc/init.d/nagios-nrpe-serverSkript entfernt.

Schlimmer noch, wenn /etc/init.d/nagios-nrpe-server restartnicht nur die PID-Datei entfernt wird, schlägt der Versuch, nrpe neu zu starten, fehl, vorausgesetzt, der nrpe-Daemon ist beim Herunterfahren immer noch verspätet.

Der Versuch, unter diesen Umständen zu starten, schlägt fehl, da nrpe weiterhin an einen Socket gebunden ist und der zweite Bindungsversuch dazu führt, dass der Start von nrpe abgebrochen wird.

Sie hätten sich fragen sollen, warum es einen Kommentar zu "Manchmal wird die PID-Datei nicht entfernt" gab.

Sie sollten auf Systemen getestet worden sein, die eine hohe Last und daher langsame Reaktionszeiten haben.

Der Fix besteht darin --retry 10, dem Aufruf von oder etwas hinzuzufügenstart-stop-daemon ... --stop ...

Vielen Dank

Antworten:


14

Zunächst einmal vielen Dank für die Fehlerarbeit, die Sie bisher geleistet haben. Es ist großartig, dass Sie sich an der Behebung dieses Fehlers beteiligen möchten!

Der beste Weg ist, einen neuen Fehler gegen präzise zu melden und deutlich zu machen, dass es sich um eine durch LP: # 600941 verursachte Regression handelt. Geben Sie ihm das Tag 'Regressions-Updates'. Es wäre auch gut, es in den Kommentaren von LP: # 600941 zu erwähnen, damit Benutzer dies sehen, wenn sie untersuchen, wie sie die Regression selbst treffen. Das Tag "Regressionsaktualisierungen" stellt sicher, dass Ihr Fehler getestet und schnell behoben wird. Also ja, fangen Sie zuerst damit an:

ubuntu-bug nagios-nrpe-server

Da dies alle Releases betrifft, spielt es keine Rolle, wo Sie dies tun (besser, Sie tun dies auf einer Plattform, die Sie in Ruhe lassen können, um Korrekturen zu überprüfen).

Momentan sind genaue ISO-Werte wahrscheinlich nicht installierbar, aber Sie können sie hier ausprobieren:

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

Sie können eine Oneiric-Maschine auch auf präzise schalten, indem Sie die Quellen in /etc/apt/sources.list* bearbeiten und oneiric in präzise ändern apt-get update && apt-get dist-upgrade. Es gibt jedoch Übergänge und große Änderungen. Tun Sie dies also nicht auf einem Produktionssystem!

Um das Update einzureichen, verwenden Sie am besten Ubuntu Distributed Development. Weisen Sie sich den Fehler zu und führen Sie dann die folgenden Schritte aus:

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 ist dein neuer Bug #

Weitere Informationen hierzu finden Sie unter https://wiki.ubuntu.com/DistributedDevelopment

Bitte zögern Sie nicht, auch in # ubuntu-devel und / oder # ubuntu-server auf Freenode nachzufragen.


Vielen Dank für all diese tollen Informationen. Ich werde sehen, ob ich es in Zukunft gut nutzen kann.
nutznboltz

Ich habe Ihre Liste mit Aktivitäten an unser internes Atlassian-Ticketsystem angehängt, damit ich nicht den Überblick verliere.
nutznboltz

Bisher habe ich LP: # 896388 installiert.
nutznboltz

1
Es stellte sich heraus, dass Sie mich dazu gebracht haben, meine Zeit zu verschwenden, siehe ubuntuforums.org/showthread.php?p=11489142
nutznboltz

nutznboltz, ich glaube nicht, dass du deine Zeit verschwendet hast! Wie stgraber sagte, würde er gerne sehen, dass Ihr Fix in Debian vorgelagert akzeptiert wird. Das ist eine ziemlich normale Reaktion und ein wichtiger Schritt in diesem Prozess. Andernfalls kann es bei der nächsten Version zurückgehen. Ihre Arbeit wird sehr geschätzt und ich bin sicher, dass Ihr Fix akzeptiert wird.
SpamapS
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.