On Sat, 2012-10-20 at 14:28 -0400, Tom Lane wrote:
> I wrote:
> > It looks like I broke this in commit
> > 4317e0246c645f60c39e6572644cff1cb03b4c65, because I removed this from
> > _tocEntryRequired():
>
> > - /* Ignore DATABASE entry unless we should create it */
> > - if (!ropt->createDB && strcmp(te->desc, "DATABASE") == 0)
> > - return 0;
>
> Actually, on closer look, this change provides the foundation needed to
> do more than just fix this bug. We can also make the combination
> "pg_dump -C -c" work sanely, which it never has before. I propose that
> we fix this with the attached patch (plus probably some documentation
> changes, though I've not looked yet to see what the docs say about it).
> With this fix, the output for "-C -c" looks like
>
> DROP DATABASE regression;
> CREATE DATABASE regression WITH ...
> ALTER DATABASE regression OWNER ...
> \connect regression
> ... etc ...
>
> which seems to me to be just about exactly what one would expect.
>
> The patch also gets rid of a kluge in PrintTOCSummary, which was needed
> because of the old coding in _tocEntryRequired(), but no longer is.
>
Thanks a lot.
--
Guillaume
http://blog.guillaume.lelarge.info
http://www.dalibo.com