[Bug] SubCompactionTask meet errors.ArrayIndexOutOfBoundsException: null
- 主要语言
- Java
- 星标
- 6.4k
- 派生
- 1.2k
- 平均合并
- 1 天 23 小时
- 30 天内合并 PR
- 115
描述
### Search before asking
- [X] I searched in the [issues](https://github.com/apache/iotdb/issues) and found nothing similar.
### Version
iotdb-v1.1.0
### Describe the bug and provide the minimal reproduce step
2023-05-29 09:09:54,858 [pool-24-IoTDB-Sub-Compaction-35] ERROR o.a.i.c.c.t.WrappedThreadPoolExecutor:108 - Exception in thread pool org.apache.iotdb.threadpool:type=Sub-Compaction
java.lang.ArrayIndexOutOfBoundsException: null
2023-05-29 09:09:54,858 [pool-23-IoTDB-Compaction-10] ERROR o.a.i.d.e.c.e.p.i.FastCompactionPerformer:260 - [Compaction] SubCompactionTask meet errors
java.util.concurrent.ExecutionException: java.lang.ArrayIndexOutOfBoundsException
at java.util.concurrent.FutureTask.report(FutureTask.java:122)
at java.util.concurrent.FutureTask.get(FutureTask.java:192)
at org.apache.iotdb.db.engine.compaction.execute.performer.impl.FastCompactionPerformer.compactNonAlignedSeries(FastCompactionPerformer.java:257)
at org.apache.iotdb.db.engine.compaction.execute.performer.impl.FastCompactionPerformer.perform(FastCompactionPerformer.java:137)
at org.apache.iotdb.db.engine.compaction.execute.task.CrossSpaceCompactionTask.doCompaction(CrossSpaceCompactionTask.java:160)
at org.apache.iotdb.db.engine.compaction.execute.task.AbstractCompactionTask.start(AbstractCompactionTask.java:80)
at org.apache.iotdb.db.engine.compaction.schedule.CompactionWorker.run(CompactionWorker.java:65)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.ArrayIndexOutOfBoundsException: null
2023-05-29 09:09:54,880 [pool-23-IoTDB-Compaction-10] ERROR o.a.i.d.e.c.e.t.CrossSpaceCompactionTask:251 - root.iot-7 [Compaction] Meet errors in cross space compaction.
java.lang.RuntimeException: java.io.IOException: java.util.concurrent.ExecutionException: java.lang.ArrayIndexOutOfBoundsException
at org.apache.iotdb.db.engine.compaction.execute.performer.impl.FastCompactionPerformer.perform(FastCompactionPerformer.java:154)
at org.apache.iotdb.db.engine.compaction.execute.task.CrossSpaceCompactionTask.doCompaction(CrossSpaceCompactionTask.java:160)
at org.apache.iotdb.db.engine.compaction.execute.task.AbstractCompactionTask.start(AbstractCompactionTask.java:80)
at org.apache.iotdb.db.engine.compaction.schedule.CompactionWorker.run(CompactionWorker.java:65)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.io.IOException: java.util.concurrent.ExecutionException: java.lang.ArrayIndexOutOfBoundsException
at org.apache.iotdb.db.engine.compaction.execute.performer.impl.FastCompactionPerformer.compactNonAlignedSeries(FastCompactionPerformer.java:261)
at org.apache.iotdb.db.engine.compaction.execute.performer.impl.FastCompactionPerformer.perform(FastCompactionPerformer.java:137)
... 8 common frames omitted
Caused by: java.util.concurrent.ExecutionException: java.lang.ArrayIndexOutOfBoundsException
at java.util.concurrent.FutureTask.report(FutureTask.java:122)
at java.util.concurrent.FutureTask.get(FutureTask.java:192)
at org.apache.iotdb.db.engine.compaction.execute.performer.impl.FastCompactionPerformer.compactNonAlignedSeries(FastCompactionPerformer.java:257)
... 9 common frames omitted
Caused by: java.lang.ArrayIndexOutOfBoundsException: null
### What did you expect to see?
no error
### What did you see instead?
none
### Anything else?
none
### Are you willing to submit a PR?
- [X] I'm willing to submit a PR!
贡献指南
调研方向
从 FastCompactionPerformer.compactNonAlignedSeries 开始,重点查看第 257-261 行,并通过 CrossSpaceCompactionTask 和 AbstractCompactionTask 跟踪 SubCompactionTask 的失败。如果可能,在 IoTDB v1.1.0 上重现报告的失败,并确定 ArrayIndexOutOfBoundsException 的来源。跨空间压缩在没有该异常的情况下完成即表示完成。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- java
- 领域
- databases
- Issue 类型
- 缺陷
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 活跃度
- 停滞
- 描述清晰度
- 需要澄清
- 新手友好度
- 35/100