SQL/MED - postgresql_fdw

Started by Shigeru HANADAabout 15 years ago1 messages
#1Shigeru HANADA
hanada@metrosystems.co.jp
1 attachment(s)

Hi, hackers,

Attached is a patch that adds postgresql_fdw, FDW which retrieves
tuples from external PostgreSQL server, as a contrib module. This
patch is based on "SQL/MED core functionality" patch.

[SQL/MED - core functionality]
http://archives.postgresql.org/pgsql-hackers/2010-11/msg01698.php

Postgresql_fdw can be installed with the steps similar to other
contrib modules, and you can create FDW with the script:
$SHAREDIR/contrib/postgresql_fdw.sql
Note that you need to create postgresql_fdw for each database.

Document for postgresql_fdw is included in the patch, although the
contents might not be enough.

Any comments and questions are welcome.

Regards,
--
Shigeru Hanada

Attachments:

pgsql_fdw.patch.gzapplication/octet-stream; name=pgsql_fdw.patch.gzDownload
�t�Lpgsql_fdw.patch�<iw�F���_Q!��
��^������$�a'�3=�R���V	��I��w��*�$�-���y��t�r���T)�;��z}�����?�����u�����l����;���y�z�����|=�_��������'���p����"X��?6�|������} H�k��1�"��6[�?a�T
vt�A��z����W"i�������[/".>z���Q�_�����?ck�������)��������d�������s������������d����1�au��|�_k>��G6�J($B��l��K�g#��}v�&V,�������]�����@��4~
��8 Y�`�.P�$������[lYa�#6"�?�<�-�
��������5���@iF���u�o�����k���������;�0"��/����j����l������~��{A�F[��a�^c\�)��3�\�J}5l�������ys�\���;-^����,;��y�.x<��>�������"f�����$�o�h�����Z��i(�nz�*��������W�v>���n$���=�z$9��9�|�������z/n�O��*0��>`�Z�sJ������d-�� ���P����2[�k���8��V��r���jr�1.l+���������dyra+ZT���R���^�%���2�����W�O����z�:h��;hA��}M����+�'Y����^��`
��u��1�F���j6n���S�&��q9��}�a�$����|C��do#+����F�� r9Z�=��b�� ����H	3������0��Q������>`OQ������t�.@��#�wx:��'g�S�l��o*R�EdAQ�o��3������N��?�T5�*��'��l�z����{8���:my��p��w:���E;���9*���7��+�'�S��@���j?f��O�M��dd(.>	���������~�-�HI)a���0"BB�����F#�P�
'�j,�`fy[��Q�u9������ ��r�)
�N^��u|�d�1���~a��w��S=��x��4�/���{��=�����w("k�}�#�B�O~9�A���E��w��!��K�I������������Q>����%8��G��b.b���">M;%����{8k�6HB�s�OW�?]�\k�scE��$��c���0?��:�B�������_a�h�;�tLz|�So�� g�}�d'�Q�z!-����p�[ZY'����U��X����N���uZ�:`�F���/Nq
6�|{��l���)-��e
a�q}Hb\'�����<nVp�v�a���Q�[ �b���$g���,v2�3;��
���`��aj�K�sX:=E�<I�_s��q���nh[��y �r^���l�M`��e{gpvy~�l)H����L��C
�z�ZyR���;�(�;#G������}\���Y���0���
�����Y�3A������`������AhH��K��?���:���z���p�9� ���f�5_����4� M����;��V��r��`#T��v�����-b��#I����`�9`�������/�rB�2�=�I�SN���w	���e�`0���=N$���O��&�z��������e`}E���FO!���/K���1{�y��e7k��r�6����%���/I�w��	��1�����U���v@�/.������ �����7A�H���T���A�B�t�*����16��j������M���%��h�&� G7��b�"�d
w�z��6��F'<�8���J��`�������w2I��B�[;�=�=���/����o�N�f�mQ��w�Qbj�8.��;���Atq����z�,�NM
�
��E�v�c�����`�S���{0��
�n���)�S��9��]��
~����r����\T����;@���CF����6������^*��=n�l"��3��N{�iw{�b0�wzH�(!���/ x��x	:�f3������$���[c(�_Ya����Ib
�XxdE�����/�fKTg)�R��e�������4a;/_����J[�w�#�F�_���,)g����j�.}��l6��JL3e�L,=
3���7�:Ax��e�Ze���_�[����y�vJu(�����h;��#
���]L�'�N�dS��P�IGY�������V��i,��(�]6P�{�b�XQ"9�pHv�c���7SI�>����m�$c��Eu���P��Va1Q���'�w��<��g+��<���fk�1���%���W�-tU? ��u��]��'��X��[+�^O��(�@��_���^`:8M�Ej���\(2J�����T�������l�'��k��UN�KH�=��0������0m�N�U5wO)�I�g�Z�/�br)�x����d�I�k<qWOc��u�-���X�]��se�w�LPA� �	'�1x�|`�����	�+��T���V�d�!|���,����� ���a,[�	�Xyr?�Df�PB���S���Kc9����#gu�@<v��?-������2�B�Y�@�-b����<���������l�������*�O!��Oss4�7�X������F�&1@1�H-���
����������4����
v)8��	��ra�x�q�k�<����t&*wF|�~�m��(X=f���$�iL?z�g#��<�dtUFd�F�p=|Dc*D jr
�D����h_��C�<�+ ��T���y�c(���!"Fi�[��)��{�c�J�^�V�������L�}E��,\d��^��M9"���k�[+tsX�;������6�C�v@x�#�+$�K<h	�3e�?���`�r���I�a\�������9N���Bn�s�d(c9��zdJw��$���Mx�*�hm���������;@��-����J ����������,@%���f����/��K��5�ll*�6�YzM�kPBE�[�4�s����c�v���d[�e���OTmh����K�g�}�y�[z|��C5������^E*�DN�����
��6	���q2�����3�:�����m��#MX��&����p����F���yA�|.4[�b*�[7��v!���s30��n[��	x��]i� ZT�pr@�}*U��=�;�
>@��r���)q�5�����jS�LJ�������&Y�+1V�l���^(���g�x���
��V�,���{����6`1���,�FU8�n���!1����,!^�"�~|�..���m,I2=f��$^��������a�%'�&EI���l�G����������))"��}���:m�,]{I>�c�v+��6E�%�m����K7h�%&�4_[�K!P%[��o�"��q�EYr����'l3���4�L'[Qd�$O���+����`�w1��S�at��U�c���g�D9B�����������������ssq�����X+p�����m
���Ou,��`�y�]�~�Y�KL������.AK=���O)|`�/{mM�\*Ow$Zi����(�P�D�d�&�[�n
 ����0	C�����?.����A��
�[����p1��4zb-�[�%@%���t�
t(9u&���L:���R���J
p�D0t}�DS��;f`��	�M{��Iz�����6�}�1����K��F���1�G��i�=x��?�l>���=�zsN�s��1s_��NR
0����U���U���'���;(����������"n]��
Q����p�iL��Fe+��:]�X"5�{�������],����v�V�uelj4n��+��M��%�g\�ae1\�7����nj��Zk���p?�V�Sx����&����l�.��de�������1��mR��j�X�b��!����O$@�(�#�[#A|��,�@��}�d)��X��&F��CYjRG���,0O�8��|^}��Y��+7������|�C��wn��`�F	D�5m`�
f��{"+`� \zHQ����~�f���dzd��n��[]� f�f	F��#J���o,��:����!�f&�UcyE��
^����U!��C�������`�B(��[����U�	8�$cL���1�	"�LPpH��M���(+AK��P���g���-��a����k�S���f�&�E��I�
��;�=�~p�r-6�x��X�����F�Q�%"�l�����8U\h�?b.�^�_��o�����O
�{f��G��!�������V�J����'}�f�&���;C�V��d�B[���n�[���'�r����f����PW���&dE���VQ��� ��7\{ ��<���
)i�
�����LOYS�F4F�*�]c
���
(��1D
�bLE�+.T�$����"�"��U�y$\�D\�~5��D�������(w�9��W���&�VL~�l`�#�7!T�;u�f�)MM�X��=r���A��aUj�����+w�(g�H*�H"���a�N��y���]_��(�����t��W�-|R�W�JwI�'37�)DZ��$`�e�"�D�$�}�;�V���W4L�����Y��L5�a����������j����N5��3�M�XJm�_��*��B�l�b	{ZH�L++��q{�*��
e*�)hj�����`l�Q���&� Y��M��������7�l��I<"@����P�0�T#n�^������L�������31������d���k�d�q*!�r��~��&�����b��T�O��n����Hvc����UP��3N�*�������#�d/�T�3@k8Y!��"�U�rd�tE#U�y���zC����O���xm�^*{���l�,jPYZe=��&'��(�j��sY5�k:��p�c��#q��
F��_���*�6(�&�)��	`���xUki���#��J\=�I����$���������
�$)���?5S�t=l�������#��r6��E�jT:0j��d��A�WJ6�=������G�7u�}��a�7B4B���##E�4�T%�SM��u�V��l��-�3K�A#�_�����:K�^��3���[�&�A�"��39/��4�Cjs�nu��S���>���/+\��b!���=���� ���4SUU����T\F�z���; `U�
t�{�gMUj�!�����wydd��8�&�c�������F�1����x���/���uc$�2-��-
����W�D����e���f�}���?��N<�4�B����\
�5K�S'b|�7`X9�hs��G�(b�~��8X��*p����W�&�Tp��	������i4z5u| �R���nr��>s�J�� @]�X$0��f��|���oWCrQ�N��jN���3�9� !��:���T�	���B���TD�Q����
��vP�Y�^��xj��-Z�3��x�X#����W�2N��P�L�A�!��@e��)��u��q$�\AJ���NrC���m�JW���"�����G�q	Y2�Ho,�����
G�a;A+��PKA�</����������pO�<�'j1-����J��q,sC����������2��S�[d��o��*�Kb*&m���l���;���dVOd����<�}����*	���>D����K���\Bq�ctj��j�a���%mQ*��.�$����o{������g�W��5l����b�)����$���N�(W��h���=�~� ���TMjw,��>�������r��
�kTJn=/����$�@��e����l\<����]�7�����f-Xl���I,�k���R�����>���Wes�N�_�hb�����Xt������/�c<�.L<.��s�#Xdw���^����{�RS�~{�Z�
�k�!(���.���qLt�Y9�f�������_H�/�P�f����d�v��F�����p��,������*��j�Br�>&����*������TlsL����#V�?���dGUl#i��C�B�b����T��?��WR�2>������)�L5�S�2�&�����j�8��`��H"���>I{�Ef;�O9(z:�P@�����V�S
��1��;=��$T���:�
�ZS���1j��X]��X���+���}��H����p�
nP��9�m�������s(���������X�Q�>����C��J��!�8����*	�(��vE��j�Z�^o2�36�[���A	�K+�ku(�H�e��J����j�u�R�b��v��b����[-�a���(�]B9�Y��tX8�w�G���U�=o�����5���j��r�3b������
=a�{�g��{�����A_B�1�9���k�x��w�@�����j4��Vx��>���+������^O'���{#fV>�){���&v`����Bl?;�\mq�I/�}��zN�T�:����������y����A<��j��dHv}�L��������V:�Y�S��I����t������%��a{'��e��0��$���e��
7����=��=Q^p�M�.p!�iW�U�B �e4k����dN��(-�G�W�O�iN��I��)&������[U�y�w��@E�SN-#u���P�zsC�������/�YI/�O�H������T��|�^�,F�7��H�8��)Q�����Omv��l����,��)_�a���K�w�����Z��.b�&pw�bI��]���K�I��
2�%A��Ew��>�sG����^���JU���;�����k��	��jc����P�i��d�;�pw���IJ�����������u��p1��b���`�����i���g���K��O��L�S����d�L���1 j��2�\�j�������@��T�Y/�]�|��w�l����<s�Y*%�����q������'�?G1��H�zJ���r�����Z��
�n����
dM��'wx��S��Hd+��&Q��C�t*����� ���N�sy:WQwRD��h:e2u��k7��D�i{��8/).c��n��v� �N�N(���>8k~,��'��9Q�����P?������*,����d�i+�����p�^D38�0�	F�J�hw�%O���:�����W���#)^��(M�
�s���1�9^Z���&9X���W���Bpb��c��������}�)�	��=���m����C��
H�z��C�������8o�=@I�X�]O����t���,+2&\u��6T����dN���V�"x�
T
�4���]_Dv���6����""j<��,ua��U���p�?��Oe�_��|l|E�0�
)^�
�b��"0|D�)Og�������_O���R
�1���l#��?��{t�F�D��F��)S<��$�X�UZp���E0(��f���
�&����$�my��M�!���'��/�
E�M�;�,��T��X�[a�*9��\�$!L���(��m1�q)��"-�<���e��Xv�}^|�l��#�	o�_��M�{��]�a?|����k���?�9-o4mh��a3�m���9Zm*�1��h6��@��Ev5�s�-��XI@�K�����!�7��u�{S5�ak~�Z�To`U�������21^Po����q��8,�f�O��3��P����
�0LfT��7/]�-P8c
��	�jh=2�C�?��B4�"(=8��i����`�����F���u���U&��bP��)� A����������?P�w�>���Q������~8�VM�ZI'{�����)\� �e>�Y��R��%j�nZ�`���}�F"&�:&!�tp���3�3�M��5�PNhfgV��4�?t�5�:��~����*����>	�h�P6�W jkK�-�]���`>�[Xy�0�aM�@��A�dc^�*���;lY.`���!�� ���>�^
�Q�|��b��q�\�\S*9R�~G\�����,�������[�NDA!(�����.��$#{� B������S��V/���>��<�����0�?8b�����{�G<:�6.�x��u(&����Hu�a����Cn1�UI`���i�]��m�����j���X�W�)����B�{@����|��D��8��cO���
�4f�b#Y�S��D��|�T�����^�"���F�[H�37���}8�F���b",�<	�j�
�5U ]S��(��)�2}.���;������6C�i��#���{������������K�a��YJ��u��Gx��g��)���-��FII�x=f`|���r�����'�'e����e�^���
�h�`G&��-M��#c1����������O���9~�����x�`�`�?R���w�����=�k�$�`�]���Vu�����33��#:��[���Ir]����i���>��|`���BW���gM����E�YY���=N���_7P���X�g��Qp�x�S��z~(m���Lg2����	��2������eZ>J�P������~
���3*�~��$�'����5�k.�c+�{8
x�����th2^aY�@��7�<�/Fg#1� �7���Af-<v�F��x*}6�\u�+�gd�NC0u�O;R�)����`F�`���%���zR;n�Bw�8��+	*��a�W�������$L�����6^�uhS�����	�Y�����*D��E��'4.w!�����q��+�a���a�y��So����oo�g���%~D�l��)�|���5�}��?�I�\�Z<P�6%�o�;P�~�*��(�fX����|v2��|���o����q(��#�������B��9HkWQ�O�Y�Q	<�f�`%�;U��������(�����H�++��6}2I^AC�j��0�l/�U��,[�Z����3?��m��������~Y[;��[�����Q�W�u6T�1�Yp���m~��p!
@�.��I����B���}��� W=��!�0������Y��1F���{��.�������L"L$�!�;�����'�]o����N����r4��n�K��-qV��}�Y�v+.������e�\/&E	S�i <-4�`�R�����$N��;�9�� ��?[CE(`�+�v����ax�l7p��A��o�Z�[��|p�����������Xg>p����m|hx��4p�e��t��js$:0�9�l>ANK!���(��������,t"z�������A�,�m7�&��bl.�t!XY����$���:C-��[Cm>�P�s�E���
����D�����AM�z�>��M0b�%tS�'�y���A�~(�:���'��x�O�J�Q4
��VS��[Z����ew�(��29>����_���`W�uy�y������r�xRv�M��%=��w���'�W0�|AJ!����\���H��8P'��a�4C�L��(���fm����&�(��V&�����~=p��x���h��`:����@$�HQ�p��`�K�"���*D��2'�5�����%Sx~m���U���?�$�[/��������A�g�R�s@���<9������T�
��,mU��*��$eB#�����������V����i�t��W���W��9�4:�g�������~8R�������;�6�q
�K
�:��w{u6��faw�����)����A���<�������r�W���l�R�R@?�+�����g��*��(��������n��=]�H�A��R�;,��/�':r6�:�+P�9g���
��3i�0w��q�2l�>��n�v�q��+���]dI�P��a>X�{�[����Zd����@�z������2�t��&����g�L����K}����6��_�O����}N|��V��������)l��G*%�{v|9��uq�b�@Au������Q�Ng��*B�����~��<�H�(�<fW1�lx���z�`����GY����'X#��nv-,}�+�����������rL�����P���<K�.�E�������	��:g:�sTa(�F+���aj�^����H>JYZ���%����J�B��#	Z���a���5��s��������?h���G�F��/��A���>�!��~�|�H���'���L�S��84L��E��N�ku�"�h)�,C��7W�_TI�����B-���J� �Y�^��u���,�7�*/A����������+�,��TZJf��W��|YZX���i'�A�bdG�w4K��
���O��ml�_c������ �(�����S�
K-�b�CG����Xq0�Z|��6�H�h.r�j/�-����v{��6T�Bw��z�.����'��G�L�y;{�A��m@���#�Mi�i[	�Z+	!���PT^�bU).YJ���e�m��u�
�\��-.�
�8�uJ���
��F�������5��V�S{�n�u���Z�&�O#%�~)����9�n	@����C���RAv�$9b�������d�?�����>(`��m7b�z�g����Z��4@����b&Ok~�����no��\�D�^p�S��Q�N�3�p��|E�E��?�c���L����p��oe�eL��}���Z���+w��V�b���������5�W+\s��]r� �Z��.����K�r/�]u����/������vtd���[�]g?5�_��H��
.F��?m���f��Q��������!�����d��c��$���f+?����d'�sm]����<a�%9<��Yb�L^�SsG��;�g����H��.T*]���wsQy����C�Z��MN�����0��LpC>J��Gr�0��=��HC~�Bt�l0�.�6^?k��
�<�;=��F#�r�Y3���������Z� �����H.�r!N��N���o��i����pR+����B�f�U�|�r��A�d�(�[�B��B��j)�Lv{G����������f!���YJ�/-��m���Y��V3�|Ho������ �����O�W�|�]�k
���Re4���?f5x����z�/A��j�3��������{i��ab�H��:������p�A���a	J7�)�"*�M��4����~$O;\[�a�
���C�
��B��,�^�C����	J��7�Z�yE���t���(���=��7�
��2����=cN�6�z�S_������!CQA�3�+�fU����R���\����,��.��<�9
*��$vW�.���������*�<�^;�N��mx��v>��=�A��d�k����^>�j����g���3�$��0�Wr8����hW��&���to�i������Z;5/c����<�p|bz��v�;A�(l��y���#[�Il-Z�Dm?=I��L�^s%��dS
�}8(F����U3��76��a���K�\#�`;h���a�"����pg#E�:^���:�.��b��]�7�03 �P5��<<aH'�����}�����o^y��8^d�t`�F +�$\�x��F������f�t��]�)?-?+?��:��y|����D��>#����2���
���u���
��D�b�]�Y(��L��p�2s��9p���k���k�zm��J����^�"}�G"Mt�"�.��$QP�w/�=]&�.�P]�s�T�b��t�o�SI��
:��da�a��� ����O��/����
���������mw��J���������nm=�T�=�7�n����	R�F����qa���/��7���Yc��l��Vw���Ko���./;��N.��.���`6�������i����z�
B36��K�C&�O�&r��|c�U���q�R��t�yuw�Z���_�^,@r�=�a���R�~V����T{{�~�rH��8Z�Z���Y���(�o�^�ic�s��yfY�Ty�}�x}�5���3��5���g��V?h�=��I$=?�����e�h��s��[��:C���t��l����������KfC�����x�\p�s�D��kH�n���B{���!�=�~����A��d�&��uwz����	���e�c����e{���U���u]��b��{2�6e-�������{��A��C�4��CJ�����0��:���q���>N��p������\����-�c�k�8�fO/tG&�]��$7�<@�]�����%� �l|(�M��<�E�Pn%W��9]����&kIy�����,���?C����	&GO*�_�B6��I�s����?&8�<�H�0Sb�����t3n�b|�L��P������2���.;$9}��E!�D�Xj�E���M����2�`}�(]f2[;=ti�\s���N���J�m������7�c	�����������;
�Yy*os%"%���2W�'���{o3A�{�����r3�+y��}������* x!���;:	~�y�$f������0/j������w�fN�@$[���-S��1��)��#���!���.��C#���	K��F:f������������w��DjI����������&����3gFnLgz�L#;�.�����Z�\bfR*#/�*�����K���
)%8��1IH
�!�8yw6���|7�^���4}���U0�|Z�{�m}n���>��������%���������������Dq����x��g����E�X�S���g
4��E��5�G�q������L��#h��u���BA<a�H���VO$�!����
e�%��������������P���������7o�O@++=�������Z�����}Qo��q����/�SY#��?Kq�=Z� DC�
(����������%����B���R\���Wu�����(�x�����,K�M���z���w�&f�q2Y����
q�����������Y�d��e0�#\4�Et�pyx���������a���5��'�*�� 5!3�v�'DQd"��
](�\9�TDi�w�!QK�K�6�D��T�.��I4��[��>,n�+@������\"�~nXtb�u���>�/7�n,�M�yh|��;���_�o[ ��*��=Ud:��~��
7
�'�I8�ro��	������y�*`�}�dF���Mx�cz\��d>9��>�5C���������^e�Z�rX�}ooS|�Q�b\�w��=�T�oj�dx�b=?0�J�7k�����4�����nC��������'������q�����A�?��[ nu�f����I+�J�[)N�K���S���X����}GV���I��
V4��W�S�P��j����@���9S�������b�|�r�ig�R�F��_�|��C`S��6)�����ufc��x��U���o�h�������l�(G��]oX��\��� ��"^V`��n�c���s}��B�6<��:��$p����^��yq��������\�+[��,��j��)�����u)	��/������Ntm�P���1��MU0�������[���
�?g�
�J9g��T����e�H����q���L�@���ci#�\w�n����2��Z����y��66S}I;��F�t<�-�h��]a��Za�����Z���lv��������A��V/��
�^���|i;�S��C^`}���1��AD*���}N� ��������c�F���G�:�n��/)&����0�k��������o"���.t��?�1���RLp*!���F8�q@H��N������)m=kc�����h�'`b��>E�����>z��HEBY���>�W�o!�(���p`o�E��c�������^$qE��~��,�Yw����8fH�A@`� PaX�����A��sg[��������������S���_v�<1�^<N�F��R��(�;�n�,����O�f���z���g�;�r��-�o�H�7dJk�����Y���/:���������`�m�a�^|$��.>���x�.<$��K����*fb���a�e��mm4}�.,a����G�$\;��C"�����%�r��!�kz�Hv[��?�r���z5/zKH(�DX�z�^�4�4EC�BR�.�2%��&����C���]��K�����#vx��_'8>�����-�x�9/��~��E�����0=p{�z<1����������W�f���2���V\�'�5x�\�'*��I��
�,�4X&Y��i(:|u*��%���"'�-i�`��Vyg��Z0�H�[��.��6���U
<�L��h�5�y�Z@I%�l�����nQ��Awm��M��,7��A���mT"��������T0�����������Y�b=��=��],�LIb�P$i%�E*W��&���X�l��`�������{jn�D��H3Qm������U����"��a�����{���wf}�����?�>Q�6P������V=`���I�f�f��Q�J�����4={����N�]�\D�Q�4���f��$��jq]�Z�4���J����S<�	����[�.`�~[-:5��3!y��G��!����c����OxG/����J'�	���(���G<b����<nF�P�X�fC�*�M	�Wk,�����|��ywgkk��^���E_�C��T����Z�Q�>�l�aKS�~����[U������]u�0�v{���Az�C
�4.�c���Z�)te�c(�h��\���@"�f��3��~g��W1a�':8<i����AqM,;��
��wF�e�tk��T��O)�+�?D_#��oPVU��{���Y6�:�
+�_�F,EC�����}����(~�����#9����(S�EX���_G/~��](�:zJ2.]�I4�p@@?
$:���X��,�����K��5�8SN@uh� ����J�&D�dK���n�#1�)�l�TUA��^�'�g�3 BPTk9��T���s��������h7��pj���W��g��,����,����?	��NUU