apache / apache/shenyu

[BUG] — Storage e2e compose scripts reference a non-existent `healthcheck.sh` + wrong `h2` arg + no `set -e`

Open Beginner friendly
#6,681 1 comment 0 reactions 0 assignees View on GitHub
in: test priority: high type: build
Dominant language
Java
Stars
8.8k
Forks
3.1k
Avg merge
7d 1h
Merged PRs (30d)
85

Description

- severity: High; files: `shenyu-e2e/shenyu-e2e-case/shenyu-e2e-case-storage/compose/script/e2e-{mysql,postgres,opengauss,h2}-compose.sh:28-29`
- description: Lines do `chmod +x "${curPath}"/healthcheck.sh` then `sh "${curPath}"/healthcheck.sh h2 http://localhost:31095/... http://localhost:31195/...`, where `curPath` is the script's own dir (`.../compose/script`). But `ls` of that dir shows only `e2e-*.sh` files — there is no `healthcheck.sh` there (it lives at `.../k8s/script/healthcheck.sh`). Additionally the literal `h2` is passed as the first positional arg for ALL four storage variants — `healthcheck.sh` treats `${1}` as the URL to curl, so it would `curl h2`. Because the storage scripts lack `set -e` (verified), the `sh` open error is swallowed and execution continues to `sleep 60s` then `mvn test`. All four e2e-storage matrix jobs run with NO readiness check.
- impact: e2e-storage tests are flaky/masked; health gate is a no-op.
- suggested_fix: Point at `k8s/script/healthcheck.sh` (or a compose-specific healthcheck) and pass the two real URLs (drop the `h2` arg).
- confidence: High

---
_Identified during the 2026-08-02 deep re-scan; full list in [`docs/scan2-2026-08-02/00-consolidated-critical-high.md`](docs/scan2-2026-08-02/00-consolidated-critical-high.md)._

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the four scripts in shenyu-e2e/shenyu-e2e-case/shenyu-e2e-case-storage/compose/script/e2e-{mysql,postgres,opengauss,h2}-compose.sh at lines 28-29, then compare them with k8s/script/healthcheck.sh. Verify the healthcheck invocation uses the existing script and its expected URL arguments, and confirm failures stop the script before running the tests. Run the e2e-storage matrix jobs to check that readiness failures are no longer masked.

Written by the indexing model from the issue text.

Assessment

Tech stack
mysql, postgresql, shell
Domain
databases, devops, testing
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Quiet
Clarity
Clearly specified
Newbie friendliness
75/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.