apache / apache/iotdb

UnsupportedOperationException when try to restart dataNode

未关闭
#10,362 2 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
主要语言
Java
星标
6.4k
派生
1.2k
平均合并
1 天 23 小时
30 天内合并 PR
115

描述

version: 1.1.0
I deployment iotdb basedon HDFS as data storage.
config:
schema_replication_factor=1
data_replication_factor=2

when one dataNode is failed and try to restart it, there is such exception:
ERROR o.a.i.c.c.t.WrappedThreadPoolExecutor:108 - Exception in thread pool org.apache.iotdb.threadpool:type=StorageEngine
java.lang.UnsupportedOperationException: Unsupported operation.
at org.apache.iotdb.hadoop.fileSystem.HDFSFile.getCanonicalPath(HDFSFile.java:308)
at org.apache.iotdb.db.wal.recover.WALRecoverManager.addRecoverPerformer(WALRecoverManager.java:181)
at org.apache.iotdb.db.engine.storagegroup.DataRegion.recoverUnsealedTsFile(DataRegion.java:774)
at org.apache.iotdb.db.engine.storagegroup.DataRegion.recover(DataRegion.java:483)
at org.apache.iotdb.db.engine.storagegroup.DataRegion.(DataRegion.java:345)
at org.apache.iotdb.db.engine.StorageEngine.buildNewDataRegion(StorageEngine.java:459)
at org.apache.iotdb.db.engine.StorageEngine.lambda$asyncRecover$2(StorageEngine.java:255)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)

贡献指南

打开贡献指南

调研方向

从 HDFSFile.java:308 开始,沿着 WALRecoverManager.addRecoverPerformer、DataRegion.recoverUnsealedTsFile 和 DataRegion.recover 的调用路径进行跟踪。使用所述的复制设置重现单个 DataNode 故障后的重启,并验证恢复能够在不发生 UnsupportedOperationException 的情况下完成。

由索引模型根据 Issue 内容生成。

评估

技术栈
hadoop, java
领域
databases
Issue 类型
缺陷
难度
4/5
预计耗时
3-5 天
活跃度
停滞
描述清晰度
基本清楚
新手友好度
35/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。