Fix lock level used for partition when detaching it

Alvaro Herrera <alvherre@alvh.no-ip.org>

Commit: 1c142612c846cd01ed0615041e09e6fab7d44571
Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
Date: 2018-12-20T19:42:13Z
Releases: 10.7
Fix lock level used for partition when detaching it

For probably bogus reasons, we acquire only AccessShareLock on the
partition when we try to detach it from its parent partitioned table.
This can cause ugly things to happen if another transaction is doing
any sort of DDL to the partition concurrently.

Upgrade that lock to ShareUpdateExclusiveLock, which per discussion
seems to be the minimum needed.

Reported by Robert Haas.

Discussion: https://postgr.es/m/CA+TgmoYruJQ+2qnFLtF1xQtr71pdwgfxy3Ziy-TxV28M6pEmyA@mail.gmail.com

Files

PathChange+/−
src/backend/commands/tablecmds.c modified +1 −1

Discussion