matrixorigin / matrixorigin/matrixone

[Bug]: Jinpan AP Semi/Anti Join queries repeatedly exceed 7200-second execution limit

Open
#28,110 1 comment 0 reactions 1 assignee Claimed by @aptend View on GitHub
kind/bug severity/s0
Dominant language
Go
Stars
1.9k
Forks
311
Avg merge
1d 3h
Merged PRs (30d)
768

Description

## Description

Two distinct Semi/Anti Join query shapes in the Jinpan AP workload reach the full 7200-second SQL timeout in the dev multi-CN environment.

## Environment

- Workflow: https://github.com/matrixorigin/mo-nightly-regression/actions/runs/33482459227
- Workflow branch: `codex/mo-ap-regression-dev-assets`
- Deployment: cn-dev `freetier-01`, multi-CN, OSS-loaded `jinpan_001` dataset
- SQL limit: `--sql-timeout 7200`
- Date: 2026-09-02 to 2026-09-04

## Steps to reproduce

Execute the Advanced Join phase against `jinpan_001`. The following cases each consumed the entire 7200-second budget:

1. `q1021_adv_srm_exists_attach` — correlated `EXISTS` / semi-join shape.
2. `q1542_adv_not_exists_anti` — `NOT EXISTS` anti-join shape.

## Actual behavior

Both cases were stopped only after the runner limit:

```text
Execution timeout after 7200s; skips remaining SQL in the current file and continues with the next file...
```

No CN `OOMKilled`, exit 137, Go panic, or fatal error was observed in the associated windows.

## Expected behavior

EXISTS and NOT EXISTS execution plans over the AP dataset should complete within an operationally acceptable time. Two separate semi/anti-join shapes requiring more than two hours indicate an optimizer or execution performance problem.

## Scope and related issues

- This issue is limited to Semi/Anti Join execution.
- Window aggregate cases are tracked separately.
- A later `Lost connection` from `q1624_adv_not_exists_anti` is not included here; it is a CN draining issue tracked by #27776.

## Evidence

- Shard 1: https://github.com/matrixorigin/mo-nightly-regression/actions/runs/33482459227/job/99890422491
- Shard 2: https://github.com/matrixorigin/mo-nightly-regression/actions/runs/33482459227/job/99890422678
- Case sources: `join_adv/j_batch_002.sql` and `join_adv/j_batch_028.sql`

## Regression coverage

After a fix, add bounded Jinpan/big-data regressions for representative EXISTS and NOT EXISTS query shapes, asserting completion and recording execution duration.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.