Re: Progress reporting for pg_verify_checksums

Michael Banck <michael.banck@credativ.de>

From: Michael Banck <michael.banck@credativ.de>
To: Fabien COELHO <coelho@cri.ensmp.fr>
Cc: Michael Paquier <michael@paquier.xyz>, Kyotaro HORIGUCHI <horiguchi.kyotaro@lab.ntt.co.jp>, alvherre@2ndquadrant.com, mailings@oopsware.de, thomas.munro@enterprisedb.com, pgsql-hackers@postgresql.org
Date: 2019-03-28T08:48:12Z
Lists: pgsql-hackers

Attachments

Hi,

Am Donnerstag, den 28.03.2019, 09:41 +0100 schrieb Fabien COELHO:
> Hallo Michael,
> 
> > > Or anything which converts to double early.
> > Are you sure, seeing elapsed is a double already?
> 
> 
> Argh, I missed that. You are right that a double elapsed is enough for the 
> second part. However, with
> 
>   +  current_speed = (current_size / MEGABYTES) / (elapsed / 1000.0);
> 
> the first division is an integer one because both operands are ints, so 
> megabytes conversion is rounded down. I'd suggest:
> 
>   +  current_speed = ((double) current_size / MEGABYTES) / (elapsed / 1000);

Ok.

> > > Ok, it is more complicated that it looks for large sizes if second is not
> > > the right display unit.
> > 
> > Right, new version attached.
> 
> Applies, compiles, global & local "make check" (although not tested) ok, 
> doc build ok, manual tests ok.

Thanks.

> Otherwise a very minor comment: I'd invert !force and the computations in 
> the return condition to avoid the computations when not needed.

The force is only ever true right at the end of the program so it would
not save anything really and detract from the main gist of that
statement, so I left it as-is.


Michael

-- 
Michael Banck
Projektleiter / Senior Berater
Tel.: +49 2166 9901-171
Fax:  +49 2166 9901-100
Email: michael.banck@credativ.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: https://www.credativ.de/datenschutz

Commits

  1. Add progress reporting to pg_checksums

  2. Fix thinko when bumping on temporary directories in pg_verify_checksums

  3. Fix thinko when bumping on temporary directories in pg_checksums