CLUSTER locking

Started by Christopher Kings-Lynneover 21 years ago4 messages
#1Christopher Kings-Lynne
chriskl@familyhealth.com.au

Hi,

Is there a way the CLUSTER command can be changed to not take an
exclusive lock on the table, and instead allow reads on the old table
and index, just preventing writes?

Chris

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Christopher Kings-Lynne (#1)
Re: CLUSTER locking

Christopher Kings-Lynne <chriskl@familyhealth.com.au> writes:

Is there a way the CLUSTER command can be changed to not take an
exclusive lock on the table,

No. Committing the relfilenode swap would cut the knees off of any
active scan on the old file.

regards, tom lane

#3Christopher Kings-Lynne
chriskl@familyhealth.com.au
In reply to: Tom Lane (#2)
Re: CLUSTER locking

No. Committing the relfilenode swap would cut the knees off of any
active scan on the old file.

Could it upgrade its lock to exclusive just before doing the swap?

Chris

#4Tom Lane
tgl@sss.pgh.pa.us
In reply to: Christopher Kings-Lynne (#3)
Re: CLUSTER locking

Christopher Kings-Lynne <chriskl@familyhealth.com.au> writes:

No. Committing the relfilenode swap would cut the knees off of any
active scan on the old file.

Could it upgrade its lock to exclusive just before doing the swap?

That is a recipe for deadlock failures.

regards, tom lane