Added: dev/incubator/polaris/helm-chart/1.0.0-incubating/values.yaml ============================================================================== --- dev/incubator/polaris/helm-chart/1.0.0-incubating/values.yaml (added) +++ dev/incubator/polaris/helm-chart/1.0.0-incubating/values.yaml Wed Jun 25 17:55:39 2025 @@ -0,0 +1,620 @@ +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# + +# -- The number of replicas to deploy (horizontal scaling). +# Beware that replicas are stateless; don't set this number > 1 when using in-memory meta store manager. +replicaCount: 1 + +image: + # -- The image repository to pull from. + repository: apache/polaris + # -- The image pull policy. + pullPolicy: IfNotPresent + # -- The image tag. + tag: "latest" + # -- The path to the directory where the application.properties file, and other configuration + # files, if any, should be mounted. + # Note: if you are using EclipseLink, then this value must be at least two folders down to the + # root folder, e.g. `/deployments/config` is OK, whereas `/deployments` is not. + configDir: /deployments/config + +# -- References to secrets in the same namespace to use for pulling any of the images used by this +# chart. Each entry is a LocalObjectReference to an existing secret in the namespace. The secret +# must contain a .dockerconfigjson key with a base64-encoded Docker configuration file. See +# https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/ for more +# information. +imagePullSecrets: [] +# - registry-creds + + +serviceAccount: + # -- Specifies whether a service account should be created. + create: true + # -- Annotations to add to the service account. + annotations: {} + # -- The name of the service account to use. + # If not set and create is true, a name is generated using the fullname template. + name: "" + + +# -- Annotations to apply to polaris pods. +podAnnotations: {} + +# -- Additional Labels to apply to polaris pods. +podLabels: {} + +# -- Additional Labels to apply to polaris configmap. +configMapLabels: {} + +# -- The number of old ReplicaSets to retain to allow rollback (if not set, the default Kubernetes value is set to 10). +revisionHistoryLimit: ~ + +# -- Security context for the polaris pod. See https://kubernetes.io/docs/tasks/configure-pod-container/security-context/. +podSecurityContext: + # -- GID 10001 is compatible with Polaris OSS default images; change this if you are using a different image. + fsGroup: 10001 + seccompProfile: + type: RuntimeDefault + +# -- Security context for the polaris container. See https://kubernetes.io/docs/tasks/configure-pod-container/security-context/. +containerSecurityContext: + allowPrivilegeEscalation: false + runAsNonRoot: true + # -- UID 10000 is compatible with Polaris OSS default images; change this if you are using a different image. + runAsUser: 10000 + capabilities: + drop: ["ALL"] + seccompProfile: + type: RuntimeDefault + +# -- Polaris main service settings. +service: + # -- The type of service to create. Valid values are: ExternalName, ClusterIP, NodePort, and LoadBalancer. + # The default value is ClusterIP. + type: ClusterIP + # -- The ports the service will listen on. + # At least one port is required; the first port implicitly becomes the HTTP port that the + # application will use for serving API requests. By default, it's 8181. + # Note: port names must be unique and no more than 15 characters long. + ports: + # -- The name of the port. Required. + - name: polaris-http + # -- The port the service listens on. By default, the HTTP port is 8181. + port: 8181 + # -- Number or name of the port to access on the pods targeted by the service. + # If this is a string, it will be looked up as a named port in the target Pod's container ports. + # If this is not specified, the value of the 'port' field is used. + targetPort: ~ # polaris-service + # -- The port on each node on which this service is exposed when type is NodePort or LoadBalancer. + # Usually assigned by the system. If not specified, a port will be allocated if this Service requires one. If this field is specified when creating a Service which does not need it, creation will fail. + nodePort: ~ # 30000 + # -- The IP protocol for this port. Supports "TCP", "UDP", and "SCTP". Default is TCP. + protocol: ~ + # - name: polaris-https + # port: 18181 + # -- The session affinity for the service. Valid values are: None, ClientIP. The default value is None. + # ClientIP enables sticky sessions based on the client's IP address. + # This is generally beneficial to Polaris deployments, but some testing may be + # required in order to make sure that the load is distributed evenly among the pods. + # Also, this setting affects only internal clients, not external ones. + # If Ingress is enabled, it is recommended to set sessionAffinity to None. + sessionAffinity: ~ + # -- You can specify your own cluster IP address + # If you define a Service that has the .spec.clusterIP set to "None" then Kubernetes does not assign an IP address. + # Instead, DNS records for the service will return the IP addresses of each pod targeted by the server. This is + # called a headless service. + # See https://kubernetes.io/docs/concepts/services-networking/service/#headless-services + clusterIP: ~ + # -- Controls how traffic from internal sources is routed. + # Valid values are Cluster and Local. The default value is Cluster. + # Set the field to Cluster to route traffic to all ready endpoints. + # Set the field to Local to only route to ready node-local endpoints. + # If the traffic policy is Local and there are no node-local endpoints, traffic is dropped by kube-proxy. + internalTrafficPolicy: ~ + # -- Controls how traffic from external sources is routed. + # Valid values are Cluster and Local. The default value is Cluster. + # Set the field to Cluster to route traffic to all ready endpoints. + # Set the field to Local to only route to ready node-local endpoints. + # If the traffic policy is Local and there are no node-local endpoints, traffic is dropped by kube-proxy. + externalTrafficPolicy: ~ + # -- The traffic distribution field provides another way to influence traffic routing within a Kubernetes Service. + # While traffic policies focus on strict semantic guarantees, traffic distribution allows you to express preferences + # such as routing to topologically closer endpoints. + # The only valid value is: PreferClose. The default value is implementation-specific. + trafficDistribution: ~ + # -- Annotations to add to the service. + annotations: {} + +# -- Management service settings. These settings are used to configure liveness and readiness probes, +# and to configure the dedicated headless service that will expose health checks and metrics, e.g. +# for metrics scraping and service monitoring. +managementService: + # -- The type of service to create. Valid values are: ExternalName, ClusterIP, NodePort, and LoadBalancer. + # The default value is ClusterIP. + type: ClusterIP + # -- The ports the management service will listen on. + # At least one port is required; the first port implicitly becomes the HTTP port that the + # application will use for serving management requests. By default, it's 8182. + # Note: port names must be unique and no more than 15 characters long. + ports: + # -- The name of the management port. Required. + - name: polaris-mgmt + # -- The port the management service listens on. By default, the management interface is exposed + # on HTTP port 8182. + port: 8182 + # -- Number or name of the port to access on the pods targeted by the service. + # If this is a string, it will be looked up as a named port in the target Pod's container ports. + # If this is not specified, the value of the 'port' field is used. + targetPort: ~ # polaris-service + # -- The port on each node on which this service is exposed when type is NodePort or LoadBalancer. + # Usually assigned by the system. If not specified, a port will be allocated if this Service requires one. If this field is specified when creating a Service which does not need it, creation will fail. + nodePort: ~ # 30000 + # -- The IP protocol for this port. Supports "TCP", "UDP", and "SCTP". Default is TCP. + protocol: ~ + # -- By default, the management service is headless, i.e. it does not have a cluster IP. + # This is generally the right option for exposing health checks and metrics, e.g. for metrics + # scraping and service monitoring. + clusterIP: None + sessionAffinity: ~ + internalTrafficPolicy: ~ + externalTrafficPolicy: ~ + trafficDistribution: ~ + # -- Annotations to add to the service. + annotations: {} + +# -- Additional service definitions. All service definitions always select all Polaris pods. Use +# this if you need to expose specific ports with different configurations, e.g. expose polaris-http +# with an alternate LoadBalancer service instead of ClusterIP. +extraServices: [] + # - # -- The suffix to append to the service name. Required. It must be unique. If it does not + # # start with a hyphen, a hyphen will be inserted between the base service name and the suffix. + # nameSuffix: "ext" + # # -- The type of service to create. + # type: LoadBalancer + # # -- The ports the service will listen on. + # ports: + # - name: polaris-http + # number: 8181 + # targetPort: 8181 + # nodePort: 30000 + # protocol: TCP + # sessionAffinity: None + # clusterIP: "" + # internalTrafficPolicy: Cluster + # externalTrafficPolicy: Cluster + # trafficDistribution: PreferClose + # annotations: {} + +# Polaris Ingress settings. +# These settings generate an Ingress resource that routes external traffic to the Polaris service +# using the "polaris-service" port described above. +# Consider enabling sticky sessions based on the remote client's IP address; +# this is generally beneficial to Polaris deployments, but some testing may be +# required in order to make sure that the load is distributed evenly among the pods. +# Check your ingress controller's documentation. +ingress: + # -- Specifies the ingressClassName; leave empty if you don't want to customize it + className: "" + # -- Specifies whether an ingress should be created. + enabled: false + # -- Annotations to add to the ingress. + annotations: { + # nginx.ingress.kubernetes.io/upstream-hash-by: "$binary_remote_addr" + } + # -- A list of host paths used to configure the ingress. + hosts: + - host: chart-example.local + paths: [] + # -- A list of TLS certificates; each entry has a list of hosts in the certificate, + # along with the secret name used to terminate TLS traffic on port 443. + tls: [] +# - hosts: +# - chart-example1.local +# - chart-example2.local +# secretName: secret1 + +# -- Configures the resources requests and limits for polaris pods. +# We usually recommend not to specify default resources and to leave this as a conscious +# choice for the user. This also increases chances charts run on environments with little +# resources, such as Minikube. If you do want to specify resources, uncomment the following +# lines, adjust them as necessary, and remove the curly braces after 'resources:'. +resources: + {} + # limits: + # cpu: 100m + # memory: 128Mi + # requests: + # cpu: 100m + # memory: 128Mi + +autoscaling: + # -- Specifies whether automatic horizontal scaling should be enabled. + # Do not enable this when using in-memory version store type. + enabled: false + # -- The minimum number of replicas to maintain. + minReplicas: 1 + # -- The maximum number of replicas to maintain. + maxReplicas: 3 + # -- Optional; set to zero or empty to disable. + targetCPUUtilizationPercentage: 80 + # -- Optional; set to zero or empty to disable. + targetMemoryUtilizationPercentage: + +# -- Node labels which must match for the polaris pod to be scheduled on that node. See https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodeselector. +nodeSelector: + {} + # kubernetes.io/os: linux + +# -- A list of tolerations to apply to polaris pods. See https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/. +tolerations: [] +# - key: "node-role.kubernetes.io/control-plane" +# operator: "Exists" +# effect: "NoSchedule" + +# -- Affinity and anti-affinity for polaris pods. See https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#affinity-and-anti-affinity. +affinity: {} +# podAffinity: +# preferredDuringSchedulingIgnoredDuringExecution: +# - weight: 100 +# podAffinityTerm: +# topologyKey: kubernetes.io/hostname +# labelSelector: +# matchExpressions: +# - key: app.kubernetes.io/name +# operator: In +# values: +# - polaris + +# -- Configures the liveness probe for polaris pods. +livenessProbe: + # -- Number of seconds after the container has started before liveness probes are initiated. Minimum value is 0. + initialDelaySeconds: 5 + # -- How often (in seconds) to perform the probe. Minimum value is 1. + periodSeconds: 10 + # -- Minimum consecutive successes for the probe to be considered successful after having failed. Minimum value is 1. + successThreshold: 1 + # -- Minimum consecutive failures for the probe to be considered failed after having succeeded. Minimum value is 1. + failureThreshold: 3 + # -- Number of seconds after which the probe times out. Minimum value is 1. + timeoutSeconds: 10 + # -- Optional duration in seconds the pod needs to terminate gracefully upon probe failure. Minimum value is 1. + terminationGracePeriodSeconds: 30 + +# -- Configures the readiness probe for polaris pods. +readinessProbe: + # -- Number of seconds after the container has started before readiness probes are initiated. Minimum value is 0. + initialDelaySeconds: 5 + # -- How often (in seconds) to perform the probe. Minimum value is 1. + periodSeconds: 10 + # -- Minimum consecutive successes for the probe to be considered successful after having failed. Minimum value is 1. + successThreshold: 1 + # -- Minimum consecutive failures for the probe to be considered failed after having succeeded. Minimum value is 1. + failureThreshold: 3 + # -- Number of seconds after which the probe times out. Minimum value is 1. + timeoutSeconds: 10 + +# -- Advanced configuration. +# You can pass here any valid Polaris or Quarkus configuration property. +# Any property that is defined here takes precedence over all the other configuration values generated by this chart. +# Properties can be passed "flattened" or as nested YAML objects (see examples below). +# Note: values should be strings; avoid using numbers, booleans, or other types. +advancedConfig: +# # Disable access log: +# quarkus.http.access-log.enabled: "true" +# # Reverse Proxy Settings +# # ---------------------- +# # +# # These config options are mentioned only for documentation purposes. Consult the +# # Quarkus documentation for "Running behind a reverse proxy" and configure those +# # depending on your actual needs. +# +# # See https://quarkus.io/guides/http-reference#reverse-proxy +# +# # Do NOT enable these option unless your reverse proxy (for example istio or nginx) +# # is properly setup to set these headers but also filter those from incoming requests. +# +# quarkus: +# http: +# proxy: +# proxy-address-forwarding: "true" +# allow-x-forwarded: "true" +# enable-forwarded-host: "true" +# enable-forwarded-prefix: "true" +# trusted-proxies: "127.0.0.1" + {} + +# -- Advanced configuration via Environment Variables. +# Extra environment variables to add to the Polaris server container. +# You can pass here any valid EnvVar object: +# https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#envvar-v1-core +# This can be useful to get configuration values from Kubernetes secrets or config maps. +extraEnv: + [] +# - name: AWS_STORAGE_BUCKET +# value: s3://xxxxx/ +# - name: AWS_ACCESS_KEY_ID +# valueFrom: +# secretKeyRef: +# name: aws-secret +# key: access_key_id +# - name: AWS_SECRET_ACCESS_KEY +# valueFrom: +# secretKeyRef: +# name: aws-secret +# key: secret_access_key + +# -- Extra volumes to add to the polaris pod. See https://kubernetes.io/docs/concepts/storage/volumes/. +extraVolumes: [] + # - name: extra-volume + # emptyDir: {} + +# -- Extra volume mounts to add to the polaris container. See https://kubernetes.io/docs/concepts/storage/volumes/. +extraVolumeMounts: [] + # - name: extra-volume + # mountPath: /usr/share/extra-volume + +# -- Add additional init containers to the polaris pod(s) See https://kubernetes.io/docs/concepts/workloads/pods/init-containers/. +extraInitContainers: [] + # - name: your-image-name + # image: your-image + # imagePullPolicy: Always + # command: ['sh', '-c', 'echo "hello world"'] + +tracing: + # -- Specifies whether tracing for the polaris server should be enabled. + enabled: false + # -- The collector endpoint URL to connect to (required). + # The endpoint URL must have either the http:// or the https:// scheme. + # The collector must talk the OpenTelemetry protocol (OTLP) and the port must be its gRPC port (by default 4317). + # See https://quarkus.io/guides/opentelemetry for more information. + endpoint: "http://otlp-collector:4317" + # -- Which requests should be sampled. Valid values are: "all", "none", or a ratio between 0.0 and + # "1.0d" (inclusive). E.g. "0.5d" means that 50% of the requests will be sampled. + # Note: avoid entering numbers here, always prefer a string representation of the ratio. + sample: "1.0d" + # -- Resource attributes to identify the polaris service among other tracing sources. + # See https://opentelemetry.io/docs/reference/specification/resource/semantic_conventions/#service. + # If left empty, traces will be attached to a service named "Apache Polaris"; to change this, + # provide a service.name attribute here. + attributes: + {} + # service.name: my-polaris + +metrics: + # -- Specifies whether metrics for the polaris server should be enabled. + enabled: true + # -- Additional tags (dimensional labels) to add to the metrics. + tags: + {} + # service: polaris + # environment: production + +serviceMonitor: + # -- Specifies whether a ServiceMonitor for Prometheus operator should be created. + enabled: true + # -- The scrape interval; leave empty to let Prometheus decide. Must be a valid duration, e.g. 1d, 1h30m, 5m, 10s. + interval: "" + # -- Labels for the created ServiceMonitor so that Prometheus operator can properly pick it up. + labels: + {} + # release: prometheus + # -- Relabeling rules to apply to metrics. Ref https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config. + metricRelabelings: [] + # - source_labels: [ __meta_kubernetes_namespace ] + # separator: ; + # regex: (.*) + # target_label: namespace + # replacement: $1 + # action: replace + +# -- Logging configuration. +logging: + # -- The log level of the root category, which is used as the default log level for all categories. + level: INFO + # -- The header name to use for the request ID. + requestIdHeaderName: Polaris-Request-Id + # -- Configuration for the console appender. + console: + # -- Whether to enable the console appender. + enabled: true + # -- The log level of the console appender. + threshold: ALL + # -- Whether to log in JSON format. + json: false + # -- The log format to use. Ignored if JSON format is enabled. See + # https://quarkus.io/guides/logging#logging-format for details. + format: "%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p [%c{3.}] [%X{requestId},%X{realmId}] [%X{traceId},%X{parentId},%X{spanId},%X{sampled}] (%t) %s%e%n" + # -- Configuration for the file appender. + file: + # -- Whether to enable the file appender. + enabled: false + # -- The log level of the file appender. + threshold: ALL + # -- Whether to log in JSON format. + json: false + # -- The log format to use. Ignored if JSON format is enabled. See + # https://quarkus.io/guides/logging#logging-format for details. + format: "%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p [%c{3.}] [%X{requestId},%X{realmId}] [%X{traceId},%X{parentId},%X{spanId},%X{sampled}] (%t) %s%e%n" + # -- The local directory where log files are stored. The persistent volume claim will be mounted + # here. + logsDir: /deployments/logs + # -- The log file name. + fileName: polaris.log + # -- Log rotation configuration. + rotation: + # -- The maximum size of the log file before it is rotated. Should be expressed as a Kubernetes quantity. + maxFileSize: 100Mi + # -- The maximum number of backup files to keep. + maxBackupIndex: 5 + # -- An optional suffix to append to the rotated log files. If present, the rotated log files + # will be grouped in time buckets, and each bucket will contain at most maxBackupIndex files. + # The suffix must be in a date-time format that is understood by DateTimeFormatter. If the + # suffix ends with .gz or .zip, the rotated files will also be compressed using the + # corresponding algorithm. + fileSuffix: ~ # .yyyy-MM-dd.gz + # -- The log storage configuration. A persistent volume claim will be created using these + # settings. + storage: + # -- The storage class name of the persistent volume claim to create. + className: standard + # -- The size of the persistent volume claim to create. + size: 512Gi + # -- Labels to add to the persistent volume claim spec selector; a persistent volume with + # matching labels must exist. Leave empty if using dynamic provisioning. + selectorLabels: {} + # app.kubernetes.io/name: polaris + # app.kubernetes.io/instance: RELEASE-NAME + # -- Configuration for specific log categories. + categories: + org.apache.polaris: INFO + org.apache.iceberg.rest: INFO + # Useful to debug configuration issues: + # io.smallrye.config: DEBUG + # -- Configuration for MDC (Mapped Diagnostic Context). Values specified here will be added to the + # log context of all incoming requests and can be used in log patterns. + mdc: + # aid=polaris + # sid=polaris-service + {} + +# -- Realm context resolver configuration. +realmContext: + # -- The type of realm context resolver to use. Two built-in types are supported: default and test; + # test is not recommended for production as it does not perform any realm validation. + type: default + # -- List of valid realms, for use with the default realm context resolver. The first realm in + # the list is the default realm. Realms not in this list will be rejected. + realms: + - POLARIS + +# -- Polaris features configuration. +features: + # -- Features to enable or disable globally. If a feature is not present in the map, the default + # built-in value is used. + # ENFORCE_PRINCIPAL_CREDENTIAL_ROTATION_REQUIRED_CHECKING: false + # SUPPORTED_CATALOG_STORAGE_TYPES: + # - S3 + # - GCS + # - AZURE + # - FILE + # -- Features to enable or disable per realm. This field is a map of maps. The realm name is the key, and the value is a map of + # feature names to values. If a feature is not present in the map, the default value from the 'defaults' field is used. + realmOverrides: {} + # my-realm: + # ENFORCE_PRINCIPAL_CREDENTIAL_ROTATION_REQUIRED_CHECKING: true + +# -- Polaris persistence configuration. +persistence: + # -- The type of persistence to use. Two built-in types are supported: in-memory and eclipse-link. + type: eclipse-link # in-memory + # -- The configuration for the eclipse-link persistence manager. + eclipseLink: + # -- The secret name to pull persistence.xml from. + secret: + # -- The name of the secret to pull persistence.xml from. + # If not provided, the default built-in persistence.xml will be used. This is probably not what you want. + name: ~ + # -- The key in the secret to pull persistence.xml from. + key: persistence.xml + # -- The persistence unit name to use. + persistenceUnit: polaris + +# -- Polaris FileIO configuration. +fileIo: + # -- The type of file IO to use. Two built-in types are supported: default and wasb. The wasb one translates WASB paths to ABFS ones. + type: default + +# -- Storage credentials for the server. If the following properties are unset, default +# credentials will be used, in which case the pod must have the necessary permissions to access the storage. +storage: + # -- The secret to pull storage credentials from. + secret: + # -- The name of the secret to pull storage credentials from. + name: ~ + # -- The key in the secret to pull the AWS access key ID from. Only required when using AWS. + awsAccessKeyId: ~ + # -- The key in the secret to pull the AWS secret access key from. Only required when using AWS. + awsSecretAccessKey: ~ + # -- The key in the secret to pull the GCP token from. Only required when using GCP. + gcpToken: ~ + # -- The key in the secret to pull the GCP token expiration time from. Only required when using GCP. Must be a valid ISO 8601 duration. The default is PT1H (1 hour). + gcpTokenLifespan: ~ + +# -- Polaris authentication configuration. +authentication: + # -- The type of authentication to use. Two built-in types are supported: default and test; + # test is not recommended for production. + authenticator: + type: default + # -- The type of token service to use. Two built-in types are supported: default and test; + # test is not recommended for production. + tokenService: + type: default + # -- The type of token broker to use. Two built-in types are supported: rsa-key-pair and symmetric-key. + tokenBroker: + type: rsa-key-pair # symmetric-key + maxTokenGeneration: PT1H + # -- The secret name to pull the public and private keys, or the symmetric key secret from. + secret: + # -- The name of the secret to pull the keys from. If not provided, a key pair will be generated. + # This is not recommended for production. + name: ~ + # -- The public key file to use for RSA key pair token broker. Only required when using rsa-key-pair. + publicKey: public.pem + # -- The private key file to use for RSA key pair token broker. Only required when using rsa-key-pair. + privateKey: private.pem + # -- The symmetric key file to use for symmetric key token broker. Only required when using symmetric-key. + secretKey: secret + +# -- Polaris CORS configuration. +cors: + # -- Origins allowed for CORS, e.g. http://polaris.apache.org, http://localhost:8181. In case an entry of the list is surrounded by forward slashes, it is interpreted as a regular expression. + allowedOrigins: [] + # -- HTTP methods allowed for CORS, ex: GET, PUT, POST. If this is not set or empty, all requested methods are considered allowed. + allowedMethods: [] + # -- HTTP headers allowed for CORS, ex: X-Custom, Content-Disposition. If this is not set or empty, all requested headers are considered allowed. + allowedHeaders: [] + # -- HTTP headers exposed to the client, ex: X-Custom, Content-Disposition. The default is an empty list. + exposedHeaders: [] + # -- The `Access-Control-Max-Age` response header value indicating how long the results of a pre-flight request can be cached. Must be a valid duration. + accessControlMaxAge: ~ # PT10M + # -- The `Access-Control-Allow-Credentials` response header. + # The value of this header will default to `true` if `allowedOrigins` property is set and there is a match with the precise `Origin` header. + accessControlAllowCredentials: ~ # true + +# -- Polaris rate limiter configuration. +rateLimiter: + # -- The type of rate limiter filter to use. Two built-in types are supported: default and no-op. + type: no-op + # -- The configuration for the default rate limiter, which uses the token bucket algorithm with + # one bucket per realm. + tokenBucket: + # -- The type of the token bucket rate limiter. Only the default type is supported out of the box. + type: default + # -- The maximum number of requests per second allowed for each realm. + requestsPerSecond: 9999 + # -- The time window. + window: PT10S + +# -- Polaris asynchronous task executor configuration. +tasks: + # -- The maximum number of concurrent tasks that can be executed at the same time. The default is the number of available cores. + maxConcurrentTasks: ~ # 100 + # -- The maximum number of tasks that can be queued up for execution. The default is Integer.MAX_VALUE. + maxQueuedTasks: ~ # 1000