Re: [HACKERS] postgres_fdw bug in 9.6
От | Etsuro Fujita |
---|---|
Тема | Re: [HACKERS] postgres_fdw bug in 9.6 |
Дата | |
Msg-id | 5A5D6AE5.8070101@lab.ntt.co.jp обсуждение исходный текст |
Ответ на | Re: [HACKERS] postgres_fdw bug in 9.6 (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: [HACKERS] postgres_fdw bug in 9.6
|
Список | pgsql-hackers |
(2018/01/16 11:17), Tom Lane wrote: > Etsuro Fujita<fujita.etsuro@lab.ntt.co.jp> writes: >> (2018/01/16 1:47), Robert Haas wrote: >>> Hmm, I was thinking that bar and baz wouldn't be constrained to return >>> just one tuple in that case, but I'm wrong: there would just be one >>> tuple per relation in that case. However, that would also be true for >>> a full join, wouldn't it? > >> Consider: > >> postgres=# create table bar (a int, b text); >> postgres=# create table baz (a int, b text); >> postgres=# insert into bar values (1, 'bar'); >> postgres=# insert into baz values (2, 'baz'); >> postgres=# select * from bar full join baz on bar.a = baz.a; >> a | b | a | b >> ---+-----+---+----- >> 1 | bar | | >> | | 2 | baz >> (2 rows) > >> Both relations have one tuple, but the full join produces two join >> tuples. I think it would be possible that something like this happens >> when executing a local join plan for a foreign join that performs a full >> join remotely. > > Doesn't really matter though, does it? Each of those join rows will > be processed as a separate EPQ event. I assume that such a local join plan is executed as part of a FOR UPDATE query like the one shown by Robert (the bar/baz foreign join part in that query), so I am thinking that those join rows will be processed as a single event. Best regards, Etsuro Fujita
В списке pgsql-hackers по дате отправления: