Hanabi9248 opened a new pull request, #5033: URL: https://github.com/apache/rocketmq-dashboard/pull/5033
### Which Issue(s) This PR Fixes Fixes #5030 ### Brief Description The stdio proxy can consume EOF and the final call result before reading notifications queued by that call. Once `activeCalls` reaches zero, it exits and drops those messages. Drain notifications already in the channel before returning. The drain does not wait for new messages, preserves input errors, and respects cancellation. The regression covers both clean EOF and a reader error, with two notifications retained in order. ### How Did You Test This Change? On Windows amd64 with Go 1.27.1, against `0228dad5`: - The new regression fails before the fix; the existing notification test also failed 14 times in 10,000 baseline runs. - `go test ./cmd -run '^TestStdioProxy' -count=10000` passed. - `go test -race -count=1 ./...` passed, including the packaging tests. - `go vet ./...`, `gofmt -l .`, and the catalog generator `-check` passed. - Cross-builds passed for darwin, linux and windows on amd64 and arm64. Local packaging tests used Git Bash, MinGW GCC and Python, with LF checkout files. No live Studio or RocketMQ cluster was used. ### Checklist - [x] One coherent change; unrelated modifications are not bundled in - [x] Commit subjects follow Conventional Commits - [x] Regression tests added using the existing Go test naming convention - UI text, Java architecture, new source-file headers and user-facing documentation: not applicable to this CLI drain fix. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
