Обсуждение: Is it really difficult for postgres_fdw to implement READ COMMITTED isolation?

Поиск
Список
Период
Сортировка

Is it really difficult for postgres_fdw to implement READ COMMITTED isolation?

От
Jinhua Luo
Дата:
https://www.postgresql.org/docs/current/static/postgres-fdw.html#id-1.11.7.43.12

As the doc said, the REPEATABLE READ isolation level is used to get
snapshot-consistent results.

But is it possible that postgres_fdw could get to know which remote
queries involved by each top outer command in the local transaction,
and use the same snapshot in the remote server to execute them
sequentially? For example, could we use PREPARE TRANSACTION and SET
TRANSACTION SNAPSHOT to archive this goal? Then we could use READ
COMMITTED on both sides?


Re: Is it really difficult for postgres_fdw to implement READCOMMITTED isolation?

От
Ashutosh Bapat
Дата:

On Tue, Sep 18, 2018 at 8:28 PM Jinhua Luo <luajit.io@gmail.com> wrote:
https://www.postgresql.org/docs/current/static/postgres-fdw.html#id-1.11.7.43.12

As the doc said, the REPEATABLE READ isolation level is used to get
snapshot-consistent results.

But is it possible that postgres_fdw could get to know which remote
queries involved by each top outer command in the local transaction,
and use the same snapshot in the remote server to execute them
sequentially? For example, could we use PREPARE TRANSACTION and SET
TRANSACTION SNAPSHOT to archive this goal? Then we could use READ
COMMITTED on both sides?


I guess the problem is 1. exporting snapshots is not cheap 2. tracking prepared transactions is not implemented. See a nearby thread on "transaction involving multiple foreign server".

--
Best Wishes,
Ashutosh Bapat