O dispositivo PowerFlex corrigiu erros de leitura
Summary: Os dispositivos SDS apresentam erros que informam "O dispositivo corrigiu erros de leitura".
Symptoms
Situação
Isso pode ocorrer quando um dispositivo SDS tem erros de leitura que foram corrigidos pelo SDS.
Isso pode ocorrer quando o scanner em segundo plano está desativado ou ativado.
Sintomas
Os erros corrigidos em um dispositivo podem ser mostrados nos seguintes locais:
-
A GUI mostra um erro:
-
A saída "--query_sds --sds_id <SDS_ID>" mostra um contador para cada dispositivo com erros de leitura corrigidos:
15: Name: /dev/sdr Path: /dev/sdr Original-path: /dev/sdr ID: 2d63f7c80003000e
Storage Pool: SAS_pool1, Capacity: 1116 GB Error-fixes: 6 scanned 0 MB, Compare errors: 0 State: Normal
O counters_dump.txt no MDM getInfoDump mostra o FIXED_READ_ERROR_COUNT em objetos diferentes:
ID: df7700a600120012 DEVICE_TYPE READ_ERR FIXED_READ_ERROR_COUNT 1 ID: 1d1e4e5500000012 SDS_TYPE READ_ERR FIXED_READ_ERROR_COUNT 1 ID: 1c34e1f700000007 STORAGE_POOL_TYPE READ_ERR FIXED_READ_ERROR_COUNT 1 ID: b9b286df00000001 PROTECTION_DOMAIN_TYPE READ_ERR FIXED_READ_ERROR_COUNT 1 ID: 49b6b8057d1fc84b SYSTEM_TYPE READ_ERR FIXED_READ_ERROR_COUNT 1
Outros sintomas possíveis: O dispositivo pode estar em estado de erro. Pode haver erros no dispositivo de bloco nas mensagens do sistema ou no syslog:
blk_update_request: critical medium error, dev sdr, sector 94390272 sd 0:2:15:0: [sdr] tag#1 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE sd 0:2:15:0: [sdr] tag#1 Sense Key : Medium Error [current] sd 0:2:15:0: [sdr] tag#1 Add. Sense: Unrecovered read error
Pode haver mensagens longas de E/S em trânsito no trc do SDS:
contDevMngr_HandleLongInflightIoViolation:02998: IO on devId: 2d63f7c80003000e (/dev/sdr) took too long, Low threshold exceeded - waited for reaper 12250 millis contDevMngr_HandleLongInflightIoViolation:02998: IO on devId: 2d63f7c80003000e (/dev/sdr) took too long, Low threshold exceeded - waited for reaper 13250 millis contDevMngr_HandleLongInflightIoViolation:02998: IO on devId: 2d63f7c80003000e (/dev/sdr) took too long, Low threshold exceeded - waited for reaper 14250 millis
Pode haver erros nos contadores de E/S do dispositivo no sdbg_out.txt do SDS:
13: Dev path:/dev/sdr Size(lbs):0 Time grn:520577464
Io Counters:
GENERAL
Writes: 4852 Lbs: 2160443 MBs: 1054 Errors: 0
Reads: 49283 Lbs: 111376 MBs: 54 Errors: 12744
BM
Writes: 0 Lbs: 0 MBs: 0 Errors: 0
Reads: 0 Lbs: 0 MBs: 0 Errors: 0
COMB_MAP
Writes: 5 Lbs: 1390 MBs: 0 Errors: 2
Reads: 0 Lbs: 0 MBs: 0 Errors: 0
TOOTH_MAP
Writes: 426 Lbs: 688528 MBs: 336 Errors: 424
Reads: 0 Lbs: 0 MBs: 0 Errors: 0
IO
Writes: 4319 Lbs: 603064 MBs: 294 Errors: 16
Reads: 2076 Lbs: 16608 MBs: 8 Errors: 22
A latência do dispositivo pode ser alta de acordo com counters_dump.txt:
ID: 2d63f7c60003000c DEVICE_TYPE DEV_LATENCY AVG_WRITE_LATENCY_IN_MICROSEC 0 ID: 2d63f7c70003000d DEVICE_TYPE DEV_LATENCY AVG_WRITE_LATENCY_IN_MICROSEC 0 ID: 2d63f7c80003000e DEVICE_TYPE DEV_LATENCY AVG_WRITE_LATENCY_IN_MICROSEC 11424 ID: 2d63f7c90003000f DEVICE_TYPE DEV_LATENCY AVG_WRITE_LATENCY_IN_MICROSEC 0 ID: 2d63f7ca00030010 DEVICE_TYPE DEV_LATENCY AVG_WRITE_LATENCY_IN_MICROSEC 0
Impacto
O contador "Fixed Read Errors" não tem nenhum impacto direto no sistema.
No entanto, isso pode indicar uma condição subjacente que pode causar desconexões do SDS, atividades de recriação, etc.
Cause
Isso pode ser visto quando um dispositivo SDS tem erros de leitura que foram corrigidos ou corrigidos usando a cópia espelhada. A correção pode acontecer nos seguintes casos:
- O scanner em segundo plano não consegue ler uma cópia dos dados e usa a outra cópia para substituí-los.
- Um SDS não consegue atender às solicitações de leitura de um SDC devido à falha na leitura do disco e usa a cópia secundária para atender à E/S e sobregravar os dados locais.
O aviso indica que o disco pode estar ficando lento, com defeito ou com blocos defeituosos. Os mecanismos descritos acima reescrevem os blocos, o que pode corrigir blocos ruins "soft".
Resolution
- Examine o disco. Se necessário, entre em contato com o fornecedor do hardware para substituí-lo.
O contador geralmente indica uma condição subjacente e o disco está quebrando. A ação do SDS explicada acima é uma tentativa de corrigir blocos defeituosos suaves, mas pode não ter sucesso em todos os cenários.
-
Limpe o contador.
scli --reset_scanner_error_counters --protection_domain_id <pd id> --storage_pool_id <sp id> --reset_corrected_read_error_counter