Risko Peter <risko.peter@mhc.hu> writes:
> It seems we've found a bug in PostgreSQL handling of cursored queries.
> I assume that it's legal to do 'fetch backward all in xxx' and then
> 'fetch 1 in xxx' afterwards.
Backwards scan doesn't work right for any but the simplest sorts of
queries (no joins, no grouping or aggregation, probably some other
issues). It'd be nice to fix it, but it's not very high on anyone's
priority list. There are workarounds available, one of the simplest
being to specify ORDER BY --- the result of a sort step *can* be scanned
backwards, IIRC. Use EXPLAIN to make sure your query has a Sort at
the top level.
regards, tom lane