2014-02-28 23:13 GMT+01:00 Pavel Stehule <pavel.steh...@gmail.com>:

> Hi
>
>
>> However, I don't think this is behaving sanely in pg_dumpall.  AFAICT,
>> pg_dumpall does not pass --clean to pg_dump (in other words it only
>> emits DROP for the global objects, not the objects contained inside
>> databases), so passing --if-exists results in failures.  Therefore I
>> think the solution is to not pass --if-exists to pg_dump at all, i.e.
>> keep it internal to pg_dumpall.  But maybe I'm missing something.
>>
>
> I am looking to pg_dumpall code, and I am inclined to don't pass
> --if-exists to pg_dump too.
>
>  -c, --clean for pg_dumpall means "drop databases"
>
> <<<<<
> Usage:
>   pg_dumpall [OPTION]...
>
> General options:
>   -f, --file=FILENAME          output file name
>   -V, --version                output version information, then exit
>   --lock-wait-timeout=TIMEOUT  fail after waiting TIMEOUT for a table lock
>   -?, --help                   show this help, then exit
>
> Options controlling the output content:
>   -a, --data-only              dump only the data, not the schema
>   -c, --clean                  clean (drop) databases before recreating
> >>>>>
>
> so --if-exists should to mean
>
> DROP DATABASE IF EXISTS dbname
>

+ DROP ROLE and DROP TABLESPACE


>
> do you agree?
>
> Pavel
>

Reply via email to