Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit7b14bcc

Browse files
committed
Fix lock level used for partition when detaching it
For probably bogus reasons, we acquire only AccessShareLock on thepartition when we try to detach it from its parent partitioned table.This can cause ugly things to happen if another transaction is doingany sort of DDL to the partition concurrently.Upgrade that lock to ShareUpdateExclusiveLock, which per discussionseems to be the minimum needed.Reported by Robert Haas.Discussion:https://postgr.es/m/CA+TgmoYruJQ+2qnFLtF1xQtr71pdwgfxy3Ziy-TxV28M6pEmyA@mail.gmail.com
1 parent42bdf85 commit7b14bcc

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

‎src/backend/commands/tablecmds.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14588,7 +14588,7 @@ ATExecDetachPartition(Relation rel, RangeVar *name)
1458814588
if (OidIsValid(defaultPartOid))
1458914589
LockRelationOid(defaultPartOid,AccessExclusiveLock);
1459014590

14591-
partRel=heap_openrv(name,AccessShareLock);
14591+
partRel=heap_openrv(name,ShareUpdateExclusiveLock);
1459214592

1459314593
/* All inheritance related checks are performed within the function */
1459414594
RemoveInheritance(partRel,rel);

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp