diff options
author | Andres Freund | 2025-03-30 23:14:55 +0000 |
---|---|---|
committer | Andres Freund | 2025-03-30 23:16:47 +0000 |
commit | 2a5e709e721cf5f890cde51755b84cfe25d1c4d9 (patch) | |
tree | e48d7981c9ea2c20b9da99e5f78c7173875f7c68 /src/backend/commands | |
parent | ae3df4b34155d4a3811762e78d5076e64df66fba (diff) |
Enable IO concurrency on all systems
Previously effective_io_concurrency and maintenance_io_concurrency could not
be set above 0 on machines without fadvise support. AIO enables IO concurrency
without such support, via io_method=worker.
Currently only subsystems using the read stream API will take advantage of
this. Other users of maintenance_io_concurrency (like recovery prefetching)
which leverage OS advice directly will not benefit from this change. In those
cases, maintenance_io_concurrency will have no effect on I/O behavior.
Author: Melanie Plageman <[email protected]>
Reviewed-by: Noah Misch <[email protected]>
Discussion: https://postgr.es/m/CAAKRu_atGgZePo=_g6T3cNtfMf0QxpvoUh5OUqa_cnPdhLd=gw@mail.gmail.com
Diffstat (limited to 'src/backend/commands')
-rw-r--r-- | src/backend/commands/variable.c | 30 |
1 files changed, 0 insertions, 30 deletions
diff --git a/src/backend/commands/variable.c b/src/backend/commands/variable.c index 84f044a1959..a9f2a3a3062 100644 --- a/src/backend/commands/variable.c +++ b/src/backend/commands/variable.c @@ -1145,7 +1145,6 @@ check_cluster_name(char **newval, void **extra, GucSource source) void assign_maintenance_io_concurrency(int newval, void *extra) { -#ifdef USE_PREFETCH /* * Reconfigure recovery prefetching, because a setting it depends on * changed. @@ -1153,7 +1152,6 @@ assign_maintenance_io_concurrency(int newval, void *extra) maintenance_io_concurrency = newval; if (AmStartupProcess()) XLogPrefetchReconfigure(); -#endif } /* @@ -1250,34 +1248,6 @@ check_default_with_oids(bool *newval, void **extra, GucSource source) } bool -check_effective_io_concurrency(int *newval, void **extra, GucSource source) -{ -#ifndef USE_PREFETCH - if (*newval != 0) - { - GUC_check_errdetail("\"%s\" must be set to 0 on platforms that lack support for issuing read-ahead advice.", - "effective_io_concurrency"); - return false; - } -#endif /* USE_PREFETCH */ - return true; -} - -bool -check_maintenance_io_concurrency(int *newval, void **extra, GucSource source) -{ -#ifndef USE_PREFETCH - if (*newval != 0) - { - GUC_check_errdetail("\"%s\" must be set to 0 on platforms that lack support for issuing read-ahead advice.", - "maintenance_io_concurrency"); - return false; - } -#endif /* USE_PREFETCH */ - return true; -} - -bool check_ssl(bool *newval, void **extra, GucSource source) { #ifndef USE_SSL |