Copilot commented on code in PR #13067:
URL: https://github.com/apache/gravitino/pull/13067#discussion_r3976335867
##########
docs/gravitino-server-config.md:
##########
@@ -208,19 +208,20 @@ Gravitino exposes three health endpoints following
of them are exempt from authentication, so Kubernetes probes, load balancers,
and traffic managers
reach them without credentials.
-| Endpoint | Root Alias | Description
| HTTP Status |
-|-------------------------|---------------------|---------------------------------------------------------------------------------------------------------------------------------------------|-------------|
-| `GET /api/health/live` | `GET /health/live` | Liveness. Returns 200 as
long as an HTTP server thread can respond. Use it to decide whether to restart
a pod. | 200 |
-| `GET /api/health/ready` | `GET /health/ready` | Readiness. Returns 200 when
the entity store answers within the probe timeout, 503 when it is unavailable
or slow. Use it to route traffic. | 200 or 503 |
-| `GET /api/health` | `GET /health` | Aggregate. Returns 200 when
both of the above pass. Also aliased as `GET /health.html`.
| 200 or 503 |
+| Endpoint | Root Alias | Description
| HTTP Status |
+|-------------------------|---------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------|-------------|
+| `GET /api/health/live` | `GET /health/live` | Liveness. Returns 200 if an
HTTP thread can respond and no OOM has been observed; otherwise 503. Use it to
decide whether to restart a pod. | 200 or 503 |
+| `GET /api/health/ready` | `GET /health/ready` | Readiness. Returns 200 when
no OOM has been observed and the entity store answers within the probe timeout;
otherwise 503. Use it to route traffic. | 200 or 503 |
+| `GET /api/health` | `GET /health` | Aggregate. Returns 200 when
both of the above pass. Also aliased as `GET /health.html`.
| 200 or 503 |
| Configuration Item | Description
| Default Value |
|------------------------------------------------------|---------------------------------------------------------------------|---------------|
| `gravitino.server.health.entityStore.probeTimeoutMs` | Timeout in
milliseconds for the entity store probe behind `/ready`. | `2000` |
Every endpoint returns the same JSON shape, but not the same checks. `code` is
always `0`,
`status` is `UP` or `DOWN`, and `checks` carries one entry per component
probed. `/live` reports
-`httpServer` alone, `/ready` reports `entityStore` alone, and the aggregate
endpoint reports both:
+`httpServer` alone, `/ready` reports `entityStore` alone, and the aggregate
endpoint reports both
+while no OOM has been observed:
Review Comment:
The docs describe `status` values as `UP`/`DOWN`, but the server JSON
actually uses lowercase `up`/`down` (enums are serialized to lowercase). Please
align this description with the real response format.
This issue also appears in the following locations of the same file:
- line 226
- line 240
##########
docs/health-and-readiness.md:
##########
@@ -54,7 +57,44 @@ endpoint rather than to a check of its own.
The response body carries an overall status and a list of individual checks.
Each check has a name,
a status of UP or DOWN, and a details map that explains a failure. On the
Gravitino server the two
-check names are `httpServer` and `entityStore`.
+normal check names are `httpServer` and `entityStore`. After an observed
out-of-memory error, all
Review Comment:
The docs say the health JSON `status` values are `UP`/`DOWN`, but the
server’s ObjectMapper serializes enums to lowercase, so clients will see
`up`/`down`. This should be consistent with the example JSON below.
--
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]