vacuumlazy.c: Clean up variable declarations.
authorPeter Geoghegan <pg@bowt.ie>
Sat, 2 Apr 2022 17:33:21 +0000 (10:33 -0700)
committerPeter Geoghegan <pg@bowt.ie>
Sat, 2 Apr 2022 17:33:21 +0000 (10:33 -0700)
Move some of the heap_vacuum_rel() instrumentation related variables to
the scope where they're actually needed.  Also reorder some of the
variable declarations at the start of heap_vacuum_rel() so that related
variables appear together.

src/backend/access/heap/vacuumlazy.c

index 87ab7775aee7a84c4e1915c88494c265e2ef254f..06b523a01faf563f8709066c1f965a93f737e15e 100644 (file)
@@ -306,30 +306,24 @@ heap_vacuum_rel(Relation rel, VacuumParams *params,
 {
        LVRelState *vacrel;
        bool            verbose,
-                               instrument;
+                               instrument,
+                               aggressive,
+                               skipwithvm,
+                               frozenxid_updated,
+                               minmulti_updated;
+       TransactionId OldestXmin,
+                               FreezeLimit;
+       MultiXactId MultiXactCutoff;
+       BlockNumber orig_rel_pages,
+                               new_rel_pages,
+                               new_rel_allvisible;
        PGRUsage        ru0;
        TimestampTz starttime = 0;
-       WalUsage        walusage_start = pgWalUsage;
-       WalUsage        walusage = {0, 0, 0};
-       long            secs;
-       int                     usecs;
-       double          read_rate,
-                               write_rate;
-       bool            aggressive,
-                               skipwithvm;
-       bool            frozenxid_updated,
-                               minmulti_updated;
-       BlockNumber orig_rel_pages;
-       char      **indnames = NULL;
-       BlockNumber new_rel_pages;
-       BlockNumber new_rel_allvisible;
-       double          new_live_tuples;
-       ErrorContextCallback errcallback;
        PgStat_Counter startreadtime = 0;
        PgStat_Counter startwritetime = 0;
-       TransactionId OldestXmin;
-       TransactionId FreezeLimit;
-       MultiXactId MultiXactCutoff;
+       WalUsage        walusage_start = pgWalUsage;
+       ErrorContextCallback errcallback;
+       char      **indnames = NULL;
 
        verbose = (params->options & VACOPT_VERBOSE) != 0;
        instrument = (verbose || (IsAutoVacuumWorkerProcess() &&
@@ -557,7 +551,6 @@ heap_vacuum_rel(Relation rel, VacuumParams *params,
         * relpages to.
         */
        new_rel_pages = vacrel->rel_pages;      /* After possible rel truncation */
-       new_live_tuples = vacrel->new_live_tuples;
        visibilitymap_count(rel, &new_rel_allvisible, NULL);
        if (new_rel_allvisible > new_rel_pages)
                new_rel_allvisible = new_rel_pages;
@@ -578,7 +571,7 @@ heap_vacuum_rel(Relation rel, VacuumParams *params,
                /* Cannot advance relfrozenxid/relminmxid */
                Assert(!aggressive);
                frozenxid_updated = minmulti_updated = false;
-               vac_update_relstats(rel, new_rel_pages, new_live_tuples,
+               vac_update_relstats(rel, new_rel_pages, vacrel->new_live_tuples,
                                                        new_rel_allvisible, vacrel->nindexes > 0,
                                                        InvalidTransactionId, InvalidMultiXactId,
                                                        NULL, NULL, false);
@@ -587,7 +580,7 @@ heap_vacuum_rel(Relation rel, VacuumParams *params,
        {
                Assert(vacrel->scanned_pages + vacrel->frozenskipped_pages ==
                           orig_rel_pages);
-               vac_update_relstats(rel, new_rel_pages, new_live_tuples,
+               vac_update_relstats(rel, new_rel_pages, vacrel->new_live_tuples,
                                                        new_rel_allvisible, vacrel->nindexes > 0,
                                                        FreezeLimit, MultiXactCutoff,
                                                        &frozenxid_updated, &minmulti_updated, false);
@@ -605,7 +598,7 @@ heap_vacuum_rel(Relation rel, VacuumParams *params,
         */
        pgstat_report_vacuum(RelationGetRelid(rel),
                                                 rel->rd_rel->relisshared,
-                                                Max(new_live_tuples, 0),
+                                                Max(vacrel->new_live_tuples, 0),
                                                 vacrel->recently_dead_tuples +
                                                 vacrel->missed_dead_tuples);
        pgstat_progress_end_command();
@@ -618,6 +611,11 @@ heap_vacuum_rel(Relation rel, VacuumParams *params,
                        TimestampDifferenceExceeds(starttime, endtime,
                                                                           params->log_min_duration))
                {
+                       long            secs;
+                       int                     usecs;
+                       WalUsage        walusage;
+                       double          read_rate,
+                                               write_rate;
                        StringInfoData buf;
                        char       *msgfmt;
                        int32           diff;
@@ -674,7 +672,7 @@ heap_vacuum_rel(Relation rel, VacuumParams *params,
                                                         vacrel->num_index_scans);
                        appendStringInfo(&buf, _("pages: %u removed, %u remain, %u scanned (%.2f%% of total)\n"),
                                                         vacrel->removed_pages,
-                                                        vacrel->rel_pages,
+                                                        new_rel_pages,
                                                         vacrel->scanned_pages,
                                                         orig_rel_pages == 0 ? 100.0 :
                                                         100.0 * vacrel->scanned_pages / orig_rel_pages);