imbajin commented on code in PR #3358: URL: https://github.com/apache/hugegraph/pull/3358#discussion_r4308748763
########## docker/README.md: ########## @@ -172,6 +172,20 @@ curl -fsS http://localhost:8088/about </details> +### PD health and readiness + +PD's `/v1/ready` returns HTTP 503 while it cannot serve through a Raft quorum. +`/v1/health` remains HTTP 200 during an election or temporary quorum loss, but +returns HTTP 503 after a fatal Raft error or state-machine shutdown. Both health +responses retain the empty text body. Probes read cached state without waiting +for the Raft node lock. + +A failed snapshot, for example after the PD disk fills, leaves JRaft in a terminal +error state. Free disk space before restarting the affected PD; freeing space +alone does not reinitialize its Raft node. Configure liveness against `/v1/health` +with an image containing this fix and gate traffic on `/v1/ready`. Older images Review Comment: 🧹 Minor. Blocking: no. Summary: This guidance tells operators to gate traffic on `/v1/ready`, but the shipped Compose Store dependencies still use PD's `/v1/health` check. Evidence: `docker-compose-hstore.yml` and `docker-compose-3pd-3store-3server.yml` use `condition: service_healthy` with `/v1/health`; that endpoint intentionally remains 200 during elections and temporary quorum loss, so Compose may create Store before PD is ready. Please point the Compose startup dependency check at `/v1/ready`, or qualify this sentence as guidance for externally configured readiness gates. -- 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]
