Adam Haberlach adam
Sat Jun 11 00:52:41 PDT 2005

I saw this behavior as well, and from the process listing it appeared that
slony uses a COPY command to do the initial transfer.  I believe that
generally creates a lock, or otherwise should.

Once the copy is completed, then the system will start playing the
transactions that have logged during the interim.
 

-----Original Message-----
From: slony1-general-bounces at gborg.postgresql.org
[mailto:slony1-general-bounces at gborg.postgresql.org] On Behalf Of Marc Munro
Sent: Friday, June 10, 2005 3:26 PM
To: slony1-general at gborg.postgresql.org
Subject: [Slony1-general] Select being blocked during sync to slave.

I am using slony and am synchronising a slave for the first time.  In the
hope of seeing some progress on the slave I attempt to perform a select
count(*) on one of the tables.

The select is blocked by an AccessExclusiveLock.  I am wondering what slony
is doing at this point and why it needs to take out such a serious lock.

Any and all explanations will be welcomed.


ps shows this:

postgres  5987  0.0  0.4 19180 4188 ?        S    15:16   0:00 postgres:
postgres testdb 192.168.1.111(33598) SELECT waiting

A query of blocking locks shows this:

          object           | trans | pid  |        mode         | blocker 
---------------------------+-------+------+---------------------+-------
---------------------------+-------+------+---------------------+--
 testdb.campaign_cost_pk   |       | 5754 | AccessShareLock     |         
 testdb.csn_log_pk         |       | 5754 | RowExclusiveLock    |         
 testdb.pg_trigger         |       | 5754 | AccessShareLock     |         
 testdb.pg_trigger         |       | 5754 | RowExclusiveLock    |         
 testdb.sl_subscribe       |       | 5754 | AccessShareLock     |         
 testdb.csn_log_idx2       |       | 5754 | RowExclusiveLock    |         
 testdb.campaign           |       | 5754 | AccessShareLock     |         
 testdb.campaign           |       | 5754 | RowExclusiveLock    |         
 testdb.campaign           |       | 5754 | AccessExclusiveLock |         
 testdb.pg_rewrite         |       | 5754 | AccessShareLock     |         
 testdb.pg_rewrite         |       | 5754 | RowExclusiveLock    |         
 testdb.computer_sn_log    |       | 5754 | AccessShareLock     |         
 testdb.computer_sn_log    |       | 5754 | RowExclusiveLock    |         
 testdb.computer_sn_log    |       | 5754 | AccessExclusiveLock |         
 testdb.address_type_pk    |       | 5754 | AccessShareLock     |         
 testdb.campaign_pk        |       | 5754 | AccessShareLock     |         
 testdb.sl_log_1           |       | 5754 | AccessShareLock     |         
 testdb.sl_log_1           |       | 5754 | RowExclusiveLock    |         
 testdb.csn_cookie_idx1    |       | 5754 | AccessShareLock     |         
 testdb.pg_index           |       | 5754 | AccessShareLock     |         
 testdb.pg_index           |       | 5754 | RowShareLock        |         
 testdb.csn_log_idx3       |       | 5754 | RowExclusiveLock    |         
 testdb.csn_cookie_pk      |       | 5754 | AccessShareLock     |         
 testdb.sl_log_2           |       | 5754 | AccessShareLock     |         
 testdb.sl_log_2           |       | 5754 | RowExclusiveLock    |         
 testdb.sl_set             |       | 5754 | AccessShareLock     |         
 testdb.sl_set             |       | 5754 | RowShareLock        |         
 testdb.campaign_cost      |       | 5754 | AccessShareLock     |         
 testdb.campaign_cost      |       | 5754 | RowExclusiveLock    |         
 testdb.campaign_cost      |       | 5754 | AccessExclusiveLock |         
 testdb.sl_table           |       | 5754 | AccessShareLock     |         
 testdb.sl_table           |       | 5754 | RowShareLock        |         
 testdb.sl_table           |       | 5754 | RowExclusiveLock    |         
                           |  9182 | 5754 | ExclusiveLock       |         
 testdb.computer_sn_cookie |       | 5754 | AccessShareLock     |         
 testdb.computer_sn_cookie |       | 5754 | RowExclusiveLock    |         
 testdb.computer_sn_cookie |       | 5754 | AccessExclusiveLock |         
 testdb.pg_attribute       |       | 5754 | AccessShareLock     |         
 testdb.sl_config_lock     |       | 5754 | AccessExclusiveLock |         
 testdb.sl_trigger         |       | 5754 | AccessShareLock     |         
 testdb.csn_pk             |       | 5754 | AccessShareLock     |         
 testdb.pg_class           |       | 5754 | AccessShareLock     |         
 testdb.pg_class           |       | 5754 | RowShareLock        |         
 testdb.pg_class           |       | 5754 | RowExclusiveLock    |         
 testdb.address_type       |       | 5754 | AccessShareLock     |         
 testdb.address_type       |       | 5754 | RowExclusiveLock    |         
 testdb.address_type       |       | 5754 | AccessExclusiveLock |         
 testdb.pg_namespace       |       | 5754 | AccessShareLock     |         
 testdb.pg_namespace       |       | 5754 | RowShareLock        |         
 testdb.csn_log_idx1       |       | 5754 | RowExclusiveLock    |         
 testdb.computer_sn        |       | 5754 | AccessShareLock     |         
 testdb.computer_sn        |       | 5754 | RowExclusiveLock    |         
 testdb.computer_sn        |       | 5754 | AccessExclusiveLock |         
 testdb.address_type       |       | 5987 | AccessShareLock     |    5754
                           |  9422 | 5987 | ExclusiveLock       |    5754
(55 rows)

All responses will be welcomed.

__
Marc




More information about the Slony1-general mailing list