pg_dump: Strict names with no matching schema

When using pg_dump --strict-names and a schema pattern which doesn't
match any schemas (eg: --schema='nonexistant*'), we were incorrectly
throwing an error claiming no tables were found when, really, there
were no schemas found:

  -> pg_dump --strict-names --schema='nonexistant*'
  pg_dump: no matching tables were found for pattern "nonexistant*"

Fix that by changing the error message to say 'schemas' instead, since
that is what we are actually complaining about.

Noticed while testing pg_dump error cases.

Back-patch to 9.6 where --strict-names and this error message were
introduced.
This commit is contained in:
Stephen Frost 2017-01-10 11:34:55 -05:00
parent 96f2344f38
commit 22a85b3fbe

View File

@ -1219,7 +1219,7 @@ expand_schema_name_patterns(Archive *fout,
res = ExecuteSqlQuery(fout, query->data, PGRES_TUPLES_OK);
if (strict_names && PQntuples(res) == 0)
exit_horribly(NULL, "no matching tables were found for pattern \"%s\"\n", cell->val);
exit_horribly(NULL, "no matching schemas were found for pattern \"%s\"\n", cell->val);
for (i = 0; i < PQntuples(res); i++)
{