apache / apache/iotdb

[Bug] A large number of error logs are output every minute.

Open
#12,844 9 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

### Search before asking

- [X] I searched in the [issues](https://github.com/apache/iotdb/issues) and found nothing similar.

### Version

docker image: docker.io/apache/iotdb:1.3.2-standalone

### Describe the bug and provide the minimal reproduce step

log files:
1. log_datanode_error.log
2. log_datanode_all.log

A large number of error logs are output every minute as following:

2024-07-03 05:36:45,608 [pool-10-IoTDB-Compaction-Schedule-4] ERROR o.a.i.d.s.d.DataRegion:2434 - Meet error in compaction schedule.
java.lang.NoClassDefFoundError: Could not initialize class org.apache.iotdb.db.storageengine.dataregion.flush.CompressionRatio$CompressionRatioHolder
at org.apache.iotdb.db.storageengine.dataregion.flush.CompressionRatio.getInstance(CompressionRatio.java:202)
at org.apache.iotdb.db.storageengine.dataregion.compaction.selector.estimator.AbstractCompactionEstimator.(AbstractCompactionEstimator.java:62)
at org.apache.iotdb.db.storageengine.dataregion.compaction.selector.estimator.AbstractCrossSpaceEstimator.(AbstractCrossSpaceEstimator.java:35)
at org.apache.iotdb.db.storageengine.dataregion.compaction.selector.estimator.FastCrossSpaceCompactionEstimator.(FastCrossSpaceCompactionEstimator.java:27)
at org.apache.iotdb.db.storageengine.dataregion.compaction.selector.ICompactionSelector.getCompactionEstimator(ICompactionSelector.java:70)
at org.apache.iotdb.db.storageengine.dataregion.compaction.selector.impl.RewriteCrossSpaceCompactionSelector.(RewriteCrossSpaceCompactionSelector.java:92)
at org.apache.iotdb.db.storageengine.dataregion.compaction.selector.constant.CrossCompactionSelector.createInstance(CrossCompactionSelector.java:46)
at org.apache.iotdb.db.storageengine.dataregion.compaction.schedule.CompactionScheduler.tryToSubmitCrossSpaceCompactionTask(CompactionScheduler.java:258)
at org.apache.iotdb.db.storageengine.dataregion.compaction.schedule.CompactionScheduler.scheduleCompaction(CompactionScheduler.java:103)
at org.apache.iotdb.db.storageengine.dataregion.DataRegion.executeCompaction(DataRegion.java:2430)
at org.apache.iotdb.db.storageengine.dataregion.compaction.schedule.CompactionScheduleTaskWorker.call(CompactionScheduleTaskWorker.java:69)
at org.apache.iotdb.db.storageengine.dataregion.compaction.schedule.CompactionScheduleTaskWorker.call(CompactionScheduleTaskWorker.java:34)
at java.base/java.util.concurrent.FutureTask.run(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.base/java.lang.Thread.run(Unknown Source)

### What did you expect to see?

The file can be compressed normally and no error log should be output.

### What did you see instead?

None

### Anything else?

_No response_

### Are you willing to submit a PR?

- [ ] I'm willing to submit a PR!

Contributor guide

Open the contributing guide

Research direction

Start with CompressionRatio.java and the stack trace from CompactionScheduler through AbstractCompactionEstimator to identify why CompressionRatioHolder fails to initialize in the IoTDB 1.3.2 standalone image. Use the reported compaction-schedule error as the reproduction signal; done means compaction runs without repeated errors and the expected compression works.

Written by the indexing model from the issue text.

Assessment

Tech stack
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.