XFS: Erro interno XFS_WANT_CORRUPTED_GOTO

2

Depois do que parece ser uma queda de energia no meu banco de dados Postgres em standby, estou recebendo o erro:

XFS: Internal error XFS_WANT_CORRUPTED_GOTO

depois que o sistema é reinicializado, assim como o log de erros do postgres mostra:

ERROR:  could not write block 1759002 in file "base/278425/1651445.13": Input/output error
CONTEXT:  writing block 1759002 of relation base/278425/1651445
ERROR:  could not write block 339174 in file "base/278425/1651495.2": Input/output error
CONTEXT:  writing block 339174 of relation base/278425/1651495
PANIC:  could not write to log segment 0000000100001423000000A9 at offset 149696, length 5952: Input/output error

Alguns dias antes, em um sistema idêntico, recebi um erro de postgres:

ERROR:  could not write block 69511 in file "base/278425/539725": Structure needs cleaning
CONTEXT:  writing block 69511 of relation base/278425/539725
WARNING:  could not write block 69511 of base/278425/539725
DETAIL:  Multiple failures --- write error might be permanent.

O sistema de arquivos de 2TB é montado usando:

monte -t xfs -o rw, nobarrier, noatime, nodiratime / dev / md0 / postgres_data

  1. Como esse é um volume do AWS ELB (GP2), estou supondo que ele não tem bateria e o volume está corrompido porque eu escolhi a opção nobarrier ?

  2. Como esse sistema de arquivos tem 2TB, devo adicionar a opção inode64 e esse poderia ser o problema? O sistema de arquivos contém 1,2 TB de dados.

por Nick Boutelier 23.07.2015 / 21:55

1 resposta

2

inode64 é o valor de montagem padrão, portanto, seu sistema já deve usá-lo.

Com muita probabilidade, o problema é devido à opção nobarrier , acoplada ao cache de gravação não-BBU no lado do host.

Você teve que colocar o sistema de arquivos offline e executar xfs_repair contra ele.

    
por 24.07.2015 / 09:32

Tags