Re: pg_dump doesn't dump new objects created in schemas from extensions

From: Michael Paquier <michael(dot)paquier(at)gmail(dot)com>
To: Martín Marqués <martin(at)2ndquadrant(dot)com>
Cc: Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>, PostgreSQL mailing lists <pgsql-bugs(at)postgresql(dot)org>
Subject: Re: pg_dump doesn't dump new objects created in schemas from extensions
Date: 2016-06-17 23:31:18
Message-ID: CAB7nPqTW-m5+H0E_BuMaN1=6Go4vbP1xhz4gbiXf3TMdNSchcg@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

On Sat, Jun 18, 2016 at 2:21 AM, Martín Marqués <martin(at)2ndquadrant(dot)com> wrote:
> El 17/06/16 a las 03:35, Michael Paquier escribió:
>> On Fri, Jun 17, 2016 at 4:21 AM, Martín Marqués <martin(at)2ndquadrant(dot)com> wrote:
>>> IMO, this assignment:
>>>
>>> tbinfo->dobj.dump = tbinfo->dobj.namespace->dobj.dump_contains;
>>>
>>> should be replaced by a call to some new function which would be more
>>> or less a copy of selectDumpableNamespace, but without the
>>> checkExtensionMembership call.
>>
>> Ah, I see. Yes this is definitely wrong. The namespace itself may be
>> part of an extension but we do not check for it at all. See for
>> example the patch attached that is giving what I would expect is the
>> correct behavior.
>
> This is a new version of your patch that checks for schema inclusion or
> exclusion.
>
> If there are no complains, I could apply similar changes on other
> objects for a more complete patch.
>
> Thoughts, objections?

Tests, and refactoring.

As this is going to be heavily duplicated, you may want to use a
different routine for this check. Integrating some tests with a dummy
extension that creates a schema would also be a good idea as this is
likely going to modify many code paths. So I think that we should have
something stored in src/test/modules that gets installed when running
make check in src/bin/pg_dump, and then one of the TAP scripts in t/
creates a bunch of objects on the schema created by the extension.
--
Michael

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Martín Marqués 2016-06-18 00:27:08 Re: pg_dump doesn't dump new objects created in schemas from extensions
Previous Message Albin, Lloyd P 2016-06-17 17:34:41 Re: BUG #14197: ERROR: character with byte sequence 0x81 in encoding "WIN1252" has no equivalent in encoding "UTF8"