----- Original Message ----- > From: "Tom Lane" <t...@sss.pgh.pa.us> > To: emes...@redhat.com > Cc: pgsql-bugs@postgresql.org > Sent: Monday, January 7, 2013 2:32:06 AM > Subject: Re: [BUGS] BUG #7792: pg_dump does not treat -c flag correctly when > using tar format > > emes...@redhat.com writes: > > 1) pg_dump -F t -U postgres -f test.tar test > > 2) tar xvf test.tar to any directory > > 3) vi restore.sql > > * restore.sql includes DROP statements for each object even tough > > -c flag > > was not given > > I believe this is intentional - at least, pg_backup_tar.c goes out of > its way to make it happen. (The forcible setting of ropt->dropSchema > in _CloseArchive is the cause, and it's hard to see why that would be > there unless the author intended this effect.) Perhaps we should > remove > that, but it would be an incompatible change. Arguing for or against > it really requires a model of what people would be doing with the > restore.sql script. I'm not entirely convinced that it should be > considered equivalent to what you'd get from a plain dump run.
Tom, thanks for the quick respond. I find that very confusing: Currently, in order to use the pg_restore (tar format), you will have to create first the database with the same schema you are going to restore while the most convenient usage is to create a new empty database and run the restore. Also, that contradict with the pg_dump -C flag that adds database creation statement and it is clear that DROP statements will fail on a clean database. Regards Eli > > regards, tom lane > -- Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-bugs