| Name | Description | Default value |
|---|---|---|
| dbalias | Name of the database in secdist config (if available). | – |
| name_alias | Name alias to use in dynamic configs. | name of the component |
| dbconnection | Connection DSN string (used if no dbalias specified). | – |
| blocking_task_processor | Name of task processor for background blocking operations. | engine::current_task::GetBlockingTaskProcessor() |
| max_replication_lag | Replication lag limit for usable replicas. If a replica's lag exceeds this value, it stops receiving new requests. | 60s |
| rtt_threshold | Maximum EWMA RTT difference from the fastest alive host. It is used to prefer hosts when no selection strategy is specified or when kRoundRobin is requested. Must not exceed one minute. Zero is valid and prefers only hosts tied for the lowest RTT. Slower hosts remain available and are used when no eligible host has a known RTT. The same EWMA RTT estimate is used by nearest selection and RTT metrics. RTT preference is enabled by default and controlled by the POSTGRES_RTT_THRESHOLD_ENABLED dynamic config. | 20ms |
| min_pool_size | Number of connections created initially by this component instance to each of the provided PostgreSQL hosts. Connections are kept even without requests. | 4 |
| max_pool_size | Maximum number of connections that can be created by this component instance to each of the provided PostgreSQL hosts for "connlimit_mode: manual". Should not be less than min_pool_size. | 15 |
| sync-start | Perform initial connections synchronously. | true |
| dns_resolver | Server hostname resolver type (getaddrinfo or async). Possible values: getaddrinfo, async. | async |
| persistent-prepared-statements | Cache prepared statements or not. | true |
| statement-log-mode | Whether to log SQL statements in a span tag. Possible values: hide, show. | show |
| user-types-enabled | Disabling will disallow use of user-defined types. | true |
| check-user-types | Cancel service start if some user types have not been loaded, which helps to detect missing migrations. | false |
| ignore_unused_query_params | Disable check for not-NULL query params that are not used in query. | false |
| max-ttl-sec | The maximum lifetime for connections. | – |
| discard-all-on-connect | Execute discard all on new connections. | true |
| deadline-propagation-enabled | Whether statement timeout is affected by deadline propagation. | true |
| pooler-mode | Pooler mode. session (default) for session poolers; transaction for Odyssey transaction pooler only. Possible values: session, transaction. | session |
| monitoring-dbalias | Name of the database for monitorings. | calculated from dbalias or dbconnection options |
| max_prepared_cache_size | Prepared statements cache size limit. | 200 |
| max_statement_metrics | Limit of exported metrics for named statements. | 0 |
| error-injection | Error-injection options. | – |
| error-injection.enabled | Enable error injection. | false |
| error-injection.probability | Thrown exception probability. | 0 |
| error-injection.verdicts.[] | Possible injection verdicts. Each of the elements: what error injection hook may decide to do. | empty |
| max_queue_size | Maximum number of clients waiting for a connection. storages::postgres::PoolError is thrown if a new request exceeds this limit. | 200 |
| pipeline_enabled | Turns on pipeline connection mode. | false |
| connecting_limit | Limit for concurrent establishing connections number per PostgreSQL host (0 - unlimited). | 0 |
| connecting_interval_ms | Minimum time in milliseconds between starting new connections to each PostgreSQL host (0 - unlimited). | – |
| connlimit_mode | How to learn the max_pool_size. Possible values: auto, manual. | – |
| application_name | Will be displayed in postgres statistics and logs. | – |