Re: postgres_fdw error

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Thanks Tom, that seemed to get me farther. I issued this on the remote db:
ALTER FUNCTION utils.concat_artists(character varying) SET search_path=public,utils;

And now my test errs on a different function, which probably needs the same:

piction@piction_transit> select * from piction.bampfa_test_fv ;
ERROR:  relation "collectionobjects_common" does not exist
CONTEXT:  Remote SQL command: SELECT objectcsid, idnumber, collections FROM piction.bampfa_test_v
PL/pgSQL function utils.get_first_blobcsid(character varying) line 7 at SQL statement

In case this breaks stuff, what is the default search_path for functions if they are created without one set explicitly?
"$user"?

Adam


On Fri, Aug 14, 2015 at 2:38 PM, Tom Lane <tgl@xxxxxxxxxxxxx> wrote:
Adam FUCHS <atman@xxxxxxxxxxxx> writes:
> Thanks Korry, how would I check the search_path that is being used by the
> FDW user?

postgres_fdw always does "SET search_path = pg_catalog" when opening the
connection.  Probably this needs to be documented, since it's user-visible
if you try to attach a foreign table to a remote view.

Anyway the short answer is that you should fully schema-qualify references
in functions used by such a view, or else attach "SET search_path" options
to the functions.

                        regards, tom lane



--

Adam Fuchs

Database Administrator

UC Berkeley - Information Services & Technology

2195 Hearst Ave., Berkeley, CA 94120

510-664-4354


[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux