From fc34b0d9de27ab5ac2887da00b3892bdabd89e45 Mon Sep 17 00:00:00 2001 From: Thomas Munro Date: Mon, 16 Mar 2020 12:31:34 +1300 Subject: Introduce a maintenance_io_concurrency setting. Introduce a GUC and a tablespace option to control I/O prefetching, much like effective_io_concurrency, but for work that is done on behalf of many client sessions. Use the new setting in heapam.c instead of the hard-coded formula effective_io_concurrency + 10 introduced by commit 558a9165e08. Go with a default value of 10 for now, because it's a round number pretty close to the value used for that existing case. Discussion: https://postgr.es/m/CA%2BhUKGJUw08dPs_3EUcdO6M90GnjofPYrWp4YSLaBkgYwS-AqA%40mail.gmail.com --- src/include/commands/tablespace.h | 1 + 1 file changed, 1 insertion(+) (limited to 'src/include/commands/tablespace.h') diff --git a/src/include/commands/tablespace.h b/src/include/commands/tablespace.h index 41c457052d9..fd1b28fca22 100644 --- a/src/include/commands/tablespace.h +++ b/src/include/commands/tablespace.h @@ -40,6 +40,7 @@ typedef struct TableSpaceOpts float8 random_page_cost; float8 seq_page_cost; int effective_io_concurrency; + int maintenance_io_concurrency; } TableSpaceOpts; extern Oid CreateTableSpace(CreateTableSpaceStmt *stmt); -- cgit v1.2.3