LP:#600941が引き起こすすべての損傷を修正するパッチを提出する方法は何ですか?


9

LP:#600941が引き起こすすべての損傷を修正するパッチを提出する最良の方法は何ですか?

LP:#600941が、現時点でまだサポートされているUbuntuのすべてのバージョンに組み込まれたため、私は尋ねます。特定のバージョンを選択して実行ubuntu-bugする必要がありますか?そのバージョンはLTSまたはOneiricまたはPreciseにする必要があります(Preciseが必要な場合、どうすれば入手できますか?)

話はそれが押し出された後、すべてのシステムがNagios nrpeの再起動の失敗を経験し始めたということです。

のようなコマンド /etc/init.d/nagios-nrpe-server restart

nrpeを停止しますが、再起動しません。

これを、/etc/init.d/nagios-nrpe-serverスクリプトが呼び出す方法まで追跡しましたstart-stop-daemon

問題は、/etc/init.d/nagios-nrpe-serverスクリプトの「stop」スタンザが最初にstart-stop-daemonを呼び出し、それがSIGTERMをnrpeに送信してから、1秒間だけ待機することです。

その時間までにnrpeが終了しなかった場合、pidファイルは引き続き存在し、/etc/init.d/nagios-nrpe-serverスクリプトによって削除されます。

さらに悪い/etc/init.d/nagios-nrpe-server restartことに、pidファイルが削除されるだけでなく、nrpeデーモンがシャットダウンを遅らせている場合、nrpeの再起動は失敗します。

nrpeは引き続きソケットにバインドされ、2回目のバインドでの試行によりnrpeの起動が中止されるため、これらの状況で開始しようとすると失敗します。

彼らはなぜ「時々pidファイルが削除されない」というコメントがあったのか疑問に思っていたはずです。

負荷が大きく、nrpe応答時間が遅いシステムでテストする必要があります。

修正は--retry 10、などの呼び出しを追加することですstart-stop-daemon ... --stop ...

ありがとう

回答:


14

まず、これまでに行ったすべてのバグ作業に感謝します。このバグの修正に参加したいのは素晴らしいことです。

最善の方法は、新しいバグを正確に報告し、それがLP:#600941によって引き起こされたリグレッションであることを明確にすることです。「regression-updates」というタグを付けます。また、LP:#600941のコメントでそれを言及しておくとよいでしょう。そうすることで、ユーザーが回帰を打つことを調査しているときに、それがわかるようになります。回帰更新タグは、バグがトリアージされ、迅速に対応されることを保証します。だからはい、まずこれから始めましょう:

ubuntu-bug nagios-nrpe-server

これはすべてのリリースに影響を与えるので、どこでこれを行うかは問題ではありません(修正を検証できるように、そのままにしておくことができるプラットフォームで実行することをお勧めします)。

現在、正確なISOはおそらくインストールできませんが、ここで試すことができます。

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

/etc/apt/sources.list*のソースを編集し、oneiricをprecisionに変更してから、oneiricマシンを正確に実行することもできapt-get update && apt-get dist-upgradeます。ただし、移行や大きな変更が行われているため、本番システムではこれを行わないでください。

修正を送信するには、Ubuntu分散開発を使用するのが最善の方法です。バグを自分に割り当て、次の手順を実行します。

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は新しいバグです#

これを行う方法の詳細については、https://wiki.ubuntu.com/DistributedDevelopmentを参照してください。

Freenodeの#ubuntu-develや#ubuntu-serverにも質問してください。


このすべての素晴らしい情報をありがとう。将来は上手く活用できるかなと思います。
nutznboltz

やるべきことのリストを内部のアトラシアンチケットシステムに添付しましたので、見失いません。
nutznboltz

これまでのところ、LP:#896388を用意しています。
nutznboltz

1
あなたが私をだまして私の時間を浪費していることがわかり
showthread.php?

nutznboltz、あなたはあなたの時間を無駄にしたとは全く思いません!stgraberが言ったように、彼はあなたの修正がDebianの上流で受け入れられることを望んでいます。これはかなり正常な応答であり、プロセスの重要なステップです。それ以外の場合は、次のリリースで後退する可能性があります。あなたの仕事はかなりありがたいです、そしてあなたの修正は受け入れられると私は確信しています。
SpamapS
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.