I have some ECPG based error recovery functions
that can issue explicit BEGIN and ROLLBACK or COMMIT
on a blind basis under some conditions. That is, BEGIN
can sometimes be issued while already in a transaction,
and ROLLBACK or COMMIT can sometimes be issued
while not in a transaction.
It seems that I sometimes get the resulting
ECPG_NOTICE_[IN/NO]_TRANSACTION
as the sqlca.sqlcode report in my *next* INSERT/
UPDATE/ SELECT/ FETCH, rather than in sqlca.sqlcode
for the BEGIN/ ROLLBACK/COMMIT command?
Is this possible?
I am not doing anything on an asynchronous basis, at least
not on purpose. If it *is* possible, how do I tell when the
sqlca.sqlcode response for the INSERT/ UPDATE/SELECT/
FETCH command has arrived? What should I do with the
NOTICE (apparently coming from the earlier BEGIN/
ROLLBACK/COMMIT) other than log it?
[PostgreSQL 7.2.1 and ECPG 2.9.0, on RedHat 7.2, using
Unix Domain connections exclusively]