On Sat, 2012-10-13 at 16:47 +0200, Guillaume Lelarge wrote: > Hi, > > One of my colleagues, Jehan-Guillaume de Rorthais, found a weird > behaviour of the "-c" command line option in the pg_restore tool while > doing a training. Here is the following steps he followed: > > createdb foo > <adds a few objets in foo> > pg_dump -Fc foo > foo.dump > createdb bar > pg_restore -c -d bar foo.dump > > bar contains the same objects as foo (nothing unusual here), but... foo > is no longer present. Actually, if you use the "-c" command line option, > you get a "DROP DATABASE" statement. To me, it feels like a quite > terrible bug. > > It's quite easy to reproduce. Just create a database, and use pg_dump > with the "-c" option: > > createdb foo > pg_dump -s -c foo | grep DATABASE > > and you end up with this: > > DROP DATABASE foo; > > I tried from 8.3 till 9.2, and only 9.2 has this behaviour. > > You'll find attached a patch that fixes this issue. Another colleague, > Gilles Darold, tried it in every possible way, and it works. I'm not > sure the test I added makes it a very good patch, but it fixes the bug. >
Any comments on this? -- Guillaume http://blog.guillaume.lelarge.info http://www.dalibo.com -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers