Question about running "Vacuum" through JDBC
Greetings,
I tried to "Vacuum table" through JDBC. I got the following errors:
ERROR: VACUUM cannot run inside a transaction block
Does it mean I should only run vacuum through the command line such as
"psql> vacuum TableName "?
Thanks a lot,
Emi
Ying Lu wrote:
Greetings,
I tried to "Vacuum table" through JDBC. I got the following errors:
ERROR: VACUUM cannot run inside a transaction block
Does it mean I should only run vacuum through the command line such as
"psql> vacuum TableName "?
Nope, it means exactly what the error says. You are trying to run vacum
inside a transaction, which can't be done. JDBC is likely opening a
transaction for you automatically. Stop it from doing this, and you
should be able to vacuum.
--
Brad Nicholson 416-673-4106
Database Administrator, Afilias Canada Corp.
On 06/05/2005 16:22 Ying Lu wrote:
Greetings,
I tried to "Vacuum table" through JDBC. I got the following errors:
ERROR: VACUUM cannot run inside a transaction block
Does it mean I should only run vacuum through the command line such as
"psql> vacuum TableName "?
You don't say what version of the DB and JDBC driver you're using but I
have an app which does vavuums via JDBC no problem. Just make sure that
you've setAutoCommit(true).
--
Paul Thomas
+------------------------------+-------------------------------------------+
| Thomas Micro Systems Limited | Software Solutions for Business |
| Computer Consultants | http://www.thomas-micro-systems-ltd.co.uk |
+------------------------------+-------------------------------------------+