apache / apache/iotdb

[Bug] 使用 GROUP BY LEVEL 搭配多個聚合函數時,結果出現不一致(sum / avg / count 異常)

オープン
#17,409 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る
主要言語
Java
スター
6.4k
フォーク
1.2k
平均マージ
1日 23時間
マージ済み PR(30日)
115

説明

### Search before asking

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

### Version

2.0.7

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

在 IoTDB 中使用 GROUP BY LEVEL 查詢時,當同時使用多個聚合函數(如 sum、avg、count)會出現結果不一致的情況。

具體問題如下:

- sum(cpu) 單獨查詢與搭配其他 aggregation 時,結果不同
- avg(cpu) 與 count(cpu) 的結果也會異常變化
- 同一筆資料在不同 aggregation 組合下,計算基準似乎不一致

### Query 1: 僅查 sum(結果正常)
Image

### Query 2: sum + avg(sum 變成 2 倍)
Image

### Query 3: sum + avg + count(全部異常)
Image

### Query 4: sum + count(結果又正常)
Image

### What did you expect to see?

- 不論 aggregation function 組合如何:
- sum(cpu) 應該一致
- count(cpu) 應該一致
- avg(cpu) 應滿足:
👉 avg = sum / count
- 多個 aggregation 應基於同一批資料計算

### What did you see instead?

Image

### Anything else?

_No response_

### Are you willing to submit a PR?

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

コントリビューションガイド

コントリビューションガイドを開く

調査の方向性

まず、IoTDB 2.0.7 について説明されている4つの GROUP BY LEVEL 集約の組み合わせを再現し、スクリーンショットを使って sum、avg、count を比較します。レポートにはソースファイルやテストの名前がなく、実行可能な SQL やサンプルデータも提供されていません。同じ入力がすべての組み合わせで一貫した集約結果を生成し、関連するクエリテスト領域に回帰テストのカバレッジが追加されていれば完了です。

索引モデルが issue の本文から書いたものです。

評価

領域
databases
issue の種類
バグ
難易度
4/5
見積もり時間
3〜5日
活発さ
静か
明瞭さ
説明が足りない
初心者へのやさしさ
42/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。