| From: | Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com> |
|---|---|
| To: | PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org> |
| Subject: | Re: wrong plpgsql's line counting 9.1 |
| Date: | 2011-08-19 10:31:10 |
| Message-ID: | CAFj8pRAy=XukBaWFF832di+57qdxtKFXbk4Hk2XieBiB+=smEA@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
Hello
I am sorry, it's noise
regards
Pavel
2011/8/19 Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>:
> Hello
>
> I found a bug in plpgsql parser.
>
>
> create table t(a int, b int);
>
> postgres=# \sf fx
> CREATE OR REPLACE FUNCTION public.fx()
> RETURNS void
> LANGUAGE plpgsql
> AS $function$
> declare r record;
> begin
> r := (10,20)::t;
> if true then
> raise notice '% %', r.c, r.b;
> end if;
> end;
> $function$
>
> postgres=# select fx();
> ERROR: record "r" has no field "c"
> CONTEXT: SQL statement "SELECT r.c"
> PL/pgSQL function "fx" line 4 during function entry
>
> it reports a bug on line 4, but it should to be 6
>
> postgres=# \sf+ fx
> CREATE OR REPLACE FUNCTION public.fx()
> RETURNS void
> LANGUAGE plpgsql
> 1 AS $function$
> 2 declare r record;
> 3 begin
> 4 r := (10,20)::t;
> 5 if true then
> 6 raise notice '% %', r.c, r.b;
> 7 end if;
> 8 end;
> 9 $function$
>
> Regards
>
> Pavel Stehule
>
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Gokulakannan Somasundaram | 2011-08-19 13:19:34 | Re: the big picture for index-only scans |
| Previous Message | Pavel Stehule | 2011-08-19 10:21:53 | wrong plpgsql's line counting 9.1 |