Commit a846e6d0 authored by Alvaro Herrera's avatar Alvaro Herrera

pg_verify_checksums: rename -d to --verbose

Using -d is odd, because we normally reserve that for a database
argument, so rename it to -v and add long version --verbose.

Also, reduce it to emit one line per file checked rather than one line
per block.

Per a complaint from Michael Banck.

Author: Yugo Nagata <nagata@sraoss.co.jp>
Reviewed-by: default avatarMichael Banck <michael.banck@credativ.de>
Discussion: https://postgr.es/m/20180827113411.GA22768@nighthawk.caipicrew.dd-dns.de
parent 4db226b7
......@@ -61,10 +61,11 @@ PostgreSQL documentation
</varlistentry>
<varlistentry>
<term><option>-d</option></term>
<term><option>-v</option></term>
<term><option>--verbose</option></term>
<listitem>
<para>
Enable debug output. Lists all checked blocks and their checksum.
Enable verbose output. Lists all checked files.
</para>
</listitem>
</varlistentry>
......
......@@ -31,7 +31,7 @@ static int64 badblocks = 0;
static ControlFileData *ControlFile;
static char *only_relfilenode = NULL;
static bool debug = false;
static bool verbose = false;
static const char *progname;
......@@ -43,7 +43,7 @@ usage()
printf(_(" %s [OPTION]... [DATADIR]\n"), progname);
printf(_("\nOptions:\n"));
printf(_(" [-D, --pgdata=]DATADIR data directory\n"));
printf(_(" -d debug output, list all checked blocks\n"));
printf(_(" -v, --verbose output verbose messages\n"));
printf(_(" -r RELFILENODE check only relation with specified relfilenode\n"));
printf(_(" -V, --version output version information, then exit\n"));
printf(_(" -?, --help show this help, then exit\n"));
......@@ -120,11 +120,12 @@ scan_file(char *fn, int segmentno)
progname, fn, blockno, csum, header->pd_checksum);
badblocks++;
}
else if (debug)
fprintf(stderr, _("%s: checksum verified in file \"%s\", block %d: %X\n"),
progname, fn, blockno, csum);
}
if (verbose)
fprintf(stderr,
_("%s: checksums verified in file \"%s\"\n"), progname, fn);
close(f);
}
......@@ -208,6 +209,7 @@ main(int argc, char *argv[])
{
static struct option long_options[] = {
{"pgdata", required_argument, NULL, 'D'},
{"verbose", no_argument, NULL, 'v'},
{NULL, 0, NULL, 0}
};
......@@ -234,12 +236,12 @@ main(int argc, char *argv[])
}
}
while ((c = getopt_long(argc, argv, "D:r:d", long_options, &option_index)) != -1)
while ((c = getopt_long(argc, argv, "D:r:v", long_options, &option_index)) != -1)
{
switch (c)
{
case 'd':
debug = true;
case 'v':
verbose = true;
break;
case 'D':
DataDir = optarg;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment