• Michael Paquier's avatar
    Add option PROCESS_TOAST to VACUUM · 7cb3048f
    Michael Paquier authored
    This option controls if toast tables associated with a relation are
    vacuumed or not when running a manual VACUUM.  It was already possible
    to trigger a manual VACUUM on a toast relation without processing its
    main relation, but a manual vacuum on a main relation always forced a
    vacuum on its toast table.  This is useful in scenarios where the level
    of bloat or transaction age of the main and toast relations differs a
    lot.
    
    This option is an extension of the existing VACOPT_SKIPTOAST that was
    used by autovacuum to control if toast relations should be skipped or
    not.  This internal flag is renamed to VACOPT_PROCESS_TOAST for
    consistency with the new option.
    
    A new option switch, called --no-process-toast, is added to vacuumdb.
    
    Author: Nathan Bossart
    Reviewed-by: Kirk Jamison, Michael Paquier, Justin Pryzby
    Discussion: https://postgr.es/m/BA8951E9-1524-48C5-94AF-73B1F0D7857F@amazon.com
    7cb3048f
tab-complete.c 183 KB