Thread: BUG #11822: ECPG Commit or Rollback error
The following bug has been logged on the website: Bug reference: 11822 Logged by: jls1983 Email address: jlsanz1983@gmail.com PostgreSQL version: Unsupported/Unknown Operating system: CentOs 6.2 Description: I use a 8.2 version of postgres, and get and solve the following mistake in a pgc program: Hi when a cursor is open and a fetch is in progres if then uses a commit or rollback instruction before close the cursor. The cursor get this error: ==== sqlca ==== sqlcode: -400 sqlerrm.sqlerrml: 44 sqlerrm.sqlerrmc: cursor "bolas" does not exist on line 141 sqlerrd: 0 0 0 0 0 0 sqlwarn: 0 0 0 0 0 0 0 0 sqlstate: 34000 =============== If the commit goes after close the cursor then the execution doesn't return any error. Sorry about my english. Best regards.
jlsanz1983@gmail.com writes: > Hi when a cursor is open and a fetch is in progres if then uses a commit or > rollback instruction before close the cursor. > The cursor get this error: > sqlerrm.sqlerrmc: cursor "bolas" does not exist on line 141 > If the commit goes after close the cursor then the execution doesn't return > any error. That sounds like expected behavior to me: ordinary cursors are automatically closed at transaction end. If you really need this to work, you can declare the cursor WITH HOLD, but that entails a performance penalty. regards, tom lane