Re: pg_dump does not fully include the schema, causing runtime errors

From: Stephen Frost <sfrost(at)snowman(dot)net>
To: "Ian R(dot) Campbell" <ian(dot)campbell(at)thepathcentral(dot)com>
Cc: pgsql-bugs(at)postgresql(dot)org
Subject: Re: pg_dump does not fully include the schema, causing runtime errors
Date: 2017-09-21 21:31:15
Message-ID: 20170921213115.GM4628@tamriel.snowman.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

Greetings Ian,

* Ian R. Campbell (ian(dot)campbell(at)thepathcentral(dot)com) wrote:
> pg_dump uses SET search_path in order to simplify schema references. Below
> is a snippet of a CREATE TABLE definition that references a function in the
> 'internal' schema:
>
> ... stock_balances integer[] DEFAULT stock_balances_snapshot() ...
>
> This will restore OK, but it will not execute unless the caller also sets
> the search_path, which is certainly not a given or even to be expected.

I'm not really understanding what this sentence means.

Yes, it'll restore OK, and the result should work just fine. What do
you mean by "will not execute unless the caller also sets the
search_path" ... ?

> I have also observed the following output, which suffers the same issue:
>
> ... role "internal".user_role NOT NULL DEFAULT
> 'guest'::user_role ...

What is the issue you're referring to?

> Can pg_dump have an option to output fully qualified schema?

You've not shown why such an option is needed, so it's pretty hard to
see why it would make sense to add it.

Thanks!

Stephen

In response to

Browse pgsql-bugs by date

  From Date Subject
Next Message Venkata B Nagothi 2017-09-22 02:13:35 Re: pg_basebackup
Previous Message Tom Lane 2017-09-21 15:52:37 Re: pg_dump does not fully include the schema, causing runtime errors