I haven't seen any feedback on this report, but FYI... I worked around
this problem by rewriting my code to use a dynamic prepared statement
instead, e.g.

OLD:

EXEC SQL MOVE FORWARD :RowMove IN Sniffer;

NEW:

const char mover[] = "MOVE FORWARD ? IN Sniffer";
[...]
EXEC SQL PREPARE MoverSQL FROM :mover;
[...]
EXEC SQL EXECUTE MoverSQL USING :RowMove;
[...]
EXEC SQL DEALLOCATE PREPARE MoverSQL;

Assuming the new restriction on the original "MOVE FORWARD" is
intentional, it would be nice to see a warning that code changes are
required get into the documentation.

Thanks,
Scott

-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Scott Bailey
Sent: Monday, October 29, 2007 11:45 AM
To: pgsql-bugs@postgresql.org
Subject: [BUGS] BUG #3706: ecpg regression: "MOVE FORWARD"


The following bug has been logged online:

Bug reference:      3706
Logged by:          Scott Bailey
Email address:      [EMAIL PROTECTED]
PostgreSQL version: 8.3beta1
Operating system:   Tru64
Description:        ecpg regression: "MOVE FORWARD"
Details: 

The following statement:

exec sql MOVE FORWARD :RowMove IN Sniffer;

which worked correctly in 8.2.4 and previous versions, now fails to
compile
in 8.3beta1; I receive the following error message:

ERROR: fetch/move count must not be a variable.

This sucks and I couldn't find anything about it in the TODO list or
Release
Notes. Is this unintentional, or should I be recoding my program to use
a
loop to move forward 1 row at a time?

---------------------------(end of broadcast)---------------------------
TIP 9: In versions below 8.0, the planner will ignore your desire to
       choose an index scan if your joining column's datatypes do not
       match

Reply via email to