This is an automated email from the ASF dual-hosted git repository. emaynard pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/polaris.git
The following commit(s) were added to refs/heads/main by this push: new 2406f1e2 Add usefull configuration properties in the documentation. (#1118) 2406f1e2 is described below commit 2406f1e2286b013a5f5d7b59f94c2e0bab1976eb Author: JB Onofré <jbono...@apache.org> AuthorDate: Wed Mar 5 23:11:55 2025 +0100 Add usefull configuration properties in the documentation. (#1118) --- site/content/in-dev/unreleased/configuration.md | 69 +++++++++++++++++++++---- 1 file changed, 59 insertions(+), 10 deletions(-) diff --git a/site/content/in-dev/unreleased/configuration.md b/site/content/in-dev/unreleased/configuration.md index 911d9a06..b1ee8944 100644 --- a/site/content/in-dev/unreleased/configuration.md +++ b/site/content/in-dev/unreleased/configuration.md @@ -77,16 +77,65 @@ read-only mode, as Polaris only reads the configuration file once, at startup. ## Polaris Configuration Options Reference -Most common configuration settings that users may want to change are: -- `polaris.persistence.type` (see the [Configuring Apache Polaris for Production]({{% ref "configuring-polaris-for-production.md" %}}) - guide for specific instructions). -- `polaris.features.defaults.SUPPORTED_CATALOG_STORAGE_TYPES=["S3","GCS","AZURE"]`. - - Note: this excludes the default `FILE` storage type, which is not meaningful in a distributed deployment. - -The following configuration options are available for Polaris: - -TODO - +| Configuration Property | Default Value | Description | +|--------------------------------------------------------------------------------------------|----------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| `polaris.persistence.type` | `in-memory` | Define the persistence backend used by Polaris (`in-memory`, `eclipse-link`). See [Configuring Apache Polaris for Production)[{{% ref "configuring-polaris-for-production.md" %}}) | +| `polaris.persistence.eclipselink.configurationFile` | | Define the location of the `persistence.xml`. By default, it's the built-in `persistence.xml` in use. | +| `polaris.persistence.eclipselink.persistenceUnit | `polaris` | Define the name of the persistence unit to use, as defined in the `persistence.xml`. | +| `polaris.realm-context.type` | `default` | Define the type of the Polaris realm to use. | +| `polaris.realm-context.realms` | `POLARIS` | Define the list of realms to use. | +| `polaris.realm-context.header-name` | `Polaris-Realm` | Define the header name defining the realm context. | +| `polaris.features.defaults."ENFORCE_PRINCIPAL_CREDENTIAL_ROTATION_REQUIRED_CHECKING"` | `false` | Flag to enforce check if credential rotation. | +| `polaris.features.defaults."SUPPORTED_CATALOG_STORAGE_TYPES"` | `FILE` | Define the catalog supported storage. Supported values are `S3`, `GCS`, `AZURE`, `FILE`. | +| `polaris.features.realm-overrides."my-realm"."INITIALIZE_DEFAULT_CATALOG_FILEIO_FOR_TEST"` | `true` | "Override" realm features, here the catalog init default flag. | +| `polaris.features.realm-overrides."my-realm"."SKIP_CREDENTIAL_SUBSCOPING_INDIRECTION"` | `true` | "Override" realm features, here the skip credential subscoping indirection flag. | +| `polaris.authentication.authenticator.type` | `default` | Define the Polaris authenticator type. | +| `polaris.authentication.token-service.type` | `default` | Define the Polaris token service type. | +| `polaris.authentication.token-broker.type` | `rsa-key-pair` | Define the Polaris token broker type. | +| `polaris.authentication.token-broker.max-token-generation` | `PT1H` | Define the max token generation policy on the token broker. | +| `polaris.authentication.token-broker.rsa-key-pair.public-key-file` | `/tmp/public.key` | Define the location of the public key file. | +| `polaris.authentication.token-broker.rsa-key-pair.private-key-file` | `/tmp/private.key` | Define the location of the private key file. | +| `polaris.authentication.token-broker.symmetric-key.secret` | `secret` | Define the secret of the symmetric key. | +| `polaris.authentication.token-broker.symmetric-key.file` | `/tmp/symmetric.key` | Define the location of the symmetric key file. | +| `polaris.storage.aws.access-key` | `accessKey` | Define the AWS S3 access key. If unset, the default credential provider chain will be used. | +| `polaris.storage.aws.secret-key` | `secretKey` | Define the AWS S3 secret key. If unset, the default credential provider chain will be used. | +| `polaris.storage.gcp.token` | `token` | Define the Google Cloud Storage token. If unset, the default credential provider chain will be used. | +| `polaris.storage.gcp.lifespan` | `PT1H` | Define the Google Cloud Storage lifespan type. If unset, the default credential provider chain will be used. | +| `polaris.log.request-id-header-name` | `Polaris-Request-Id` | Define the header name to match request ID in the log. | +| `polaris.log.mdc.aid` | `polaris` | Define the log context (e.g. MDC) AID. | +| `polaris.log.mdc.sid` | `polaris-service` | Define the log context (e.g. MDC) SID. | +| `polaris.rate-limiter.filter.type` | `no-op` | Define the Polaris rate limiter. Supported values are `no-op`, `token-bucket`. | +| `polaris.rate-limiter.token-bucket.type` | `default` | Define the token bucket rate limiter. | +| `polaris.rate-limiter.token-bucket.requests-per-second` | `9999` | Define the number of requests per second for the token bucket rate limiter. | +| `polaris.rate-limiter.token-bucket.window` | `PT10S` | Define the window type for the token bucket rate limiter. | +| `polaris.metrics.tags.application` | `Polaris` | Define the application name tag in metrics. | +| `polaris.metrics.tags.service` | `polaris` | Define the service tag in metrics. | +| `polaris.metrics.tags.environment` | `prod` | Define the environement tag in metrics. | +| `polaris.metrics.tags.region` | `us-west-2` | Define the region tag in metrics. | +| `polaris.tasks.max-concurrent-tasks` | `100` | Define the max number of concurrent tasks. | +| `polaris.tasks.max-queued-tasks` | `1000` | Define the max number of tasks in queue. | + +There are non Polaris configuration properties that can be useful: + +| Configuration Property | Default Value | Description | +|------------------------------------------------------|---------------------------------|-----------------------------------------------------------------------------| +| `quarkus.log.level` | `INFO` | Define the root log level. | +| `quarkus.log.category."org.apache.polaris".level` | | Define the log level for a specific category. | +| `quarkus.default-locale` | System locale | Force the use of a specific locale, for instance `en_US`. | +| `quarkus.http.port` | `8181` | Define the HTTP port number. | +| `quarkus.http.auth.basic` | `false` | Enable the HTTP basic authentication. | +| `quarkus.http.limits.max-body-size` | `10240K` | Define the HTTP max body size limit. | +| `quarkus.http.cors.origins` | | Define the HTTP CORS origins. | +| `quarkus.http.cors.methods` | `PATCH, POST, DELETE, GET, PUT` | Define the HTTP CORS covered methods. | +| `quarkus.http.cors.headers` | `\*` | Define the HTTP CORS covered headers. | +| `quarkus.http.cors.exposed-headers` | `\*` | Define the HTTP CORS covered exposed headers. | +| `quarkus.http.cors.access-control-max-age` | `PT10M` | Define the HTTP CORS access control max age. | +| `quarkus.http.cors.access-control-allow-credentials` | `true` | Define the HTTP CORS access control allow credentials flag. | +| `quarkus.management.enabled` | `true` | Enable the management server. | +| `quarkus.management.port` | `8182` | Define the port number of the Polaris management server. | +| `quarkus.management.root-path` | | Define the root path where `/metrics` and `/health` endpoints are based on. | +| `quarkus.otel.sdk.disabled` | `true` | Enable the OpenTelemetry layer. | + ## Java Runtime Configuration > Note: This section is only relevant for Polaris Docker images and Kubernetes > deployments.