Re: error context for vacuum to include block number
Justin Pryzby <pryzby@telsasoft.com>
From: Justin Pryzby <pryzby@telsasoft.com>
To: Masahiko Sawada <masahiko.sawada@2ndquadrant.com>
Cc: Alvaro Herrera <alvherre@2ndquadrant.com>, Andres Freund <andres@anarazel.de>, Michael Paquier <michael@paquier.xyz>, pgsql-hackers@postgresql.org
Date: 2020-03-04T21:51:59Z
Lists: pgsql-hackers
Attachments
On Wed, Mar 04, 2020 at 04:21:06PM +0900, Masahiko Sawada wrote: > Thank you for updating the patch. But we have two more places where we > do fsm vacuum. Oops, thanks. I realized that vacuum_page is called not only from lazy_vacuum_heap, but also directly from lazy_scan_heap, which failed to update errcbarg. So I changed to update errcbarg in vacuum_page. What about these other calls ? I think granularity of individual function calls requires a debugger, but is it fine issue if errors here are attributed to (say) "scanning heap" ? GetRecordedFreeSpace heap_*_freeze_tuple heap_page_prune HeapTupleSatisfiesVacuum LockBufferForCleanup MarkBufferDirty Page*AllVisible PageGetHeapFreeSpace RecordPageWithFreeSpace visibilitymap_* VM_ALL_FROZEN > These functions have LVDeadTuples and LVRelStats but LVDeadTuples can > be referred by LVRelStats. If we want to use LVRelStats as callback > argument, we can remove function arguments that can be referred by > LVRelStats. That doesn't work easily with parallel vacuum, which passes not vacrelstats->dead_tuples, but a dead_tuples pulled out of shm_toc. But it was easy enough to remove "reltuples". -- Justin
Commits
-
Avoid calls to RelationGetRelationName() and RelationGetNamespace() in
- ef75140fe756 13.0 landed
-
Introduce vacuum errcontext to display additional information.
- b61d161c1463 13.0 landed
-
Fix mesurement of elapsed time during truncating heap in VACUUM.
- 007491979461 13.0 cited
-
Allow vacuum command to process indexes in parallel.
- 40d964ec997f 13.0 cited
-
Refactor code dedicated to index vacuuming in vacuumlazy.c
- 1ab41a3c8edc 13.0 landed
-
Remove duplicated progress reporting during heap scan of VACUUM
- e5a02e0fc68b 13.0 landed