Search Postgresql Archives

Random Deadlock on DROP CONSTRAINT

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



All,

I seem to have a weird one here.

I'm using Hibernate on my application to generate my DDL for postGres
whenever it starts up, so when doing automated testing, the database
tends to get tables and constrains dropped quite regularly, so as to
have stable test data to work from in each test.

Only occasionally, I get a deadlock on the command:
    alter table Doctor
        drop constraint FK7A547D3FE8829FE8

Which means I have to restart my unit tests all over again.

Looking into the postgres statistics tables I can see that:

The statement:
"alter table Doctor drop constraint FK7A547D3FE8829FE8" Is 'waiting' to be true.

(from pg_stat_activity)

Delving deeper, in pg_locks, there are several records for the database,

The ones that jump out at me are:
On table: "doctor" there is a "AccessExclusiveLock" for "alter table
Doctor drop constraint", which has not been granted.

Everything else is 'AccessShareLock', or Exclusive locks that don't
seem to match up to a table.

(Going through locking tables in a new one to me, so bare with me on this one)

This is all on my local machine, so there is noone else accessing the
database at the time I'm writing these tests.

Any help on this would be greatly appreciated.

Mark


-- 
E: mark.mandel@xxxxxxxxx
W: www.compoundtheory.com

-- 
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux