markhoerth opened a new pull request, #12291:
URL: https://github.com/apache/gravitino/pull/12291
### What changes were proposed in this pull request?
Rewrites `gravitino-server-config.md` and
`how-to-use-relational-backend-storage.md`.
Corrections, each verified against source rather than carried over from the
existing pages:
- `gravitino.server.visibleConfigs` was documented as restrictive
("properties the config endpoint is allowed to return"). `ConfigServlet` shows
it is additive: the endpoint always publishes a fixed set, and each entry in
`visibleConfigs` adds to what `GET /configs` exposes without authentication.
- `GRAVITINO_AUTHORIZATION_THREAD_POOL_SIZE` was documented as a container
environment variable but is not in the allowlist in
`rewrite_gravitino_server_config.py`, so setting it does nothing. The whole
environment variable table is now generated from that file.
- The catalog provider table was missing `glue`, `lakehouse-generic`,
`jdbc-starrocks`, `jdbc-clickhouse`, and `jdbc-hologres`, and listed a conf
path for `jdbc-oceanbase` that exists only in the `-all` distribution package.
- `gravitino.eventListener.names` was marked required; `EventListenerConfig`
gives it a default.
- `gravitino.auxService.names` was documented as defaulting to nothing and
mentioning only `iceberg-rest`; the shipped `conf/gravitino.conf` sets
`iceberg-rest,lance-rest`.
- Both JDBC driver links were stale: MySQL pointed at the retired
`mysql:mysql-connector-java` artifact, and PostgreSQL pinned
`postgresql-42.7.11.jar`.
Structural changes: the config page gains Quick Start profiles for
development, production, and Docker, and its reference sections are grouped
instead of running as a flat list of same-level headings. The relational page
becomes one procedure per database rather than two near-identical copies. The
event listener tables, which enumerated 345 class names, are replaced by the
naming rule and a link to the package. The container section now documents that
the entrypoint overwrites `conf/gravitino.conf` unconditionally for the
properties it has defaults for, and the `SKIP_CONFIG_REWRITE` escape hatch.
### Why are the changes needed?
These two pages are the entry point for configuring a server, and several
statements in them would mislead an operator. The `visibleConfigs` inversion is
the most serious: someone would reasonably set it believing it narrows what an
unauthenticated endpoint exposes, when it widens it. The container rewrite
behaviour is undocumented today, so a `gravitino.conf` mounted from a ConfigMap
is silently overwritten with no indication why.
### Does this PR introduce any user-facing change?
Documentation only. No property is added or removed. Previously undocumented
but pre-existing properties and behaviours are now covered:
`gravitino.authorization.serviceAdmins`, `impl`, `threadPoolSize`;
`SKIP_CONFIG_REWRITE`; and the container's unconditional config rewrite.
### How was this patch tested?
Every property name, default, and behavioural claim traced to
`Configs.java`, `JettyServerConfig`, `HealthOperations`, `ConfigServlet`,
`AuditLogRedactor`, `FileAuditWriter`, `H2Database`,
`conf/log4j2.properties.template`, `conf/gravitino.conf.template`, or the
catalog `build.gradle.kts` files. All relative links and heading anchors
resolved against the docs tree.
--
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]