Control / params · All operations
Change an engine setting
A variant of Set parameters
Change, restore or list the configuration options of the engine or session, such as the default schema, an extension or a seed.
Status
- In arcform
Not built yet
arcform does not do this yet; it would live in how a Protocol runs. Its place on the roadmap
What other tools call it
Meridian's classification; an independent blind rating agreed on 95.7% of 324 rows (variant, version 3).
Apache DataFusion (1)
SHOW ALLread 2026-09-27List the session configuration options
DuckDB (4)
LOAD / INSTALLread 2026-09-27Install and load an extension
SET / RESETread 2026-09-27Change or restore a configuration option
USEread 2026-09-27Choose the default database and schema
duckdb_settingsread 2026-09-27duckdb_settings table function
Polars (4)
Extension type registry (family)read 2026-09-273 functions: register_extension_type, unregister_extension_type, get_extension_type
Scan and sink options (family)read 2026-09-273 classes: PartitionBy, FileProviderArgs, ScanCastOptions; partitioned output files and casts applied on scan
StringCache (family)read 2026-09-274 entries: StringCache, enable_string_cache, disable_string_cache, using_string_cache; documented as doing nothing
set_random_seedread 2026-09-27Set the global random seed
subtoken (2)
hnsw_ef_searchread 2026-09-27Setting that overrides the ef_search candidate count when scanning HNSW indexes
hnsw_enable_experimental_persistenceread 2026-09-27Setting that allows HNSW indexes in a database stored on disk; off by default
Talend (1)
tLibraryLoadread 2026-09-27Load Java libraries for use in the Job
VisiData (6)
edit-optionread 2026-09-23Edit the option in current Options Sheet row
open-configread 2026-09-23Open the config file as a text sheet
options-globalread 2026-09-23Open Options Sheet to edit global options
options-sheetread 2026-09-23Open Options Sheet to edit options for current sheet
unset-optionread 2026-09-23Remove the option override in current Options Sheet row
visidatarc (saver)read 2026-09-23Save as Options Sheet as a .visidatarc config file
Background
DuckDB has configuration options that change the system's behaviour, set with the SET or PRAGMA statement and reset to their original values with RESET.[1] In DuckDB, the value of a configuration option can be queried with the current_setting() function or the duckdb_settings() table function.[1] Apache DataFusion shows the current session's configuration options with the SHOW ALL command or the information_schema.df_settings view.[2]
When to use it
In DuckDB, a GLOBAL configuration value is used across the entire DuckDB instance, while a SESSION value is used only for the current session.[3] In DuckDB, GLOBAL settings are not written to the database file, so a new instance uses the defaults unless the options are set again.[3] In DuckDB 2.0, the TimeZone option defaults to the SESSION scope, so setting it changes the time zone for the current session only.[3] Set the options a result depends on, such as the time zone or the default sort order, in the pipeline itself, not in a client's startup file that another machine will not have. (Meridian's view)
A pseudorandom number generator's sequence is completely determined by its seed, so reinitialising it with the same seed produces the same sequence of numbers.[4] In Polars, set_random_seed sets the global random seed, which determines things such as shuffle ordering.[5] Fix the seed in any run that samples or shuffles, so the run can be repeated exactly. (Meridian's view)
The method
In DuckDB, the USE statement sets a default database, schema, or database and schema, so a table created without a fully qualified name is created in the default database.[6] In DuckDB, the INSTALL statement downloads an extension, and the LOAD statement loads an installed extension into the current session.[7] In DuckDB, LOAD fails with an error if the extension is not installed yet, while INSTALL AND LOAD, introduced in DuckDB 2.0, does both in one step.[7] When a DuckDB query uses a function or feature of a known core extension, autoloading installs and loads that extension automatically.[7] Name each extension a pipeline needs in an explicit step rather than relying on autoloading, so a reader can see the dependency. (Meridian's view)
In DuckDB 2.0, duckdb_settings() returns only regular settings by default, and passing include_all := true returns every setting, debug-only and deprecated ones included.[8]
Compared with the alternatives
A configuration file stores data used to configure a software system, such as an application, a server or an operating system.[9] Some programs read their configuration files only at startup, while others periodically check the files for changes.[9] A setting changed by a step travels with the pipeline, while one kept in a configuration file stays with the machine. (Meridian's view)
Sources
- [1]Configuration – DuckDBdocumentation
- [2]Information Schema — Apache DataFusion main documentationdocumentation
- [3]SET and RESET Statements – DuckDBdocumentation
- [4]Random seedsecondary source
- [5]polars.set_random_seed — Polars documentationdocumentation
- [6]USE Statement – DuckDBdocumentation
- [7]LOAD / INSTALL Statements – DuckDBdocumentation
- [8]DuckDB_% Metadata Functions – DuckDBdocumentation
- [9]Configuration filesecondary source