BUG #2539: PL/PgSQL doesn't disallow COPY commands on compile, even though it disallows them.

Поиск
Список
Период
Сортировка
От David Fetter
Тема BUG #2539: PL/PgSQL doesn't disallow COPY commands on compile, even though it disallows them.
Дата
Msg-id 200607192246.k6JMkHXc053871@wwwmaster.postgresql.org
обсуждение исходный текст
Ответы Re: BUG #2539: PL/PgSQL doesn't disallow COPY commands on compile, even though it disallows them.  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-bugs
The following bug has been logged online:

Bug reference:      2539
Logged by:          David Fetter
Email address:      david@fetter.org
PostgreSQL version: All
Operating system:   Linux and OSX that I've tested
Description:        PL/PgSQL doesn't disallow COPY commands on compile, even
though it disallows them.
Details:

Here's a repro:

davidfetter=> SHOW check_function_bodies ;
 check_function_bodies
-----------------------
 on
(1 row)

davidfetter=> CREATE OR REPLACE FUNCTION bad_func()
RETURNS VOID
LANGUAGE plpgsql
AS $$
BEGIN
    CREATE TEMPORARY TABLE bad(i INTEGER) ON COMMIT DROP;
    INSERT INTO bad
    SELECT s.i FROM generate_series(1,10) AS s(i);
    COPY bad TO stdout;
END;
$$;
CREATE FUNCTION
davidfetter=> select bad_func();
ERROR:  SPI_execute_plan failed executing query "COPY bad TO stdout":
SPI_ERROR_COPY
CONTEXT:  PL/pgSQL function "bad_func" line 5 at SQL statement

В списке pgsql-bugs по дате отправления:

Предыдущее
От: Marius Žalinauskas
Дата:
Сообщение: Re: BUG #2535: Unicode on Windows: aogonek is not distinguished from agrave
Следующее
От: Tom Lane
Дата:
Сообщение: Re: BUG #2539: PL/PgSQL doesn't disallow COPY commands on compile, even though it disallows them.