mirror of
https://github.com/postgres/postgres.git
synced 2025-06-14 18:42:34 +03:00
Increase default maintenance_io_concurrency to 16
Since its introduction infc34b0d9de
, the default maintenance_io_concurrency has been larger than the default effective_io_concurrency. maintenance_io_concurrency primarily controlled prefetching done on behalf of the whole system, for operations like recovery. Therefore it makes sense for it to have a value equal to or greater than effective_io_concurrency, which controls I/O concurrency for reading a relation in a bitmap heap scan.ff79b5b2ab
increased effective_io_concurrency to 16, so we'll increase maintenance_io_concurrency as well. For now, though, we'll keep the defaults of effective_io_concurrency and maintenance_io_concurrency equal to one another (16). On fast, high IOPs systems, significantly higher values of maintenance_io_concurrency are observably beneficial [1]. However, such values would flood low IOPs systems and increase overall system I/O latency. It is worth mentioning that since9256822608
andc3e775e608
, maintenance_io_concurrency also controls the I/O concurrency of each vacuum worker. Since many autovacuum workers may be simultaneously issuing I/Os, we want to keep maintenance_io_concurrency appropriately conservative. [1] https://postgr.es/m/c5d52837-6256-0556-ac8c-d6d3d558820a%40enterprisedb.com Suggested-by: Jakub Wartak <jakub.wartak@enterprisedb.com> Discussion: https://postgr.es/m/CAKZiRmxdHQaU%2B2Zpe6d%3Dx%3D0vigJ1sfWwwVYLJAf%3Dud_wQ_VcUw%40mail.gmail.com
This commit is contained in:
@ -2617,10 +2617,10 @@ include_dir 'conf.d'
|
||||
for maintenance work that is done on behalf of many client sessions.
|
||||
</para>
|
||||
<para>
|
||||
The default is 10 on supported systems, otherwise 0. This value can
|
||||
be overridden for tables in a particular tablespace by setting the
|
||||
tablespace parameter of the same name (see
|
||||
<xref linkend="sql-altertablespace"/>).
|
||||
The default is <literal>16</literal> on supported systems, otherwise
|
||||
<literal>0</literal>. This value can be overridden for tables in a
|
||||
particular tablespace by setting the tablespace parameter of the same
|
||||
name (see <xref linkend="sql-altertablespace"/>).
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
Reference in New Issue
Block a user