pg.ddx.io  pgsql-committers@postgresql.org mailing list archive  
help / color / mirror / Atom feed
pgsql: AccessExclusiveLock new relations just after assigning the OID.
6+ messages / 1 participants
[nested] [flat]

* pgsql: AccessExclusiveLock new relations just after assigning the OID.
@ 2024-06-28 02:26  Noah Misch <noah@leadboat.com>
  0 siblings, 0 replies; 6+ messages in thread

From: Noah Misch @ 2024-06-28 02:26 UTC (permalink / raw)
  To: pgsql-committers@lists.postgresql.org

AccessExclusiveLock new relations just after assigning the OID.

This has no user-visible, important consequences, since other sessions'
catalog scans can't find the relation until we commit.  However, this
unblocks introducing a rule about locks required to heap_update() a
pg_class row.  CREATE TABLE has been acquiring this lock eventually, but
it can heap_update() pg_class.relchecks earlier.  create_toast_table()
has been acquiring only ShareLock.  Back-patch to v12 (all supported
versions), the plan for the commit relying on the new rule.

Reviewed (in an earlier version) by Robert Haas.

Discussion: https://postgr.es/m/20240611024525.9f.nmisch@google.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/5b823b179e5e8ab32f140658698ca08f8c83f06e

Modified Files
--------------
src/backend/catalog/heap.c | 7 +++++++
1 file changed, 7 insertions(+)



^ permalink  raw  reply  [nested|flat] 6+ messages in thread

* pgsql: AccessExclusiveLock new relations just after assigning the OID.
@ 2024-06-28 02:26  Noah Misch <noah@leadboat.com>
  0 siblings, 0 replies; 6+ messages in thread

From: Noah Misch @ 2024-06-28 02:26 UTC (permalink / raw)
  To: pgsql-committers@lists.postgresql.org

AccessExclusiveLock new relations just after assigning the OID.

This has no user-visible, important consequences, since other sessions'
catalog scans can't find the relation until we commit.  However, this
unblocks introducing a rule about locks required to heap_update() a
pg_class row.  CREATE TABLE has been acquiring this lock eventually, but
it can heap_update() pg_class.relchecks earlier.  create_toast_table()
has been acquiring only ShareLock.  Back-patch to v12 (all supported
versions), the plan for the commit relying on the new rule.

Reviewed (in an earlier version) by Robert Haas.

Discussion: https://postgr.es/m/20240611024525.9f.nmisch@google.com

Branch
------
REL_15_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/0f2835ea6fc140869b062f61c62a87acf3295153

Modified Files
--------------
src/backend/catalog/heap.c | 7 +++++++
1 file changed, 7 insertions(+)



^ permalink  raw  reply  [nested|flat] 6+ messages in thread

* pgsql: AccessExclusiveLock new relations just after assigning the OID.
@ 2024-06-28 02:26  Noah Misch <noah@leadboat.com>
  0 siblings, 0 replies; 6+ messages in thread

From: Noah Misch @ 2024-06-28 02:26 UTC (permalink / raw)
  To: pgsql-committers@lists.postgresql.org

AccessExclusiveLock new relations just after assigning the OID.

This has no user-visible, important consequences, since other sessions'
catalog scans can't find the relation until we commit.  However, this
unblocks introducing a rule about locks required to heap_update() a
pg_class row.  CREATE TABLE has been acquiring this lock eventually, but
it can heap_update() pg_class.relchecks earlier.  create_toast_table()
has been acquiring only ShareLock.  Back-patch to v12 (all supported
versions), the plan for the commit relying on the new rule.

Reviewed (in an earlier version) by Robert Haas.

Discussion: https://postgr.es/m/20240611024525.9f.nmisch@google.com

Branch
------
REL_16_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/fc8c25806e84c38f3920fd3507a389eac34d62a5

Modified Files
--------------
src/backend/catalog/heap.c | 7 +++++++
1 file changed, 7 insertions(+)



^ permalink  raw  reply  [nested|flat] 6+ messages in thread

* pgsql: AccessExclusiveLock new relations just after assigning the OID.
@ 2024-06-28 02:26  Noah Misch <noah@leadboat.com>
  0 siblings, 0 replies; 6+ messages in thread

From: Noah Misch @ 2024-06-28 02:26 UTC (permalink / raw)
  To: pgsql-committers@lists.postgresql.org

AccessExclusiveLock new relations just after assigning the OID.

