Hi,
I was wondering why autovacuum_freeze_max_age actually can't be set
at runtime... guc.c points to varsup.c which says:
* Note: autovacuum_freeze_max_age is a PGC_POSTMASTER
parameter so that
* we don't have to worry about dealing with on-the-fly changes in its
* value. It doesn't look practical to update shared state from a GUC
* assign hook (too many processes would try to execute the hook,
* resulting in race conditions as well as crashes of those not
* connected to shared memory). Perhaps this can be improved someday.
I'm not sure I understand what would need to be updated other than
the variable itself? Obviously it would mean that it would only take
effect the next time SetTransactionIdLimit is called, i.e. the next
time VACUUM is run, but I guess this is always better than having to
restart the database?
Any more explicit hints?
Thanks,
Jacques.
---------------------------(end of broadcast)---------------------------
TIP 2: Don't 'kill -9' the postmaster