This page describes the database flags that AlloyDB for PostgreSQL uses to enable and manage various service features unique to AlloyDB. For a list of all database flags that AlloyDB supports, see Supported database flags.
Flags marked with Instance restarts mean that AlloyDB restarts an instance whenever you set, remove, or modify this flag on that instance. The flag's value persists for the instance until you modify it again.
alloydb.audit_log_line_prefix
| Type | string |
| Default | "%m [%p]: [%l-1] db=%d,user=%u |
| Instance restarts | Yes |
Controls information prefixed to each audit log line. If left blank, then no prefix is used.
alloydb.enable_pgaudit
| Type | boolean |
| Default | off |
| Instance restarts | Yes |
Controls the availability of the pgaudit extension in an AlloyDB
instance. Set the parameter to on and restart the instance. Then add the
pgaudit extension to individual databases in the instance by using the CREATE
EXTENSION command.
The pgaudit extension provides detailed session
and object audit logging using the standard logging facility provided by
PostgreSQL.
alloydb.enable_auto_explain
| Type | boolean |
| Default | off |
| Instance restarts | Yes |
Controls the availability of the auto_explain extension in
an AlloyDB instance. Set the parameter to on and restart the
instance.
The auto_explain extension enables
automatic logging of execution plans of slow statements, for troubleshooting and
more. It provides an automated way to perform the functionality of the EXPLAIN
command.
alloydb.enable_pg_bigm
| Type | boolean |
| Default | off |
| Instance restarts | Yes |
Controls the availability of the pg_bigm extension in an AlloyDB
instance. Set the parameter to on and restart the instance. Then add the
pg_bigm extension to individual databases in the instance by using the CREATE
EXTENSION command.
The pg_bigm extension provides
full text search capability in PostgreSQL using 2-gram (bigram) indexes for
faster full text searches.
alloydb.enable_pg_cron
| Type | boolean |
| Default | off |
| Instance restarts | Yes |
Controls the availability of the pg_cron extension in an AlloyDB
instance. Set the parameter to on and restart the instance. Then add the
pg_cron extension to individual databases in the instance by using the CREATE
EXTENSION command.
The pg_cron extension provides
a cron-based job scheduler for PostgreSQL that runs inside the database
as an extension. It uses the same syntax as regular cron, and it lets you
schedule PostgreSQL commands directly from the database.
alloydb.enable_pg_hint_plan
| Type | boolean |
| Default | off |
| Instance restarts | Yes |
Controls the availability of the pg_hint_plan extension in
an AlloyDB instance. Set the parameter to on and restart the
instance. Then add the pg_hint_plan extension to individual databases in the
instance by using the CREATE EXTENSION command.
The pg_hint_plan extension
lets you to improve PostgreSQL execution plans using hints, which are
descriptions in SQL comments.
alloydb.enable_pg_wait_sampling
| Type | boolean |
| Default | off |
| Instance restarts | Yes |
Enables AlloyDB to collect sampling statistics of wait events.
Set the parameter to on and restart the instance. Then, add the
pg_wait_sampling extension to individual databases in the instance using
the CREATE EXTENSION command.
The pg_wait_sampling extension
aggregates and summarizes the wait event data. You can query these views to gain
insights into wait times, frequencies, and relative importance of different wait
events.
alloydb.enable_pglogical
| Type | boolean |
| Default | off |
| Instance restarts | Yes |
Controls the availability of the pglogical extension in
an AlloyDB instance. Set the parameter to on and restart the
instance. Then add the pglogical extension to individual databases in the
instance using the CREATE EXTENSION command.
The pglogical extension
provides logical streaming replication for PostgreSQL using a model based on
publishing and subscribing.
alloydb.iam_authentication
| Type | boolean |
| Default | off |
| Instance restarts | Yes |
Enables the use of Identity and Access Management (Identity and Access Management (IAM)) authentication with an AlloyDB instance.
alloydb.logical_decoding
| Type | boolean |
| Default | off |
| Instance restarts | Yes |
Enables the PostgreSQL logical decoding infrastructure in an AlloyDB instance.
Logical decoding provides the infrastructure necessary to stream data modifications to external consumers.
alloydb.log_throttling_window
| Type | integer |
| Default | 0 |
| Instance restarts | No |
Controls whether AlloyDB records duplicate log messages received during a specified time window.
If set to a value greater than 0, then AlloyDB starts a
timer that many seconds long whenever it records a log message. If
AlloyDB receives the identical log message before the timer
expires, it does not record the message. After the timer expires,
AlloyDB appends a count of any skipped messages to the
next occurrence of the same log message that it records.
If set to 0, then AlloyDB records all duplicate log
messages.
alloydb.promote_cancel_to_terminate
| Type | boolean |
| Default | off |
| Instance restarts | No |
If set to true, then any query cancellation requests due to issues such as lock timeouts, statement timeouts, and recovery (replay) conflicts that AlloyDB encounters, are promoted to forced backend termination requests.
By promoting the cancellation requests, AlloyDB helps prevent stuck backends from blocking log replay and other backends.
alloydb.pg_shadow_select_role
| Type | string |
| Default | An empty string |
| Instance restarts | No |
Name of the PostgreSQL role that is to be used to grant permission to query the
pg_shadow view.
alloydb_password
| Type | string |
| Default | An empty string |
| Instance restarts | No |
Provides functions to set and manage password policies for AlloyDB Omni. If your application's database users authenticate with AlloyDB Omni using the built-in, password-based method, then you can make authentication more secure by enforcing strong passwords.
For more information, see Manage built-in authentication using password policies.
alloydb_scann
| Type | string |
| Default | An empty string |
| Instance restarts | No |
Provides functions that enable AlloyDB Omni to handle vector search workloads with high performance and efficiency.
For more information, see Create indexes and query vectors.
alloydb_ai_nl
| Type | string |
| Default | An empty string |
| Instance restarts | No |
Provides functions that let you securely query AlloyDB using natural language. The extension works together with the parameterized_views` extension that enforces a security layer for your data.
For more information, see Generate SQL queries using natural language.
parameterized_views
| Type | string |
| Default | An empty string |
| Instance restarts | No |
Provides functions that add a security layer when natural language queries are
translated to SQL queries. This extension works together with the
alloydb_ai_nl extension.
For more information, see Generate SQL queries using natural language.
alloydb_ai_nl.enabled
| Type | boolean |
| Default | off |
| Instance restarts | Yes |
Controls whether the AlloyDB AI natural language features are enabled.
scann.enable_preview_features
| Type | boolean |
| Default | off |
| Instance restarts | Yes |
Enables the use of the following features that are available in Preview:
* Deferred index creation defers index creation for empty rows or tables with insufficient rows. * Four-level tree indexes support tables with more than one billion vector rows.scann.max_allowed_num_levels
| Type | integer |
| Default | 2 |
| Minimum value | 1 |
| Maximum value | 3 |
| Instance restarts | No |
Determines the highest value you can set for max_num_levels when creating a ScaNN index.
parameterized_views.enabled
| Type | boolean |
| Default | off |
| Instance restarts | Yes |
Controls whether the parameterized view features are enabled.
The parameterized_views.enabled flag setting isn't replicated automatically and must be replicated manually on each instance. You must enable the parameterized_views.enabled flag on each replica instance before you query parameterized views on the replica. For more information, see Manage application data security using AlloyDB Omni parameterized secure views.
parameterized_views.json_results_max_rows
| Type | integer |
| Default | 1,000,000 |
| Instance restarts | No |
Sets the maximum number of rows for JSON results from the execute_parameterized_query() function.
parameterized_views.json_results_max_size
| Type | integer |
| Default | 1,048,576 |
| Instance restarts | No |
Sets the maximum JSON results size in kilobytes (KB) from the execute_parameterized_query() function.
parameterized_views.max_parallel_workers_per_gather
| Type | integer |
| Default | -1 |
| Instance restarts | No |
Sets the maximum number of parallel processes per executor node when a query is run using the parameterized views API. -1 means no limit. This limit applies only if it's more restrictive than max_parallel_workers_per_gather.
parameterized_views.statement_timeout
| Type | integer |
| Default | 0 |
| Instance restarts | No |
Sets the maximum allowed duration in milliseconds of statements run using the parameterized views API. 0 means no limit. This limit applies only if it's more restrictive than statement_timeout.
parameterized_views.temp_file_limit
| Type | integer |
| Default | -1 |
| Instance restarts | No |
Limits the total size in kB of all temporary files used by each process when run using the parameterized views API. -1 means no limit. This limit applies only if it's more restrictive than temp_file_limit.
parameterized_views.work_mem
| Type | integer |
| Default | 0 |
| Instance restarts | No |
Sets the maximum memory in kB to be used for query workspaces when it's run using the parameterized views API. 0 means no limit. This limit applies only if it's more restrictive than work_mem.