From:
Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
To:
Robert Haas <robertmhaas(at)gmail(dot)com>
Cc:
Kohei KaiGai <kaigai(at)kaigai(dot)gr(dot)jp>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>,
Albe Laurenz <laurenz(dot)albe(at)wien(dot)gv(dot)at>,
Hitoshi Harada <umi(dot)tanuki(at)gmail(dot)com>,
Martijn van Oosterhout <kleptog(at)svana(dot)org>,
PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject:
Re: pgsql_fdw, FDW for PostgreSQL server
Date:
2012-02-02 02:32:03
Message-ID:
4F29F5A3.3090801@gmail.com (view raw or flat )
Thread:
2011-10-25 09:11:00 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2011-10-25 10:15:21 from Magnus Hagander <magnus(at)hagander(dot)net>
2011-10-25 12:08:37 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2011-10-25 12:24:39 from Magnus Hagander <magnus(at)hagander(dot)net>
2011-10-25 12:39:37 from Kohei KaiGai <kaigai(at)kaigai(dot)gr(dot)jp>
2011-10-25 12:51:53 from Stephen Frost <sfrost(at)snowman(dot)net>
2011-10-26 14:49:17 from Dimitri Fontaine <dimitri(at)2ndQuadrant(dot)fr>
2011-10-25 13:22:37 from Marko Kreen <markokr(at)gmail(dot)com>
2011-10-26 08:26:00 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2011-10-26 14:37:00 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2011-10-26 16:47:31 from Magnus Hagander <magnus(at)hagander(dot)net>
2011-10-26 17:25:32 from Andrew Dunstan <andrew(at)dunslane(dot)net>
2011-10-26 17:27:38 from Magnus Hagander <magnus(at)hagander(dot)net>
2011-10-26 17:30:46 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2011-10-26 14:44:48 from Robert Haas <robertmhaas(at)gmail(dot)com>
2011-10-26 14:57:48 from Kohei KaiGai <kaigai(at)kaigai(dot)gr(dot)jp>
2011-10-28 13:51:06 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2011-10-29 07:25:46 from Hitoshi Harada <umi(dot)tanuki(at)gmail(dot)com>
2011-10-29 12:17:34 from Martijn van Oosterhout <kleptog(at)svana(dot)org>
2011-10-29 15:13:45 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2011-10-29 21:34:49 from Hitoshi Harada <umi(dot)tanuki(at)gmail(dot)com>
2011-10-29 21:42:36 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2011-10-30 02:34:06 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2011-10-31 08:14:23 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2011-10-31 12:24:09 from Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>
2011-11-15 16:55:08 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2011-11-19 17:42:39 from Kohei KaiGai <kaigai(at)kaigai(dot)gr(dot)jp>
2011-11-28 11:00:23 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2011-11-28 13:59:31 from Robert Haas <robertmhaas(at)gmail(dot)com>
2011-11-29 09:25:53 from "Albe Laurenz" <laurenz(dot)albe(at)wien(dot)gv(dot)at>
2011-12-07 07:34:45 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2011-12-10 07:49:40 from Greg Smith <greg(at)2ndQuadrant(dot)com>
2011-12-12 13:59:59 from Robert Haas <robertmhaas(at)gmail(dot)com>
2011-12-13 02:46:10 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2011-12-13 05:46:37 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2011-12-13 09:57:49 from "Albe Laurenz" <laurenz(dot)albe(at)wien(dot)gv(dot)at>
2011-12-13 11:04:18 from Heikki Linnakangas <heikki(dot)linnakangas(at)enterprisedb(dot)com>
2011-12-13 11:44:04 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2011-12-13 12:22:24 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2011-12-14 14:02:28 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2011-12-19 19:13:02 from Greg Smith <greg(at)2ndQuadrant(dot)com>
2012-01-29 19:39:19 from Kohei KaiGai <kaigai(at)kaigai(dot)gr(dot)jp>
2012-01-31 18:56:09 from Robert Haas <robertmhaas(at)gmail(dot)com>
2012-02-02 02:32:03 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2012-02-02 09:24:55 from Marko Kreen <markokr(at)gmail(dot)com>
2012-02-06 00:28:48 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2012-02-08 12:24:40 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2012-02-01 11:15:57 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2012-02-05 20:08:10 from Kohei KaiGai <kaigai(at)kaigai(dot)gr(dot)jp>
2012-02-06 08:37:16 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2012-02-08 11:51:29 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2012-02-10 11:39:55 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2012-02-13 11:50:34 from Etsuro Fujita <fujita(dot)etsuro(at)lab(dot)ntt(dot)co(dot)jp>
2012-02-14 06:15:54 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2012-02-14 08:40:48 from Etsuro Fujita <fujita(dot)etsuro(at)lab(dot)ntt(dot)co(dot)jp>
2012-02-14 10:42:30 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2012-02-14 11:40:27 from Etsuro Fujita <fujita(dot)etsuro(at)lab(dot)ntt(dot)co(dot)jp>
2012-02-14 14:50:21 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2012-02-15 11:50:16 from Etsuro Fujita <fujita(dot)etsuro(at)lab(dot)ntt(dot)co(dot)jp>
2012-02-21 11:25:25 from Etsuro Fujita <fujita(dot)etsuro(at)lab(dot)ntt(dot)co(dot)jp>
2012-03-05 09:21:19 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2012-03-05 12:00:46 from Etsuro Fujita <fujita(dot)etsuro(at)lab(dot)ntt(dot)co(dot)jp>
2012-03-05 12:05:58 from Etsuro Fujita <fujita(dot)etsuro(at)lab(dot)ntt(dot)co(dot)jp>
2012-03-05 13:03:29 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2012-03-05 17:58:11 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2012-03-05 21:19:40 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2012-03-06 12:09:53 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2012-02-14 09:09:54 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2012-02-15 15:09:57 from Kohei KaiGai <kaigai(at)kaigai(dot)gr(dot)jp>
2012-02-16 13:41:01 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2012-02-16 15:15:55 from "Albe Laurenz" <laurenz(dot)albe(at)wien(dot)gv(dot)at>
2012-02-17 00:52:50 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2012-02-17 12:08:47 from "Albe Laurenz" <laurenz(dot)albe(at)wien(dot)gv(dot)at>
2012-02-20 09:18:33 from "Albe Laurenz" <laurenz(dot)albe(at)wien(dot)gv(dot)at>
2012-02-20 14:57:02 from "Kevin Grittner" <Kevin(dot)Grittner(at)wicourts(dot)gov>
2012-02-20 15:51:17 from "Albe Laurenz" <laurenz(dot)albe(at)wien(dot)gv(dot)at>
2012-02-20 15:58:23 from "Kevin Grittner" <Kevin(dot)Grittner(at)wicourts(dot)gov>
2012-02-20 23:07:58 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2012-02-23 05:14:07 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2012-02-24 22:31:47 from Peter Eisentraut <peter_e(at)gmx(dot)net>
2012-02-28 07:46:54 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2012-02-28 15:27:36 from Robert Haas <robertmhaas(at)gmail(dot)com>
2012-02-28 16:02:27 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2012-02-28 16:20:36 from Robert Haas <robertmhaas(at)gmail(dot)com>
2012-02-28 19:07:08 from Peter Eisentraut <peter_e(at)gmx(dot)net>
2012-02-29 10:34:23 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2012-02-29 10:37:46 from Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>
2012-02-29 15:33:04 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2012-03-01 11:56:02 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2012-03-01 17:00:36 from Peter Eisentraut <peter_e(at)gmx(dot)net>
2012-03-02 01:35:32 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2012-03-06 18:39:40 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2012-03-07 20:44:38 from Peter Eisentraut <peter_e(at)gmx(dot)net>
2012-04-11 09:30:43 from Shigeru HANADA <shigeru(dot)hanada(at)gmail(dot)com>
2012-02-28 19:33:08 from "David E(dot) Wheeler" <david(at)justatheory(dot)com>
2012-03-06 10:09:08 from "Albe Laurenz" <laurenz(dot)albe(at)wien(dot)gv(dot)at>
2012-03-06 12:37:20 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2012-03-06 14:47:39 from "Albe Laurenz" <laurenz(dot)albe(at)wien(dot)gv(dot)at>
2012-03-10 03:35:52 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2012-03-07 00:01:46 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2012-03-07 12:47:59 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2012-03-07 23:38:31 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2012-03-08 10:18:03 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2012-03-08 16:18:02 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2012-03-09 05:00:01 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2012-03-09 12:54:03 from Etsuro Fujita <fujita(dot)etsuro(at)lab(dot)ntt(dot)co(dot)jp>
2012-03-09 14:48:51 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2012-03-12 04:04:12 from Etsuro Fujita <fujita(dot)etsuro(at)lab(dot)ntt(dot)co(dot)jp>
2012-03-12 08:07:30 from Etsuro Fujita <fujita(dot)etsuro(at)lab(dot)ntt(dot)co(dot)jp>
2012-03-10 02:52:18 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2012-03-10 16:34:33 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2012-03-15 14:06:18 from Shigeru HANADA <shigeru(dot)hanada(at)gmail(dot)com>
2012-03-26 09:46:20 from Shigeru HANADA <shigeru(dot)hanada(at)gmail(dot)com>
2012-03-27 09:36:54 from "Albe Laurenz" <laurenz(dot)albe(at)wien(dot)gv(dot)at>
2012-03-27 11:14:09 from Shigeru HANADA <shigeru(dot)hanada(at)gmail(dot)com>
2012-03-27 11:49:07 from "Albe Laurenz" <laurenz(dot)albe(at)wien(dot)gv(dot)at>
2012-03-28 07:18:36 from "Albe Laurenz" <laurenz(dot)albe(at)wien(dot)gv(dot)at>
2012-03-28 12:25:45 from Shigeru HANADA <shigeru(dot)hanada(at)gmail(dot)com>
2012-03-29 15:46:03 from Shigeru HANADA <shigeru(dot)hanada(at)gmail(dot)com>
2012-04-03 13:31:46 from "Albe Laurenz" <laurenz(dot)albe(at)wien(dot)gv(dot)at>
2012-04-04 06:43:34 from Shigeru HANADA <shigeru(dot)hanada(at)gmail(dot)com>
2012-04-04 14:16:24 from "Albe Laurenz" <laurenz(dot)albe(at)wien(dot)gv(dot)at>
2012-04-05 16:29:23 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2012-04-06 10:39:36 from Shigeru HANADA <shigeru(dot)hanada(at)gmail(dot)com>
2012-04-06 12:54:57 from Kyotaro HORIGUCHI <kyota(dot)horiguchi(at)gmail(dot)com>
2012-04-06 14:20:18 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2012-04-06 16:14:31 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2012-04-06 16:38:22 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2012-04-07 01:32:33 from Shigeru HANADA <shigeru(dot)hanada(at)gmail(dot)com>
2012-04-07 20:19:21 from Thom Brown <thom(at)linux(dot)com>
2012-04-09 05:37:53 from Shigeru HANADA <shigeru(dot)hanada(at)gmail(dot)com>
2012-04-09 05:41:35 from Gerald Devotta <gdevotta(at)newtglobal(dot)com>
2012-04-09 09:11:39 from Thom Brown <thom(at)linux(dot)com>
2012-04-06 11:44:52 from Shigeru HANADA <shigeru(dot)hanada(at)gmail(dot)com>
2012-03-28 12:07:21 from "Albe Laurenz" <laurenz(dot)albe(at)wien(dot)gv(dot)at>
2012-03-28 13:11:47 from Shigeru HANADA <shigeru(dot)hanada(at)gmail(dot)com>
2012-04-05 12:36:09 from Etsuro Fujita <fujita(dot)etsuro(at)lab(dot)ntt(dot)co(dot)jp>
2012-04-05 12:49:03 from "Etsuro Fujita" <fujita(dot)etsuro(at)lab(dot)ntt(dot)co(dot)jp>
2012-03-27 11:32:16 from Thom Brown <thom(at)linux(dot)com>
2012-03-28 01:41:01 from Shigeru HANADA <shigeru(dot)hanada(at)gmail(dot)com>
2012-03-28 07:13:29 from Thom Brown <thom(at)linux(dot)com>
2012-03-28 07:39:18 from Thom Brown <thom(at)linux(dot)com>
2012-03-28 11:00:40 from Thom Brown <thom(at)linux(dot)com>
2012-03-10 03:33:49 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2012-03-10 16:38:51 from Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
2012-03-10 17:13:17 from Martijn van Oosterhout <kleptog(at)svana(dot)org>
2012-03-12 09:08:10 from "Albe Laurenz" <laurenz(dot)albe(at)wien(dot)gv(dot)at>
2012-02-16 17:02:59 from Kohei KaiGai <kaigai(at)kaigai(dot)gr(dot)jp>
2012-02-17 05:08:42 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2012-02-18 21:07:14 from Kohei KaiGai <kaigai(at)kaigai(dot)gr(dot)jp>
2012-02-16 17:38:01 from Kohei KaiGai <kaigai(at)kaigai(dot)gr(dot)jp>
2011-11-25 08:27:53 from Etsuro Fujita <fujita(dot)etsuro(at)lab(dot)ntt(dot)co(dot)jp>
2011-11-28 11:50:27 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
2011-11-29 04:16:01 from Etsuro Fujita <fujita(dot)etsuro(at)lab(dot)ntt(dot)co(dot)jp>
2011-10-30 01:22:23 from Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>
Lists:
pgsql-hackers
(2012/02/01 3:56), Robert Haas wrote:
> 2012/1/29 Kohei KaiGai<kaigai(at)kaigai(dot)gr(dot)jp>:
>> Remote SQL: DECLARE pgsql_fdw_cursor_0 SCROLL CURSOR FOR SELECT
>> a, b FROM public.t1 WHERE (a> 2)
>> (3 rows)
>
> Shouldn't we be using protocol-level cursors rather than SQL-level cursors?
Yes, we should, if we have protocol-level cursor :)
I checked libpq interface but I couldn't find any function for
protocol-level cursor.
>> [Design comment]
>> When "BEGIN" should be issued on the remote-side?
>> The connect_pg_server() is an only chance to issue "BEGIN" command
>> at the remote-side on connection being opened. However, the connection
>> shall be kept unless an error is not raised. Thus, the remote-side will
>> continue to work within a single transaction block, even if local-side iterates
>> a pair of "BEGIN" and "COMMIT".
>> I'd like to suggest to close the transaction block at the timing of either
>> end of the scan, transaction or sub-transaction.
>
> I suspect this is ultimately going to need to be configurable. Some
> people might want to close the transaction on the remote side ASAP,
> while other people might want to hold it open until commit. For a
> first version I think it's most likely best to do whatever seems
> simplest to code, planning to add more options later.
I fixed pgsql_fdw to abort remote transaction at the end of each local
query. I chose this timing because local query might include multiple
scans on same foreign server. I think this would be "ASAP" timing in
your comment.
It would be useful to make length of remote transaction same as local's,
I'll try RegisterXactCallback for this purpose, though we need to
preload FDW module to catch BEGIN preceding query using foreign tables.
--
Shigeru Hanada
In response to
pgsql-hackers by date
Next :From: Tom LaneDate: 2012-02-02 03:11:16
Subject : Re: feature request - datum_compute_size and datum write_should be public
Previous :From : Fujii MasaoDate : 2012-02-02 02:18:08
Subject : Re: pg_stats_recovery view