Get the App
SLTechnology News&Howtos  ›  Database  › 

Interpretation of PostgreSQL Source Code-MVCC#13 (vacuum procedure-vacuum_set_xid_limits function)

Shulou Source: shulou.com Published: 2022-06-01 06:39:45 10月04日 Update

This section briefly introduces the processing flow of manual vacuum execution by PostgreSQL, and mainly analyzes the implementation logic of the ExecVacuum- > vacuum- > vacuum_rel- > heap_vacuum_rel- > vacuum_set_xid_limits function, which calculates the oldest xmin and freeze cutoff point.

I. data structure

Macro definition

Vacuum and Analyze command options

/ *-- * Vacuum and Analyze Statements * Vacuum and Analyze command options * * Even though these are nominally two statements, it's convenient to use * just one node type for both. Note that at least one of VACOPT_VACUUM * and VACOPT_ANALYZE must be set in options. Although there are two different statements here, you only need to use a uniform Node type. * Note that at least VACOPT_VACUUM/VACOPT_ANALYZE is set in the options. *-- * / typedef enum VacuumOption {VACOPT_VACUUM = 1

Tags: Upper limit transaction cutoff minimum security parameter user function frequency command age age situation data logic permanent analysis processing generation source code Apple Docker Huawei Linux macOS MariaDB Microsoft MySQL NVidia OPPO Reno vpn Apple Shulou Technology MySQL Docker