BUG #3628: Wrong schema picked - Mailing list pgsql-bugs

From Pedro Gimeno
Subject BUG #3628: Wrong schema picked
Date
Msg-id 200709232249.l8NMnuSS057013@wwwmaster.postgresql.org
Whole thread Raw
Responses Re: BUG #3628: Wrong schema picked
List pgsql-bugs
The following bug has been logged online:

Bug reference:      3628
Logged by:          Pedro Gimeno
Email address:      pgsql-001@personal.formauri.es
PostgreSQL version: 8.2.4
Operating system:   Linux (Debian stable + backports)
Description:        Wrong schema picked
Details:

When a function has a SQL statement to execute that has an unqualified
table, that SQL statement doesn't always pick the table from a schema in the
search_path. The following script is an example:

-- begin script
create database test2;
\c test2
create language 'plpgsql';
create schema schema1;
create schema schema2;
create table schema1.table1 (column1 varchar(10));
create table schema2.table1 (column1 varchar(10));
create function public.f1() returns void as $$
begin
  insert into table1 values (current_schema());
end;
$$ language plpgsql;
set search_path=schema1,public;
select f1();
set search_path=schema2,public;
select f1();
select * from schema1.table1;
select * from schema2.table1;
-- end script

The output of the last couple of SELECT statements is:

 column1
---------
 schema1
 schema2
(2 rows)

 column1
---------
(0 rows)

while the expected result would be:

 column1
---------
 schema1
(1 row)

 column1
---------
 schema2
(1 row)

-- Pedro Gimeno

pgsql-bugs by date:

Previous
From: "Pedro Gimeno"
Date:
Subject: BUG #3627: Triple FK with ON DELETE SET NULL makes DELETE fail
Next
From: "zhuge"
Date:
Subject: BUG #3629: Memory Allocation Error