Re: Bug in PL/PgSQL "SELECT .. INTO" statement parser - Mailing list pgsql-bugs

From Oleg Serov
Subject Re: Bug in PL/PgSQL "SELECT .. INTO" statement parser
Date
Msg-id cec7c6df0901210357v4d0053a0sc3d14c9553444790@mail.gmail.com
Whole thread Raw
Responses Re: Bug in PL/PgSQL "SELECT .. INTO" statement parser
List pgsql-bugs
Sorry, but is not important, i forgot to remove original table name
"chunk_ad", but is not affected  to the bug..

2009/1/21 Oleg Serov <serovov@gmail.com>:
> Here is an example:
>
> CREATE TABLE test2 (
>        id BIGINT,
>        chunk_id BIGINT
> );
> CREATE TABLE test1 (
>        id BIGINT
> );
>
> CREATE OR REPLACE FUNCTION "bug" () RETURNS pg_catalog.void AS
> $body$
> DECLARE
>    row_test1 test1%rowtype;
>    row_test2 test2%rowtype;
> BEGIN
>    SELECT test1, chunk_ad
>        FROM test1 JOIN test2 ON(chunk.id =3D test2.chunk_id)
>        LIMIT 1
>        INTO row_test1, row_test2;
>
> END;
> $body$
> LANGUAGE 'plpgsql' VOLATILE CALLED ON NULL INPUT SECURITY DEFINER;
>
> Will throw error:
> ERROR:  LIMIT #,# syntax is not supported
> HINT:  Use separate LIMIT and OFFSET clauses.
> QUERY:  SELECT test1, chunk_ad FROM test1 JOIN test2 ON(chunk.id =3D
> test2.chunk_id) LIMIT 1, 0,  $1
> CONTEXT:  SQL statement in PL/PgSQL function "bug" near line 8
>
> ********** =EF=DB=C9=C2=CB=C1 **********
>
> ERROR: LIMIT #,# syntax is not supported
> SQL state: 42601
> =F0=CF=C4=D3=CB=C1=DA=CB=C1:Use separate LIMIT and OFFSET clauses.
> =EB=CF=CE=D4=C5=CB=D3=D4:SQL statement in PL/PgSQL function "bug" near li=
ne 8
>

pgsql-bugs by date:

Previous
From: "Marshall, Steve"
Date:
Subject: Re: pg_listener entries deleted under heavy NOTIFY load only on Windows
Next
From: Oleg Serov
Date:
Subject: Bug in PL/PgSQL "SELECT .. INTO" statement parser