[HACKERS] ToDo: conditional ALTER TABLE

2011-12-19 Thread Pavel Stehule
Hello

I am working on quiet dumps now. i found a small issue.

pg_dump produces a statements

ALTER TABLE ONLY public.b DROP CONSTRAINT b_fk_fkey;
ALTER TABLE ONLY public.a DROP CONSTRAINT a_pkey;

DROP TABLE IF EXISTS public.b;
DROP TABLE IF EXISTS public.a;

Actually there is no a conditional ALTER. These statements must be
before DROPs, but then it can fails when these tables are missing.

So some form like ALTER TABLE IF EXISTS ... should be usefull

Regards

Pavel Stehule

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


Re: [HACKERS] ToDo: conditional ALTER TABLE

2011-12-19 Thread Noah Misch
On Mon, Dec 19, 2011 at 10:25:34AM +0100, Pavel Stehule wrote:
 I am working on quiet dumps now. i found a small issue.
 
 pg_dump produces a statements
 
 ALTER TABLE ONLY public.b DROP CONSTRAINT b_fk_fkey;
 ALTER TABLE ONLY public.a DROP CONSTRAINT a_pkey;
 
 DROP TABLE IF EXISTS public.b;
 DROP TABLE IF EXISTS public.a;
 
 Actually there is no a conditional ALTER. These statements must be
 before DROPs, but then it can fails when these tables are missing.
 
 So some form like ALTER TABLE IF EXISTS ... should be usefull

If ALTER TABLE is the only ALTER command you'd need to change this way, I think
your proposal is good.

nm (who has never used pg_dump --clean)

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers