Re: error context for vacuum to include block number

Justin Pryzby <pryzby@telsasoft.com>

From: Justin Pryzby <pryzby@telsasoft.com>
To: Amit Kapila <amit.kapila16@gmail.com>
Cc: Masahiko Sawada <masahiko.sawada@2ndquadrant.com>, Alvaro Herrera <alvherre@2ndquadrant.com>, Andres Freund <andres@anarazel.de>, Michael Paquier <michael@paquier.xyz>, pgsql-hackers@postgresql.org
Date: 2020-03-20T14:53:59Z
Lists: pgsql-hackers
On Fri, Mar 20, 2020 at 04:58:08PM +0530, Amit Kapila wrote:
> See, how the attached looks?  I have written a commit message as well,
> see if I have missed anyone is from the credit list?

Thanks for looking again.

Couple tweaks:

+/* Phases of vacuum during which an error can occur. */

Can you say: "during which we report error context"
Otherwise it sounds like we've somehow precluded errors from happening anywhere
else, which I don't think we can claim.

In the commit messsage:
|The additional information displayed will be block number for errors
|occurred while processing heap and index name for errors occurred
|while processing the index.

=> error occurring

|This will help us in diagnosing the problems that occurred during a
|vacuum.  For ex. due to corruption if we get some error while vacuuming,

=> problems that occur

Maybe it should say that this will help both 1) admins who have corruption due
to hardware (say); and, 2) developer's with corruption due to a bug.

-- 
Justin



Commits

  1. Avoid calls to RelationGetRelationName() and RelationGetNamespace() in

  2. Introduce vacuum errcontext to display additional information.

  3. Fix mesurement of elapsed time during truncating heap in VACUUM.

  4. Allow vacuum command to process indexes in parallel.

  5. Refactor code dedicated to index vacuuming in vacuumlazy.c

  6. Remove duplicated progress reporting during heap scan of VACUUM