flaming-archer opened a new pull request, #11558:
URL: https://github.com/apache/gravitino/pull/11558

   
   ### What changes were proposed in this pull request?
   
   This PR adds health check endpoints and a custom authentication filter for 
the Lance REST server, aligning it with the Iceberg REST server implementation.
   
   1、LanceAuthenticationFilter — A new subclass of AuthenticationFilter that 
whitelists /lance/health and /lance/health/* paths to bypass authentication, in 
addition to the default health paths (/health, /api/health). This allows 
Kubernetes probes and monitoring systems to reach the Lance health endpoints 
without credentials.
   
   2、LanceHealthOperations — A new JAX-RS resource at /health/live that returns 
a MicroProfile Health-compatible liveness response (200 OK with UP status).
   
   3、LanceRESTService — Updated to inject LanceAuthenticationFilter into the 
Jetty server via createAuthenticationFilter() override.
   
   4、build.gradle.kts — Added testImplementation(libs.junit.jupiter.params) 
dependency for @ParameterizedTest support.
   
   ### Why are the changes needed?
   
   - Health check endpoints are required for Kubernetes liveness probes and 
monitoring integration.
   - Without LanceAuthenticationFilter, all Lance REST endpoints (including 
health checks) require authentication, making health probes fail.
   
   #11553 
   
   ### Does this PR introduce _any_ user-facing change?
   
   Yes. The Lance REST server now exposes:
   
   - GET /lance/health/live — Liveness probe endpoint (no authentication 
required).
   
   ### How was this patch tested?
   
   Added unit tests:
   
   - TestLanceAuthenticationFilter — Verifies health paths bypass auth and 
non-health paths require auth.
   - TestLanceHealthOperations — Verifies the liveness endpoint returns 200 
with UP status.
   


-- 
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]

Reply via email to