重建索引失败
问题现象
当Desc表的索引出现损坏时,无法进行一系列操作,报错信息可能为:
index \"%s\" contains corrupted page at block %u" ,RelationGetRelationName(rel),BufferGetBlockNumber(buf), please reindex it.
原因分析
在实际操作中,索引会由于软件问题或者硬件问题引起崩溃。例如,当索引分裂完而磁盘空间不足、出现页面损坏等问题时,会导致索引损坏。
解决办法
若此表是以pg_cudesc_xxxxx_index进行命名则为列存表,则说明desc表的索引表损坏,通过desc表的索引表表名,找到对应主表的oid和表,执行REINDEX INTERNAL TABLE name语句重建cudesc表的索引。