| From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> | 
|---|---|
| To: | Neil Conway <neilc(at)samurai(dot)com> | 
| Cc: | pgsql-hackers <pgsql-hackers(at)postgresql(dot)org> | 
| Subject: | Re: locks in CREATE TRIGGER, ADD FK | 
| Date: | 2005-03-23 04:06:18 | 
| Message-ID: | 1420.1111550778@sss.pgh.pa.us | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-hackers | 
Neil Conway <neilc(at)samurai(dot)com> writes:
  
>   	/*
> ! 	 * Grab an exclusive lock on the pk table, so that someone doesn't
> ! 	 * delete rows out from under us. (Although a lesser lock would do for
> ! 	 * that purpose, we'll need exclusive lock anyway to add triggers to
> ! 	 * the pk table; trying to start with a lesser lock will just create a
> ! 	 * risk of deadlock.)
>   	 */
> ! 	pkrel = heap_openrv(fkconstraint->pktable, AccessExclusiveLock);
  
>   	/*
>   	 * Validity and permissions checks
> --- 3829,3839 ----
>   	Oid			constrOid;
  
>   	/*
> ! 	 * Grab a lock on the pk table, so that someone doesn't delete
> ! 	 * rows out from under us; ShareRowExclusive should be good
> ! 	 * enough.
>   	 */
BTW, the above comment change is seriously inadequate, because it
removes the explanation of *why* that is the minimum required lock.
regards, tom lane
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Tom Lane | 2005-03-23 04:07:45 | Re: locks in CREATE TRIGGER, ADD FK | 
| Previous Message | Tom Lane | 2005-03-23 04:03:36 | Re: locks in CREATE TRIGGER, ADD FK |