On Sun, Mar 10, 2024 at 4:51 PM Pavel Stehule <pavel.steh...@gmail.com> wrote: > > Hi > > ne 10. 3. 2024 v 15:23 odesílatel Magnus Hagander <mag...@hagander.net> > napsal: >> >> When including tables with the new pg_dump functionality, it fails to >> error out if a table is missing, but only if more than one table is >> specified. >> >> E.g., if table foo exist, but not bar: >> >> pg_dump --table bar >> pg_dump: error: no matching tables were found >> >> with file "myfilter" containing just "table bar" >> pg_dump --filter myfilter >> pg_dump: error: no matching tables were found >> >> with the file "myfilter" containing both "table foo" and "table bar" >> (order doesn't matter): >> <no error, but dump of course only contains foo> > > > is not this expected behaviour (consistent with -t option)? > > (2024-03-10 16:48:07) postgres=# \dt > List of relations > ┌────────┬──────┬───────┬───────┐ > │ Schema │ Name │ Type │ Owner │ > ╞════════╪══════╪═══════╪═══════╡ > │ public │ foo │ table │ pavel │ > └────────┴──────┴───────┴───────┘ > (1 row) > > pavel@nemesis:~/src/orafce$ /usr/local/pgsql/master/bin/pg_dump -t foo -t boo > > /dev/null > pavel@nemesis:~/src/orafce$ > > if you want to raise error, you should to use option --strict-names. > > pavel@nemesis:~/src/orafce$ /usr/local/pgsql/master/bin/pg_dump -t foo -t boo > --strict-names > /dev/null > pg_dump: error: no matching tables were found for pattern "boo"
Hmpf, you're right. I guess I don't use multiple-dash-t often enough :) So yeah, then I agree this is probably the right behaviour. Maybe the docs for --filter deserves a specific mention about these rules though, as it's going to be a lot more common to specify multiples when using --filter? -- Magnus Hagander Me: https://www.hagander.net/ Work: https://www.redpill-linpro.com/