Oracleシステムでデータベースダンプのインポートを実行しています RHEL 5.9、2.6.18-348.6.1.el5)。インポートが完了せず、最終的に次のエラーが発生します。
ORA-15080: synchronous I/O operation to a disk failed
WARNING: failed to write mirror side 1 of virtual extent 248 logical extent 0 of file 280 in group 1 on disk 1 allocation unit 986
Errors in file /u01/app/Oracle/diag/rdbms/dbprod/DBPROD/trace/DBPROD_lgwr_24520.trc:
ORA-00345: redo log write error block 509314 count 2023
ORA-00312: online log 1 thread 1: '+DATA/dbprod/redo01.log'
ORA-15081: failed to submit an I/O operation to a disk
ORA-15081: failed to submit an I/O operation to a disk
リングバッファと/var/log/messages
に対応するエラーがあります:
Jun 12 18:54:42 db1-test kernel: megasas: build_ld_io error, sge_count = 51
Jun 12 18:54:42 db1-test kernel: megasas: Err returned from build_and_issue_cmd
Jun 12 18:54:42 db1-test kernel: megasas: build_ld_io error, sge_count = 51
Jun 12 18:54:42 db1-test kernel: megasas: Err returned from build_and_issue_cmd
Jun 12 18:54:42 db1-test kernel: megasas: build_ld_io error, sge_count = 51
Jun 12 18:54:42 db1-test kernel: megasas: Err returned from build_and_issue_cmd
Jun 12 18:54:42 db1-test kernel: sd 0:2:1:0: timing out command, waited 360s
Jun 12 18:54:42 db1-test kernel: sd 0:2:1:0: Unhandled error code
Jun 12 18:54:42 db1-test kernel: sd 0:2:1:0: SCSI error: return code = 0x06000000
Jun 12 18:54:42 db1-test kernel: Result: hostbyte=DID_OK driverbyte=DRIVER_TIMEOUT,SUGGEST_OK
インポートを含むドライブアレイは、10ディスクSAS 300GB10kディスクを使用するRAID1 + 0のアレイです。RAIDコントローラーは---(LSI MegaRAID SAS 9260-8i 。MegaCLIを介してディスクまたはアダプタのエラーは報告されません。
編集:
他のスケジューラーも同じ結果で試行されました。 isa サードパーティ(Vormetric)ファイルシステム暗号化モジュール このセットアップで実行されています。削除すると、インポートが完了します。だから今、これがモジュールの欠陥なのか、それともLSIドライバーの悪い状態を引き起こしているのか疑問に思っています。
インポート中に、14,000の書き込みIOPSに達しました。
最近の試みでは、システムはコンソール上で次のように完全に停止します。
フリーズ前の最後のtop
出力。
最終的に Sergey は正しいです-これはドライバーの問題です。しかし、最初に物事をチェックしましょう:
まず、CFQではなく期限I/Oスケジューラーを使用することをお勧めします。 deadline
は、その名前が示すように、すべてのIOPがタイムリーに完了することを保証します。
メガレイドカードからイベントを取得します。
megacli -adpeventlog -getevents -f /tmp/megaraid-$(date +%F_%T) -aALL
ディスク上のSMARTデータを確認してください(これを機能させるには、新しいsmartmontoolsを構築する必要があります)。
# megacli -pdlist -a0 |grep 'Device Id'
Device Id: 10
Device Id: 9
# smartctl -a /dev/sda -d megaraid,9
«…»
# smartctl -a /dev/sda -d megaraid,10
«…»
すべて問題がないように見える場合は、先に進んで LSIの最新のドライバー を試してください。
このセットアップでは、サードパーティ(Vormetric)のファイルシステム暗号化モジュールが実行されています。これを削除すると、インポートを完了できます。だから今、これがモジュールの欠陥なのか、それともLSIドライバーの悪い状態を引き起こしているのか疑問に思っています。
Voretricモジュールは、互換性のないことをしている可能性があります。私は彼らのモジュールが高負荷の下であなたのシステムをどのように台無しにしているかについて彼らと話すことから始めます。