On Thu, Jun 18, 2020 at 5:01 AM Tatsuo Ishii <is...@sraoss.co.jp> wrote: > > > Another point is that > > do we want some middleware involved in the solution? The main thing > > I was looking into at this stage is do we think that the current > > implementation proposed by the patch for 2PC is generic enough that we > > would be later able to integrate the solution for atomic visibility? > > My concern is, FDW+2PC without atomic visibility could lead to data > inconsistency among servers in some cases. If my understanding is > correct, FDW+2PC (without atomic visibility) cannot prevent data > inconsistency in the case below. >
You are right and we are not going to claim that after this feature is committed. This feature has independent use cases like it can allow parallel copy when foreign tables are involved once we have parallel copy and surely there will be more. I think it is clear that we need atomic visibility (some way to ensure global consistency) to avoid the data inconsistency problems you and I are worried about and we can do that as a separate patch but at this stage, it would be good if we can have some high-level design of that as well so that if we need some adjustments in the design/implementation of this patch then we can do it now. I think there is some discussion on the other threads (like [1]) about the kind of stuff we are worried about which I need to follow up on to study the impact. Having said that, I don't think that is a reason to stop reviewing or working on this patch. [1] - https://www.postgresql.org/message-id/flat/21BC916B-80A1-43BF-8650-3363CCDAE09C%40postgrespro.ru -- With Regards, Amit Kapila. EnterpriseDB: http://www.enterprisedb.com