Thread: Incorrect comment in tablecmds.c

Incorrect comment in tablecmds.c

From
Etsuro Fujita
Date:
I don't think that the lock level mentioned in the following comment in
MergeAttributes() in tablecmds.c is right, since that that function has
opened the relation with ShareUpdateExclusiveLock, not with
AccessShareLock.  Patch attached.

1749         /*
1750          * Close the parent rel, but keep our AccessShareLock on it
until xact
1751          * commit.  That will prevent someone else from deleting or
ALTERing
1752          * the parent before the child is committed.
1753          */
1754         heap_close(relation, NoLock);

Thanks,

Best regards,
Etsuro Fujita

Attachment

Re: Incorrect comment in tablecmds.c

From
Bruce Momjian
Date:
On Thu, Oct 23, 2014 at 06:29:07PM +0900, Etsuro Fujita wrote:
> I don't think that the lock level mentioned in the following comment in
> MergeAttributes() in tablecmds.c is right, since that that function has
> opened the relation with ShareUpdateExclusiveLock, not with
> AccessShareLock.  Patch attached.
> 
> 1749         /*
> 1750          * Close the parent rel, but keep our AccessShareLock on it
> until xact
> 1751          * commit.  That will prevent someone else from deleting or
> ALTERing
> 1752          * the parent before the child is committed.
> 1753          */
> 1754         heap_close(relation, NoLock);

Agreed, patch applied.  Thanks.

--  Bruce Momjian  <bruce@momjian.us>        http://momjian.us EnterpriseDB
http://enterprisedb.com
 + Everyone has their own god. +



Re: Incorrect comment in tablecmds.c

From
Etsuro Fujita
Date:
On 2015/03/20 21:31, Bruce Momjian wrote:
> On Thu, Oct 23, 2014 at 06:29:07PM +0900, Etsuro Fujita wrote:
>> I don't think that the lock level mentioned in the following comment in
>> MergeAttributes() in tablecmds.c is right, since that that function has
>> opened the relation with ShareUpdateExclusiveLock, not with
>> AccessShareLock.  Patch attached.
>>
>> 1749         /*
>> 1750          * Close the parent rel, but keep our AccessShareLock on it
>> until xact
>> 1751          * commit.  That will prevent someone else from deleting or
>> ALTERing
>> 1752          * the parent before the child is committed.
>> 1753          */
>> 1754         heap_close(relation, NoLock);
>
> Agreed, patch applied.  Thanks.

Thanks for picking this up!

Best regards,
Etsuro Fujita