Re: error context for vacuum to include block number
Robert Haas <robertmhaas@gmail.com>
From: Robert Haas <robertmhaas@gmail.com>
To: Justin Pryzby <pryzby@telsasoft.com>
Cc: Michael Paquier <michael@paquier.xyz>,
Alvaro Herrera <alvherre@2ndquadrant.com>, Andres Freund <andres@anarazel.de>, "pgsql-hackers@postgresql.org" <pgsql-hackers@postgresql.org>
Date: 2019-12-29T00:21:31Z
Lists: pgsql-hackers
On Thu, Dec 26, 2019 at 10:57 AM Justin Pryzby <pryzby@telsasoft.com> wrote: > I agree that's better. > I don't see any reason why the progress params need to be updated atomically. > So rebasified against your patch. I am not sure whether it's important enough to make a stink about, but it bothers me a bit that this is being dismissed as unimportant. The problem is that, if the updates are not atomic, then somebody might see the data after one has been updated and the other has not yet been updated. The result is that when the phase is PROGRESS_VACUUM_PHASE_VACUUM_INDEX, someone reading the information can't tell whether the number of index scans reported is the number *previously* performed or the number performed including the one that just finished. The race to see the latter state is narrow, so it probably wouldn't come up often, but it does seem like it would be confusing if it did happen. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company
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