Hello,
I found another slight behavior change with the Linux
client ODBC library between 7.0.3 and the 7.1 beta 3
release. We are running under Redhat 6.0.
We have set the ODBC driver in autocommit off mode. With
the 7.0.3 driver, a BEGIN was automatically issued
before the driver encountered a INSERT/UPDATE/DELETE. With
the 7.1 beta 3 ODBC driver, it now also issues a BEGIN when it
encounters a SELECT.
Is this the expected behavior under 7.1?
Below are snipets from the psqlodbc log to show the change.
I actually found the problem because our code does a number
of queries against the database, and then issues a
VACUUM ANALYZE. This stopped working with the 7.1 beta 3.
Thanks,
Steve
<lines removed>
conn=136030528, query='COMMIT'
conn=136030528, query='BEGIN'
conn=136030528, query='select count(*) from Objects' [ fetched 1 rows ]
conn=136030528, query='select count(*) from ExchangeQueue ' [ fetched 1 rows ]
conn=136030528, query='vacuum analyze'
ERROR from backend during send_query: 'ERROR: VACUUM cannot run inside a BEGIN/END block'
And, here's the same code executed under 7.0.3:
conn=136031776, query='COMMIT'
conn=136031776, query='select count(*) from Objects' [ fetched 1 rows ]
conn=136031776, query='select count(*) from ExchangeQueue ' [ fetched 1 rows ]
conn=136031776, query='vacuum analyze'
** Steve Wranovsky (stevew@merge.com) ** Merge Technologies Inc
** Lead Software Engineer ** Milwaukee, WI - USA
** Merge is a supplier of connectivity ** Phone: +1 (414) 977-4133
** solutions for medical imaging applications ** http://www.merge.com