aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDaniel Gustafsson <dgustafsson@postgresql.org>2021-08-20 12:44:54 +0200
committerDaniel Gustafsson <dgustafsson@postgresql.org>2021-08-20 12:44:54 +0200
commit9a9c8b92018d4d48f93cd8fa1895c53fa5946d75 (patch)
tree4b6d7e102e16271eecba8c236f16a60eb6f57915 /src
parent5b3f471ff23a2773e6c1ee1704377581c987107d (diff)
downloadpostgresql-9a9c8b92018d4d48f93cd8fa1895c53fa5946d75.tar.gz
postgresql-9a9c8b92018d4d48f93cd8fa1895c53fa5946d75.zip
Remove --quiet option from pg_amcheck
Using --quiet in combination with --no-strict-names didn't work as documented, a warning message was still emitted. Since the --quiet flag was working in an unconventional way to other utilities, fix by removing the functionality instead. Backpatch through 14 where pg_amcheck was introduced. Bug: 17148 Reported-by: Chen Jiaoqian <chenjq.jy@fujitsu.com> Reviewed-by: Julien Rouhaud <rjuju123@gmail.com> Discussion: https://postgr.es/m/17148-b5087318e2b04fc6@postgresql.org Backpatch-through: 14
Diffstat (limited to 'src')
-rw-r--r--src/bin/pg_amcheck/pg_amcheck.c38
-rw-r--r--src/bin/pg_amcheck/t/002_nonesuch.pl6
-rw-r--r--src/bin/pg_amcheck/t/003_check.pl2
-rw-r--r--src/bin/pg_amcheck/t/005_opclass_damage.pl2
4 files changed, 20 insertions, 28 deletions
diff --git a/src/bin/pg_amcheck/pg_amcheck.c b/src/bin/pg_amcheck/pg_amcheck.c
index af83d600abe..f4b1ef95e9e 100644
--- a/src/bin/pg_amcheck/pg_amcheck.c
+++ b/src/bin/pg_amcheck/pg_amcheck.c
@@ -56,7 +56,6 @@ typedef struct AmcheckOptions
bool dbpattern;
bool alldb;
bool echo;
- bool quiet;
bool verbose;
bool strict_names;
bool show_progress;
@@ -112,7 +111,6 @@ static AmcheckOptions opts = {
.dbpattern = false,
.alldb = false,
.echo = false,
- .quiet = false,
.verbose = false,
.strict_names = true,
.show_progress = false,
@@ -250,7 +248,6 @@ main(int argc, char *argv[])
{"exclude-index", required_argument, NULL, 'I'},
{"jobs", required_argument, NULL, 'j'},
{"progress", no_argument, NULL, 'P'},
- {"quiet", no_argument, NULL, 'q'},
{"relation", required_argument, NULL, 'r'},
{"exclude-relation", required_argument, NULL, 'R'},
{"schema", required_argument, NULL, 's'},
@@ -294,7 +291,7 @@ main(int argc, char *argv[])
handle_help_version_opts(argc, argv, progname, help);
/* process command-line options */
- while ((c = getopt_long(argc, argv, "ad:D:eh:Hi:I:j:p:Pqr:R:s:S:t:T:U:wWv",
+ while ((c = getopt_long(argc, argv, "ad:D:eh:Hi:I:j:p:Pr:R:s:S:t:T:U:wWv",
long_options, &optindex)) != -1)
{
char *endptr;
@@ -338,9 +335,6 @@ main(int argc, char *argv[])
case 'P':
opts.show_progress = true;
break;
- case 'q':
- opts.quiet = true;
- break;
case 'r':
opts.allrel = false;
append_relation_pattern(&opts.include, optarg, encoding);
@@ -637,21 +631,18 @@ main(int argc, char *argv[])
{
failed = opts.strict_names;
- if (!opts.quiet || failed)
- {
- if (pat->heap_only)
- log_no_match("no heap tables to check matching \"%s\"",
- pat->pattern);
- else if (pat->btree_only)
- log_no_match("no btree indexes to check matching \"%s\"",
- pat->pattern);
- else if (pat->rel_regex == NULL)
- log_no_match("no relations to check in schemas matching \"%s\"",
- pat->pattern);
- else
- log_no_match("no relations to check matching \"%s\"",
- pat->pattern);
- }
+ if (pat->heap_only)
+ log_no_match("no heap tables to check matching \"%s\"",
+ pat->pattern);
+ else if (pat->btree_only)
+ log_no_match("no btree indexes to check matching \"%s\"",
+ pat->pattern);
+ else if (pat->rel_regex == NULL)
+ log_no_match("no relations to check in schemas matching \"%s\"",
+ pat->pattern);
+ else
+ log_no_match("no relations to check matching \"%s\"",
+ pat->pattern);
}
}
@@ -749,8 +740,6 @@ main(int argc, char *argv[])
if (opts.verbose)
PQsetErrorVerbosity(free_slot->connection, PQERRORS_VERBOSE);
- else if (opts.quiet)
- PQsetErrorVerbosity(free_slot->connection, PQERRORS_TERSE);
/*
* Execute the appropriate amcheck command for this relation using our
@@ -1192,7 +1181,6 @@ help(const char *progname)
printf(_("\nOther options:\n"));
printf(_(" -e, --echo show the commands being sent to the server\n"));
printf(_(" -j, --jobs=NUM use this many concurrent connections to the server\n"));
- printf(_(" -q, --quiet don't write any messages\n"));
printf(_(" -P, --progress show progress information\n"));
printf(_(" -v, --verbose write a lot of output\n"));
printf(_(" -V, --version output version information, then exit\n"));
diff --git a/src/bin/pg_amcheck/t/002_nonesuch.pl b/src/bin/pg_amcheck/t/002_nonesuch.pl
index 5417959553e..e30c1cc5464 100644
--- a/src/bin/pg_amcheck/t/002_nonesuch.pl
+++ b/src/bin/pg_amcheck/t/002_nonesuch.pl
@@ -6,7 +6,7 @@ use warnings;
use PostgresNode;
use TestLib;
-use Test::More tests => 72;
+use Test::More tests => 76;
# Test set-up
my ($node, $port);
@@ -191,6 +191,10 @@ $node->command_checks_all(
qr/pg_amcheck: warning: no relations to check matching "postgres\.long\.dotted\.string"/,
qr/pg_amcheck: warning: no relations to check matching "postgres\.pg_catalog\.none"/,
qr/pg_amcheck: warning: no relations to check matching "postgres\.none\.pg_class"/,
+ qr/pg_amcheck: warning: no connectable databases to check matching "no_such_database"/,
+ qr/pg_amcheck: warning: no connectable databases to check matching "no\*such\*database"/,
+ qr/pg_amcheck: warning: no connectable databases to check matching "none\.none\.none"/,
+ qr/pg_amcheck: warning: no connectable databases to check matching "this\.is\.a\.really\.long\.dotted\.string"/,
],
'many unmatched patterns and one matched pattern under --no-strict-names'
);
diff --git a/src/bin/pg_amcheck/t/003_check.pl b/src/bin/pg_amcheck/t/003_check.pl
index f3eb41ce3ad..c26e5eda676 100644
--- a/src/bin/pg_amcheck/t/003_check.pl
+++ b/src/bin/pg_amcheck/t/003_check.pl
@@ -317,7 +317,7 @@ plan_to_remove_relation_file('db2', 's1.t1_btree');
#
# Standard first arguments to TestLib functions
-my @cmd = ('pg_amcheck', '--quiet', '-p', $port);
+my @cmd = ('pg_amcheck', '-p', $port);
# Regular expressions to match various expected output
my $no_output_re = qr/^$/;
diff --git a/src/bin/pg_amcheck/t/005_opclass_damage.pl b/src/bin/pg_amcheck/t/005_opclass_damage.pl
index 806335375d5..e87d81d7d42 100644
--- a/src/bin/pg_amcheck/t/005_opclass_damage.pl
+++ b/src/bin/pg_amcheck/t/005_opclass_damage.pl
@@ -34,7 +34,7 @@ $node->safe_psql(
# We have not yet broken the index, so we should get no corruption
$node->command_like(
- [ 'pg_amcheck', '--quiet', '-p', $node->port, 'postgres' ],
+ [ 'pg_amcheck', '-p', $node->port, 'postgres' ],
qr/^$/,
'pg_amcheck all schemas, tables and indexes reports no corruption');