Обсуждение: Commit gets locked until vacuum is performed

Поиск
Список
Период
Сортировка

Commit gets locked until vacuum is performed

От
Xavier Santana
Дата:
Hi all,

I'm using JDBC driver 8.1-413.jdbc3 to access a PostgreSQL 8.1.3
database on windows.
Sometimes, when my application performs a commit of a transaction with
maybe 100 or 200 inserts, the operation gets locked, with no error
message or exception.
When that happens, if I perform a vacuum over the database (for example
from pgAdmin), the operation unlocks and the commit finishes correctly.

Any idea of what can be happening?

Thanks in advance.

Xavier


Re: Commit gets locked until vacuum is performed

От
"Kevin Grittner"
Дата:
Xavier Santana <xsantana@slash-solutions.com> wrote:

> I'm using JDBC driver 8.1-413.jdbc3 to access a PostgreSQL 8.1.3
> database on windows.

Version 8.1.anything is not supported on Windows:

http://wiki.postgresql.org/wiki/PostgreSQL_Release_Support_Policy

8.1.3 is a very old version of that major release with many known bugs
fixed in later minor releases.

http://www.postgresql.org/support/versioning
http://www.postgresql.org/docs/8.1/static/release.html

The recommended JDBC driver for that PostgreSQL version is 8.4-701:

http://jdbc.postgresql.org/download.html#current

Given what you're running, it's amazing that is your biggest problem.
Please update as soon as possible, at least to 8.2.something-recent.

-Kevin

Re: Commit gets locked until vacuum is performed

От
Tom Lane
Дата:
Xavier Santana <xsantana@slash-solutions.com> writes:
> I'm using JDBC driver 8.1-413.jdbc3 to access a PostgreSQL 8.1.3
> database on windows.
> Sometimes, when my application performs a commit of a transaction with
> maybe 100 or 200 inserts, the operation gets locked, with no error
> message or exception.
> When that happens, if I perform a vacuum over the database (for example
> from pgAdmin), the operation unlocks and the commit finishes correctly.

> Any idea of what can be happening?

Hard to say, but PG 8.1.3 on Windows is not a good place to be.  The
oldest branch that is considered supported on Windows is 8.2.x, and
even there you want 8.2.pretty-recent.  I'd try an update and see if the
problem goes away.  If you can still reproduce it on the latest version
of a supported branch, please file a bug report.

            regards, tom lane