Re: pgsql/src/backend/nodes (copyfuncs.c outfuncs.c print.c) - Mailing list pgsql-committers

From Tom Lane
Subject Re: pgsql/src/backend/nodes (copyfuncs.c outfuncs.c print.c)
Date
Msg-id 27892.972617779@sss.pgh.pa.us
Whole thread Raw
In response to pgsql/src/backend/nodes (copyfuncs.c outfuncs.c print.c)  (Tom Lane <tgl@postgresql.org>)
List pgsql-committers
Hiroshi Inoue <Inoue@tpf.co.jp> writes:
> How would be the behavior of the following command sequence ?

> begin;
> declare myc cursor for select * from t1 limit 1;
> fetch in myc;
> fetch in myc;

> Could the last fetch return a row ?

As the code now stands, the second fetch would return nothing.
I think this is clearly what any reasonable person would expect
given the LIMIT 1 clause.

LIMIT ALL is a different story, because there's no semantic difference
between writing LIMIT ALL and writing no limit clause at all.  We have
the option to create a distinction for planning purposes, however.
Question is do we need one?

            regards, tom lane

pgsql-committers by date:

Previous
From: Hiroshi Inoue
Date:
Subject: Re: pgsql/src/backend/nodes (copyfuncs.c outfuncs.c print.c)
Next
From: Tom Lane
Date:
Subject: pgsql/src/test/regress/sql (inet.sql)