apache / apache/iotdb

UnsupportedOperationException when try to restart dataNode

Open
#10,362 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
6.4k
Forks
1.2k
Avg merge
1d 23h
Merged PRs (30d)
115

Description

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)

Contributor guide

Open the contributing guide

Research direction

Start with HDFSFile.java:308 and follow its call path through WALRecoverManager.addRecoverPerformer, DataRegion.recoverUnsealedTsFile, and DataRegion.recover. Reproduce the one-DataNode-failure restart using the stated replication settings and verify recovery completes without UnsupportedOperationException.

Written by the indexing model from the issue text.

Assessment

Tech stack
hadoop, java
Domain
databases
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.