Обсуждение: pgsql: Lower *_freeze_max_age minimum values.

Поиск
Список
Период
Сортировка

pgsql: Lower *_freeze_max_age minimum values.

От
Andres Freund
Дата:
Lower *_freeze_max_age minimum values.

The old minimum values are rather large, making it time consuming to
test related behaviour. Additionally the current limits, especially for
multixacts, can be problematic in space-constrained systems. 10000000
multixacts can contain a lot of members.

Since there's no good reason for the current limits, lower them a good
bit. Setting them to 0 would be a bad idea, triggering endless vacuums,
so still retain a limit.

While at it fix autovacuum_multixact_freeze_max_age to refer to
multixact.c instead of varsup.c.

Reviewed-By: Robert Haas
Discussion: CA+TgmoYmQPHcrc3GSs7vwvrbTkbcGD9Gik=OztbDGGrovkkEzQ@mail.gmail.com
Backpatch: back to 9.0 (in parts)

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/020235a5754be6ba1f0d240b4c86c642e1a62d70

Modified Files
--------------
src/backend/utils/misc/guc.c |    6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)


Re: pgsql: Lower *_freeze_max_age minimum values.

От
Tom Lane
Дата:
Andres Freund <andres@anarazel.de> writes:
> Lower *_freeze_max_age minimum values.

Should this patch not have also touched the per-table limits in
reloptions.c?

Also, I went looking for documentation about the minimum allowed values,
and I found places in create_table.sgml that claim these variables can be
set to zero.  You didn't break that with this patch, but it's still wrong.

            regards, tom lane


Re: pgsql: Lower *_freeze_max_age minimum values.

От
Andres Freund
Дата:
On 2015-09-24 10:37:33 -0400, Tom Lane wrote:
> Andres Freund <andres@anarazel.de> writes:
> > Lower *_freeze_max_age minimum values.
>
> Should this patch not have also touched the per-table limits in
> reloptions.c?

Hm. I guess that'd make sense. It's not really related to the goal of
making it realistic to test multixact/clog truncation, but it's less
confusing if consistent.

> Also, I went looking for documentation about the minimum allowed
> values,

I seached for references and was surprised we don't document the limits
anywhere....

> and I found places in create_table.sgml that claim these variables can be
> set to zero.  You didn't break that with this patch, but it's still wrong.

Seems to have been "broken" back in 834a6da4f7 - the old table based
approach doesn't seem to have imposed lower limits. I'm not really sure
whether making the limits consistent and updating the docs or removing
them alltogether is the better approach.

Greetings,

Andres Freund