We apologize that the translated content is not provided to this page.
问题描述
最近线上生产环境大数据数据库MPP集群中,一台存储数据的Impalad程序一直无法启动。
icegridnode启动时,由于Impalad启动报错,返回Exit code = 3并退出。
由于采取的是分布式集群的部署方式,使用都是正常,隔了一个月都没发现
查看log发现有几条:
ERROR [main] 2021-07-14 11:29:11,890 LogTransaction.java:493 - Unexpected disk state: failed to read transaction log [mc_txn_compaction_....log in /mpp-data/c/data03/system/size_estimates-xxxx]
Files and contents follow:
/mpp-data/c/
按照输出的log发现,疑似是commit的时间差有1秒,所以无法重新执行该事务,所以导致无法启动。
问题处置
根据DataStax给出的ERROR实例,问题解释为:为了防止磁盘出现数据损坏,每次启动的时候会读取事物的日志进行比对,如果日志出现错误或者磁盘数据损坏等都会导致节点不会启动,并报错。
按照给出的处理方式,需要删除sstable错误的相关文件,文件删除后节点启动成功。