Re: Progress reporting for pg_verify_checksums

From: Michael Banck <michael(dot)banck(at)credativ(dot)de>
To: Michael Paquier <michael(at)paquier(dot)xyz>
Cc: Fabien COELHO <coelho(at)cri(dot)ensmp(dot)fr>, Kyotaro HORIGUCHI <horiguchi(dot)kyotaro(at)lab(dot)ntt(dot)co(dot)jp>, alvherre(at)2ndquadrant(dot)com, mailings(at)oopsware(dot)de, thomas(dot)munro(at)enterprisedb(dot)com, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Progress reporting for pg_verify_checksums
Date: 2019-04-01 18:51:03
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers


Am Montag, den 01.04.2019, 15:10 +0900 schrieb Michael Paquier:
> On Sat, Mar 30, 2019 at 09:07:41PM +0100, Michael Banck wrote:
> > The way you've now changed this is that there's a function call into
> > progress_report() for every block that's being read, even if there is no
> > progress reporting requested. That looks like a pretty severe
> > performance problem so I suggest to at least stick with checking
> > showprogress before calling progress_report() and not the other way
> > round.
> >
> > So my vote is in favour of only calling progress_report() every once in
> > a while - I saw quite a speedup (or removal of slowdown) due to this in
> > my tests, this was not just some unwarranted microoptimization.
> Do you have some runtime numbers?

I had another look and I don't see any slowdown with your patch.


Michael Banck
Projektleiter / Senior Berater
Tel.: +49 2166 9901-171
Fax: +49 2166 9901-100
Email: michael(dot)banck(at)credativ(dot)de

credativ GmbH, HRB Mönchengladbach 12080
USt-ID-Nummer: DE204566209
Trompeterallee 108, 41189 Mönchengladbach
Geschäftsführung: Dr. Michael Meskes, Jörg Folz, Sascha Heuer

Unser Umgang mit personenbezogenen Daten unterliegt
folgenden Bestimmungen:

In response to


Browse pgsql-hackers by date

  From Date Subject
Next Message Andres Freund 2019-04-01 18:55:09 Re: Unified logging system for command-line programs
Previous Message Peter Eisentraut 2019-04-01 18:48:41 Re: Unified logging system for command-line programs