Re: [HACKERS] Restrict concurrent update/delete with UPDATE of partition key
Robert Haas <robertmhaas@gmail.com>
From: Robert Haas <robertmhaas@gmail.com>
To: Amit Kapila <amit.kapila16@gmail.com>
Cc: amul sul <sulamul@gmail.com>, Stephen Frost <sfrost@snowman.net>, PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2018-02-02T22:34:46Z
Lists: pgsql-hackers
On Fri, Jan 26, 2018 at 1:28 AM, Amit Kapila <amit.kapila16@gmail.com> wrote: > So, this means that in case of logical replication, it won't generate > the error this patch is trying to introduce. I think if we want to > handle this we need some changes in WAL and logical decoding as well. > > Robert, others, what do you think? I am not very comfortable leaving > this unaddressed, if we don't want to do anything about it, at least > we should document it. As I said on the other thread, I'm not sure how reasonable it really is to try to do anything about this. For both the issue you raised there, I think we'd need to introduce a new WAL record type that represents a delete from one table and an insert to another that should be considered as a single operation. I'm not keen on that idea, but you can make an argument that it's the Right Thing To Do. I would be more inclined, at least for v11, to just document that the delete+insert will be replayed separately on replicas. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company
Commits
-
Raise error when affecting tuple moved into different partition.
- f16241bef7cc 11.0 landed
-
Handle INSERT .. ON CONFLICT with partitioned tables
- 555ee77a9668 11.0 cited
-
Change the way we mark tuples as frozen.
- 37484ad2aace 9.4.0 cited