Назад | Перейти на главную страницу

Ошибки контроллера LSI RAID при импорте БД - как устранить неполадки?

Мы выполняем импорт дампа базы данных в системе 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 в RAID 1 + 0 с использованием дисков емкостью 300 ГБ 10 КБ. Контроллер RAID - это LSI MegaRAID SAS 9260-8i. Через MegaCLI не сообщается об ошибках диска или адаптера.


Редактировать:

Другие планировщики были опробованы с тем же результатом. Там является а сторонний (Vormetric) модуль шифрования файловой системы работает в этой настройке. Удаление позволяет завершить импорт. Итак, теперь мне интересно, является ли это недостатком модуля или он вызывает плохое состояние в драйвере LSI.


Во время импорта мы достигаем 14 000 операций ввода-вывода в секунду при записи.

В недавних попытках система полностью зависает со следующим на консоли.

Последний top вывод до заморозки.

В конечном итоге Сергей правильно - это проблема драйвера. Но сначала давайте проверим:

Прежде всего, вы захотите использовать планировщик ввода-вывода крайнего срока, а не CFQ. deadline, как следует из названия, гарантирует своевременное выполнение всех операций ввода-вывода в секунду.

Возьмите события из карты мегарайда:

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, скорее всего, делает что-то несовместимое, да. Я бы начал с разговора с ними о том, как их модуль портит вашу систему при высокой нагрузке.