今回は、Goldの「障害復旧 - 起こりうる障害のパターン」からの出題です。
ユーザ要求によりクエリがキャンセルされた
プロセスに対してpg_cancel_backend関数が発行された
プロセスに対してpg_terminate_backend関数が発行された
OOM KillerによりSIGKILLが発生した
user_funcユーザ定義関数によりSIGSEGVが発生した
※この例題は実際のOSS-DB技術者認定試験とは異なります。
【A,B,C,Dについて】
これらの状況の場合は、それぞれ以下のようなサーバログが出力されるため、適切な内容ではありません。
A,B
ERROR: canceling statement due to user request
STATEMENT: SELECT user_func();
C
FATAL: terminating connection due to administrator command
STATEMENT: SELECT user_func();
D
LOG: server process (PID 21334) was terminated by signal 9: Killed
DETAIL: Failed process was running: SELECT user_func();
【Eについて】
signal 11(SIGSEGV)は、ユーザ定義関数等で誤ったメモリ操作を行いセグメンテーション違反が発生した際にログ出力されます。
PostgreSQL Version9.2以降では、該当プロセスが実行していた処理内容があわせてログに出力されるようになりました。
よって、Eは適切な内容です。
正解は E です。
今回の解説について、理解できないポイントがあればどんどん質問をお寄せ下さい。
※試験問題に関わるお問い合わせにつきましては、LPI-Japan事務局ではお応えできませんのでご了解ください。
© EDUCO All Rights Reserved.