This has no user-visible, important consequences, since other sessions'
catalog scans can't find the relation until we commit.  However, this
unblocks introducing a rule about locks required to heap_update() a
pg_class row.  CREATE TABLE has been acquiring this lock eventually, but
it can heap_update() pg_class.relchecks earlier.  create_toast_table()
has been acquiring only ShareLock.  Back-patch to v12 (all supported
versions), the plan for the commit relying on the new rule.

Reviewed (in an earlier version) by Robert Haas.

Discussion: https://postgr.es/m/20240611024525.9f.nmisch@google.com

Branch
------
REL_13_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/b899cde0b86acfeb6310489ab6c478059075a8f4

Modified Files
--------------
src/backend/catalog/heap.c | 7 +++++++
1 file changed, 7 insertions(+)



^ permalink  raw  reply  [nested|flat] 6+ messages in thread

* pgsql: AccessExclusiveLock new relations just after assigning the OID.
@ 2024-06-28 02:26  Noah Misch <noah@leadboat.com>
  0 siblings, 0 replies; 6+ messages in thread

From: Noah Misch @ 2024-06-28 02:26 UTC (permalink / raw)
  To: pgsql-committers@lists.postgresql.org

AccessExclusiveLock new relations just after assigning the OID.

This has no user-visible, important consequences, since other sessions'
catalog scans can't find the relation until we commit.  However, this
unblocks introducing a rule about locks required to heap_update() a
pg_class row.  CREATE TABLE has been acquiring this lock eventually, but
it can heap_update() pg_class.relchecks earlier.  create_toast_table()
has been acquiring only ShareLock.  Back-patch to v12 (all supported
versions), the plan for the commit relying on the new rule.

Reviewed (in an earlier version) by Robert Haas.

Discussion: https://postgr.es/m/20240611024525.9f.nmisch@google.com

Branch
------
REL_14_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/e038b7756df8a7487366d4e678c1e0d0d1ba5bbe

Modified Files
--------------
src/backend/catalog/heap.c | 7 +++++++
1 file changed, 7 insertions(+)



^ permalink  raw  reply  [nested|flat] 6+ messages in thread

* pgsql: AccessExclusiveLock new relations just after assigning the OID.
@ 2024-06-28 02:26  Noah Misch <noah@leadboat.com>
  0 siblings, 0 replies; 6+ messages in thread

From: Noah Misch @ 2024-06-28 02:26 UTC (permalink / raw)
  To: pgsql-committers@lists.postgresql.org

AccessExclusiveLock new relations just after assigning the OID.

This has no user-visible, important consequences, since other sessions'
catalog scans can't find the relation until we commit.  However, this
unblocks introducing a rule about locks required to heap_update() a
pg_class row.  CREATE TABLE has been acquiring this lock eventually, but
it can heap_update() pg_class.relchecks earlier.  create_toast_table()
has been acquiring only ShareLock.  Back-patch to v12 (all supported
versions), the plan for the commit relying on the new rule.

Reviewed (in an earlier version) by Robert Haas.

Discussion: https://postgr.es/m/20240611024525.9f.nmisch@google.com

Branch
------
REL_12_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/7af775bbae5724272f3b72766df977f07fa5455a

Modified Files
--------------
src/backend/catalog/heap.c | 7 +++++++
1 file changed, 7 insertions(+)



^ permalink  raw  reply  [nested|flat] 6+ messages in thread


end of thread, other threads:[~2024-06-28 02:26 UTC | newest]

Thread overview: 6+ messages (download: mbox mbox.gz follow: Atom feed)
-- links below jump to the message on this page --
2024-06-28 02:26 pgsql: AccessExclusiveLock new relations just after assigning the OID. Noah Misch <noah@leadboat.com>
2024-06-28 02:26 pgsql: AccessExclusiveLock new relations just after assigning the OID. Noah Misch <noah@leadboat.com>
2024-06-28 02:26 pgsql: AccessExclusiveLock new relations just after assigning the OID. Noah Misch <noah@leadboat.com>
2024-06-28 02:26 pgsql: AccessExclusiveLock new relations just after assigning the OID. Noah Misch <noah@leadboat.com>
2024-06-28 02:26 pgsql: AccessExclusiveLock new relations just after assigning the OID. Noah Misch <noah@leadboat.com>
2024-06-28 02:26 pgsql: AccessExclusiveLock new relations just after assigning the OID. Noah Misch <noah@leadboat.com>

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox