bitflicker64 opened a new pull request, #3129:
URL: https://github.com/apache/hugegraph/pull/3129
## Purpose of the PR
- close #3123
`wait-storage.sh` selected the first PD answering `/v1/health`, then polled
`/v1/stores` only on that peer. Since the health endpoint can succeed before
the peer has raft-backed store state, a storeless first peer could block
Server
startup even when another configured PD already reported an `Up` store.
## Main Changes
- Probe `/v1/stores` across every configured PD peer on every retry.
- Succeed as soon as any peer reports a store in state `Up`, without a
separate
`/v1/health` selection stage.
- Preserve authentication, configured peer order, custom REST endpoints,
retry
timing, and the existing outer timeout failure.
- Add a deterministic shell regression suite and an isolated Server CI job.
## Verifying these changes
- [x] Need tests and can be verified as follows:
- `test-wait-storage.sh`: 4 scenarios passed, 0 failed.
- The same suite fails against the unmodified script on the pinned first
peer.
- `bash -n` passed for the production and test scripts.
- Server CI workflow YAML parsing and `git diff --check` passed.
- Apache RAT and EditorConfig checks passed for the 20-module dependency
set.
## Does this PR potentially affect the following parts?
- [ ] Dependencies
- [ ] Modify configurations
- [ ] The public API
- [x] Other affects (HStore Server startup readiness)
- [ ] Nope
## Documentation Status
- [ ] `Doc - TODO`
- [ ] `Doc - Done`
- [x] `Doc - No Need`
## Out of scope
- PD and Store health endpoint semantics
- `wait-partition.sh`
- Environment-variable and timeout configurability cleanup
- Docker Compose health checks and documentation
--
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]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]