This issue requires an assignee. Since you haven't specified one, we've assigned TestManager as the default assignee for this issue.


Welcome To openGauss Community
Hey @Nerifish , thanks for your contribution to the community.
Bot Usage Manual
I'm the Bot here serving you. You can find the instructions on how to interact with me at Here . That means you can comment below every pull request or issue to trigger Bot Commands. You can self-configure the PR merge rules for this repository. For more details, please refer to Here.
Contact Guide
If you have any questions, please contact the SIG: StorageEngine ,
and any of the maintainers: @CarrotGo, @chendong76, @chenxiaobin19, @congzhou2603, @dodders, @hwworkholic, @jemappellehc, @libiao2024, @muyulinzhong, @quemingjian, @shenzheng4, @shirley_zhengx, @superlchf, @totaj, @wlff234, @wofanzheng, @ywzq1161327784 ,
and any of the committers: @CityYard, @libiao2024, @lijieac, @theothersideofsea, @wang_bowen, @weithu, @xiong_xjun, @yuanyazhi, @zhangzq131 .





回归版本:7.0.0-LTS / archive B023(oGRAC Release 7.0.0-RC3 f72e371 build 2026-09-12 12:12:04)
回归环境:oGRAC 双节点(20.20.20.104 / 20.20.20.106),db=ONLINE,节点 20.20.20.104 执行
结论:通过(AVG(DISTINCT ...) OVER() 结果为 5000.5,不再返回错误值 2500.75;整段用例约 1s 完成)
说明:按 issue 中 je_win_avg_left/right 建表与聚合查询步骤验证(跳过步骤开头无关的 t1/t2 FOR UPDATE 示例句)。
完整回归 SQL
DROP TABLE IF EXISTS je_win_avg_left;
DROP TABLE IF EXISTS je_win_avg_right;
CREATE TABLE je_win_avg_left (k INT);
CREATE TABLE je_win_avg_right (k INT);
INSERT INTO je_win_avg_left
SELECT CASE WHEN a.n <= 50 THEN 1 ELSE (a.n - 51) * 200 + b.n END
FROM (SELECT LEVEL n FROM sys_dummy CONNECT BY LEVEL <= 100) a,
(SELECT LEVEL n FROM sys_dummy CONNECT BY LEVEL <= 200) b;
INSERT INTO je_win_avg_right
SELECT (a.n - 1) * 200 + b.n + 1000
FROM (SELECT LEVEL n FROM sys_dummy CONNECT BY LEVEL <= 100) a,
(SELECT LEVEL n FROM sys_dummy CONNECT BY LEVEL <= 200) b;
ANALYZE TABLE je_win_avg_left COMPUTE STATISTICS;
ANALYZE TABLE je_win_avg_right COMPUTE STATISTICS;
SELECT DISTINCT AVG(DISTINCT l.k) OVER () AS avg_key
FROM je_win_avg_left l
LEFT JOIN je_win_avg_right r
ON l.k = r.k OR r.k > 5;
DROP TABLE je_win_avg_left;
DROP TABLE je_win_avg_right;
实际输出
AVG_KEY
----------------------------------------
5000.5
1 rows fetched.
期望值 5000.5,与缺陷值 2500.75 不符;执行时间正常。


测试类型
SQL功能
测试版本
7.0.0LTS
问题描述
操作系统和硬件信息
任意
测试环境
oGRAC单节点
被测功能
预置条件
操作步骤
预期输出
5000.5
实际输出
2500.75
日志信息
提单组织
内部开发
测试代码