[Bug] Cross Compact 失败
- 主要语言
- 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
branch:rc/1.2.1
### Describe the bug and provide the minimal reproduce step
2023-10-16 15:55:43,219 [pool-400-IoTDB-Compaction-Worker-20] ERROR o.a.i.d.s.d.c.e.t.CrossSpaceCompactionTask:262 - root.db-89 [Compaction] Meet errors in cross space compaction.
java.lang.RuntimeException: Timestamp of the current point of root.db.xxxxx. is 1696235414910, which should be later than the last time 1696235514143
at org.apache.iotdb.db.storageengine.dataregion.compaction.execute.utils.writer.FastCrossCompactionWriter.checkTimeAndMayFlushChunkToCurrentFile(FastCrossCompactionWriter.java:307)
at org.apache.iotdb.db.storageengine.dataregion.compaction.execute.utils.writer.FastCrossCompactionWriter.write(FastCrossCompactionWriter.java:284)
at org.apache.iotdb.db.storageengine.dataregion.compaction.execute.utils.executor.fast.SeriesCompactionExecutor.compactWithOverlapPages(SeriesCompactionExecutor.java:327)
at org.apache.iotdb.db.storageengine.dataregion.compaction.execute.utils.executor.fast.SeriesCompactionExecutor.compactPages(SeriesCompactionExecutor.java:248)
at org.apache.iotdb.db.storageengine.dataregion.compaction.execute.utils.executor.fast.SeriesCompactionExecutor.compactWithOverlapChunks(SeriesCompactionExecutor.java:173)
at org.apache.iotdb.db.storageengine.dataregion.compaction.execute.utils.executor.fast.SeriesCompactionExecutor.compactChunks(SeriesCompactionExecutor.java:154)
at org.apache.iotdb.db.storageengine.dataregion.compaction.execute.utils.executor.fast.AlignedSeriesCompactionExecutor.compactFiles(AlignedSeriesCompactionExecutor.java:109)
at org.apache.iotdb.db.storageengine.dataregion.compaction.execute.utils.executor.fast.AlignedSeriesCompactionExecutor.execute(AlignedSeriesCompactionExecutor.java:94)
at org.apache.iotdb.db.storageengine.dataregion.compaction.execute.task.subtask.FastCompactionPerformerSubTask.call(FastCompactionPerformerSubTask.java:144)
at org.apache.iotdb.db.storageengine.dataregion.compaction.execute.performer.impl.FastCompactionPerformer.compactAlignedSeries(FastCompactionPerformer.java:187)
at org.apache.iotdb.db.storageengine.dataregion.compaction.execute.performer.impl.FastCompactionPerformer.perform(FastCompactionPerformer.java:130)
at org.apache.iotdb.db.storageengine.dataregion.compaction.execute.task.CrossSpaceCompactionTask.doCompaction(CrossSpaceCompactionTask.java:161)
at org.apache.iotdb.db.storageengine.dataregion.compaction.execute.task.AbstractCompactionTask.start(AbstractCompactionTask.java:106)
at org.apache.iotdb.db.storageengine.dataregion.compaction.schedule.CompactionWorker.run(CompactionWorker.java:63)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.lang.Thread.run(Thread.java:833)
### What did you expect to see?
需要compact成功
### What did you see instead?
compact失败
### Anything else?
_No response_
### Are you willing to submit a PR?
- [ ] I'm willing to submit a PR!
贡献指南
调研方向
从 FastCrossCompactionWriter.java:307 的失败开始,跟踪 rc/1.2.1 分支上经过 SeriesCompactionExecutor 和 CrossSpaceCompactionTask 的 cross-space compaction 路径。检查所提供 stack trace 中的时间戳排序错误,并确定一种可复现地运行此 compaction 用例的方法。当报告的 cross-space compaction 成功完成且不再出现此错误时,即表示完成。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- java
- 领域
- databases
- Issue 类型
- 缺陷
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 活跃度
- 停滞
- 描述清晰度
- 需要澄清
- 新手友好度
- 25/100