Hot standby, slot ids and stuff
I've mentioned before that I don't like the slotid stuff. From an
architectural point of view, we should try to keep the extra
communication between primary and standby to a minimum, for the sake of
robustness. The primary shouldn't have such a big role in keeping track
of which xids it has already emitted in WAL records, which subxids have
been marked, and so on.
Since I've been whining about that for some time, I figured I have to
put my money where my mouth is, so here's a patch based on v6a that
eliminates the concept of slotids, as well as the new xl_info2 field in
XLogRecord. This seems much simpler to me. I haven't given it much
testing, but seems to work. There's a whole bunch of comments marked
with XXX that need resolving, though.
Attached is a patch agains CVS HEAD (hs-noslotid-1.patch) as well as an
incremental patch against your v6a (hs-noslotid-against-v6a.patch).
Sorry if you were just working on some big changes and I joggled your
elbow. I also didn't check what changes you had in v7 yet.
--
Heikki Linnakangas
EnterpriseDB http://www.enterprisedb.com
Attachments:
hs-noslotid-1.patch.gzapplication/x-gzip; name=hs-noslotid-1.patch.gzDownload
��BfI hs-noslotid-1.patch �\{S9���|
�����m��� �PC�"$3U[S.�[�{iw{�n�3;�����/��L^s���]B��#��<~�5KKK"H�e����q��'� v��'�Ng�����,6��7�����Mb��?�fF�L�C?{"����������2Bi���"����6~$��+Z�%��%�����]�B����?��n��V�z��O��7�"����I��UG+?�Qz�+c�P�Eq�� �}�-R�������;�b7Uz��3���g��Q��M���l��������LA5�uWm��%lm�l��,�I,&RC�����s-7L�[��4?P)=���DF��B$��"R7
�V�V�)�]��HGJ�a�"J�@eaa�ha�p.c1N�,a��
T �������������@9��[C$�*H����ES���fLS(����q�%���T$q4�)�D�� ��V����>��`Fh����g�!N�c�������>�(���2�<��e�t����M8,����m%���
#��VgQ99{s^�v~urx\m��������,"��������o�
o�N� ��D�����:t�8� A$9�Y?�E�Lgi*��De���0��W���.�{��@�B�;N��3P"cE��� �@fQ�����t������H�d"�a>�e|-F�;�Yx��N��(��!�K]/�3J�(}��5�ML��2�E]���pP�����3�5#�\<y����t� ��t&��'���������j���~��F��$��q�j�K�l���Y��pn��&���������m��,�����8�%1��XL��;��A����p:-h7i2����MZ��+Z�%����Svn��@��5��E8H�`Y�����(�[�BQ9Q������i�"B��rv��
�������N{~2�D �A�N�i/
ApS9�|i�a��s/9�`��5{<_� -����g����/�F:�/F�d1�X�ch�Q�����h_Y�l�\��~��-�_*��Z��=���xV6��gG��|5I �� 5�OGZ�VA�0�0��:��1�Di,�-��h���M��"��yWw��pt�!b�������vBz�f�Q������[��7n8�Y����$� �����z��wa2(������#9�('���m�*�t,����_)��p���W%��t���Z�����:J^�F���w���e���F��#�T�u3��:��=�0D
�:BL�0������_��{����)��0 |�'���C����6�z�J�l�"Y�U�0:�L�;�@T�F�fp�3�0��\M��:�F������d�����Y�C Z�k�~��)V��1b�,��S��q6���q:0b,� �5����"b�4E���Z!�'�Y"bD�3�$���'����W;|�Y�$x����{� A��i���A���>�Z?bx� ��r2�k����7��q��P�>�9����;.��o��Cw���3h�\�V�[! U�C��f��x�bB[1������0�;�LVl-�������\�(:K��� 7���;2�r�w�z��2w��:��F������`F!D��0'�'p�-Crx�"�( ��=����\�s[��1F�E�����%�,�v[��[�HX�4���(�T���eJ���8�Q9��IL�A@���b 5R�x�V"W�s�/��"���pL
;L&�h$R�+��v��M�d��w��6����q����@�O���Al+�����������vIf�!��?+xu����|�R6H�(Lq��2�8�@G,.N�.���X�C��s�|K)Xp"5����C��>��m������3����Ak�)��
*�� �a$5o���%�=�5�"qr!o�
9e�wV^H�$�X�vR(�'��'�DJP�9M��A<�2���o [�1@{���\��@��;< �@�����\�����G� ������u�Y�A]���������A��E�(�!�:�c��B�R��,}�X]��BB�b8i�*b��1�'(��I�S�TS "L�j��%��Y]n��VjRRD$�[����3�v7h+�T#p��{ �w�?rL�x�������n�_� u:��f/_=-� �QR�{d�W������5>l��n���
���a9���:0QX��_���>,D�T��:�E(��l
�&���M�����]�>��2�����*t��??�Z�'����yR�y{@�d�h�T�A^��P��cu�����c2�����
8�I���!��d5�`���<,c�d5 �%�H�����[Rq��'���
RL��L�����Qi�](m�BN`n�p�s���wF�R��k���JK�p���bIy�0c~6���p��1l����L0i�F �A
�������������$8yC��l�a��cy�l@�z����r;�J"`\
�lR�1�RL�[�[955[U�V$u'j)�4���nM���MBRf�
z�K��� �}��{�>T=�]7���������a�������e ���\��I�/�� ���C��7H��R���e�j�]��H� � n�T-����v������o��q���� 1IL�Gxz ����/m���XKby 7�$.����_N��I��ZmCR:a�,AXy������"M��)2� �X�kE�1u:���] �_��� �[{��u��c��h�Ja��f1��~E�� � �L����~X@��F�%�h������r�l�(�VV���a2p��T�=#s��]���$�b���nB�&&�.1���O�b���y���0�.�K � ��t����f���t��~���e���'Omo�W7ao����v�v&����W���m��p[��Yu��B��#'?L������R�D�/a��\��������9���d-`JT-�pxS�l�RH��Q$�5���
��F;c2i����e���@=�Y����'���*�
�(m�����Z�n,��d�WE�$Ku����8���l������J�-�����a�n�0y��0�L�0xQF b ��������3����E���������7�?�a6��zr�X ���.@�{l�h��6���k�����YZ����,�F����_���
cG���q��>1t��>�6����S�SW�1�����!��W�J��b2��Z�n�6���*L�+��e ����d�����Hi���~��Z8�f���3
]�K��y�p��`�� �8C��c����V�T�����������WLR]n=� 4�w�4�� ���*�d�����.��N-@�Xj�g���C�����s>@�?�M����{YW���%��[�E�{����i� �,4���|�Cm_��y�~��>��}����EO<#���]#(�W���C��B���7�����O��m�f'�k�3�)EC�!�':�c0�!�l���H��iB��,J���`%�\� A����-p2��Y ��w���=lm���k����6���u>����v^x�;+���j��v�u�cK���G�
��(`�����j��O5|����A��S�������A�k;����f)���=M�@��s���%�D�s����H���}8<��`�e��O�����?�V���~�@����L�Z�����~�>�!�-G�f�}�#t������t�q\�������8���m�����/�90X�+}�m6��vM0Z���#$��N�6�#k���a{m��;� ����$�b��6R�y�3n��RQ����K��y[g�}�7�dH��Z���#��%��W>�,W��0E)�t� �*aXl�J�I��
n�;<q=��j�$�M�O����=��M��lp� �s����_��G�ZQ������R�$�Q�pC��(L��I<�B?5�v��e���I�?�}���&��;O,�[|���MY��?�E�v����YZv6�������@p�����b����z�|��j� ���\��5��Dj�2\ko�j �RqP������Kt���e��+���i[� dWI��f������>�1��� �g�4��~���������f�� �w`�5c��~:;��l�����Uose#�������x���s�~�{!��Q�{��)���#Xf}E;�A�S3x���,|:��6
����O�G*�Ce���b�������5F[+�
$8x��\g�����[��.��������x[�:k�@-b�1%]"Ip�}��q�+d��nc����<��<y^��bn�&S�~9�"���g��SJwPzK�xU�2��]����f��������6��r"���8�~������<�K�s`�[��N�JX){���g����r����a\`�1)C�~�r����)'I,!�$\��U1�&��bB'�&��)��Zs��L{���VN��������!.�cl��"Yy@
?1�F�E����Z6�X� 8J�Y�$P^��>\\�#�7� � ��#["M�-[j��C�L,���A;M���
�>rb�d�I�`1�\g G�`�nZ�~��E��/J �WW���6����-ou{�Q�>C�8M�
�Z�]s�-��^�M�n�d��D_S�ouy��DsS����B��
)��1�I*�����N�g�]hY��c5��b�k��zb��;2�������~Y�����6���8������
�o�g�*������j|+\�j^9�������Uz�����z6?��>����dV��^�cu����b��-`�����-�4K�=�����w�����U!��h.�!���N�4���U�X���d�� �!^��pqz�;:>8�����B���1I�2�F`{m6�a�\������8��JK�$-���9�W+�/P���%>�1f����?�-������:|�\_�67J|'��5O{E�o�7�3���}��}��c����n� ���������0G����X���1{�."��X������`��h��T�Z����N�N�p����u�:y����Sq�D�=y�0 �@u�������\�da���Q%�����D���K8��z�S����~D���y��i�l����-S�� ��x�+������%dzT�pg�H��v�X���}T j��B���R!��"�,�t� D��(��w��*=>��4!_�R��O�X�[�J�q���V�nH[���#�&lkw��Mg�Ib�Yn0������}B }������!5�"ep�}T�<����nO"����--�6��aQ���)Z�d{P1��|�,�5)������e����/�r
�o!z��O����v��9� �zB�`�
w��x���� cNG2���tE��$s��VA|}a�r��@���p�$�����f^��3�_���(a���i�����n��H�x��(}��k���e��(`�_Hc�n�K���C�8`h$ ����bg<��>�pm+!~����wEN�r��4��v���5=�2v��G9C�~
a.���������1��Y��hs�&Lz��goH%��0~� ��i�����1���9�/V��H��K��p�)���b`��K���o��� �%Y5��\����e ��x:��s�_x���1�]�\���#��k:���5oks�8|��A�~�[�
'-���]s���Y2�lF�r��c����v
N��
���)F������]{0Hy;����z��75B�����+�K���A��E����#����vJG��M��R����d+������=����<:��'��q`U�9�tk��\\[����y5�~��t��x=��+�����:�c�S�"�k��������u����^f|����_�9N����^���O��_e���\�5�M"�w4a)}����� �~�KEr����z����D�;
����
U������z�B��lI�v{�D�i���i#]
���{������+����v�)0s�v���_���}���#����U�1��~���=� ��t���c@��kk���w����3��,���iF>3��2�+:w��= n!��"8��@1G;�3�UET�l0'�'L'�- ������|9����%M��J�M�R�)�3��I������R�1m�P {���32��A��`����hw���9�c�N����
���������<���N���=�|I{���IW
��^T������7�g��
��?����zh<�,�cL�/e;uL��m��ygc7��tB��hRY~t�yr~���w��+6Wp�����,��vC��d\�%R��L{�|` =�����
ehS|�����(��>��Q�[B14��-�E��$��Z�#�����-�K��FP��i��r�����G�3��5Aj�o�lu�O�����9�K�GHV]X ��;����H� d�������;7���6��
�,\<�z#���w�&���{�r��[��7�^N��Y����MAq�9.�1g�G<��O�<�]��.�y���t������[�4r�T���b���e�P����~^;����
�!�_���(���No���������6w�w����mYpI
�.��H���pr5�Y�?^pwV_�����%+���/����W��G5�o��T�?_8U����]���\1�[;������Yh���(�n�|1�>����a��xb�Jf���#�`}���Q��c! 8�'���M�X�0��0�>�E����9�d�k�Iz.6\ �}��8��Cx���R: g�
���]�v(���X��!nZv7^�X6��6(R�(��{�c��"����;��[{��^���Qy��L���]M�5���o�g�66S���NqG3��.��/o)=���MV�3W����}�&n�g]�)��!d��@Fd�:�N����e'd�D���$
�)������bh]Lf��hr��P����@:��yIx��X�����@����I��J&��j�L����pJ�y�Bz��k'�l#�@%������fe����JPY���c�m��+��0�*���.<�)��g��u/����s�#���lB]�,��M�i&��x�/8P�@��$Y��s��t���G?������Q@�����b����0&B[8���������{^L��$���N����b 7��~8|s7����"�T���e�r�.�3��hx���8/������
phC�&N���Z����9+9o)}@��u���,'qN���@v�Y��S���-�����\�<j��W�2 ������G$���w�I_�������g�]��4�D��v�Cm�]j�*�����^�: ��
��I��Z���v���h�TFC:[~�|3C;�F�Lk�����eu����G�t�`B��{V^�Gs���psg+#����=o��[[�EA���T�v���1�Ev�^���&���pg��n��r w+�p����I��c���q�:k����K�[F�'�%Nf���B��&��Ya0�Y�6�eG&�X<�����w�����Xw����T�]!����qbR\��2g�Q6�J��m<��pv�s��Z���Ya�$�b��t���������y��^{���4�8=���l���L]���,�Z�������<-���m0cn�j��u\oG��!^9�a�J�;/����fg�z������������G�pj�����(�?�9���[Qn���
�)i8��8�'�;�R�$��
G���J����^�O���jUQ�@��E��q|}31��N���X��52?_�+��D��Hn>7��!���g=�cA������[
+��[�d�n�\�&��3U��HX�h�&p��MsA�5+���g
r����l�+�Z��� :�\�.T���0���'��j��B�/:3m��V�
�V��+������0��`�j�h#c1%�~�����4�8�k#�$�/#��N����l�����{1���c�3;�OG!w����M��b��4������~��z��h�������E{)��� QF�{0D�P�����j�+�m2�������}%������� ��`&����l��Tt�L ���-���>Zs�����v��mze��V6������<r��i.�����������zKd���%�`�d*������,&�(�^tNQ����c��g�.Pqp�2�M��M��S"��K��8�0�e����!�Io<]���"=�SK�
�h��n���%���fY�
��g[�[.f�8���/��: ���S��F����_�����JbN�s<��Y��7�s@�^q\7�GH ��tz ���l��N
�UT�v�w���a��8Z5�/�xiP���8�FQ��t?��)�+E|�a�^�7��1�NN��T�b��@5J1���{�r�M(A�,��t$k�HA���?�i�x��[�AKA�C2��o�?�^4?�Y:(x����gS��
�-��q7j[77XU�2��@f����Jx���8���f$���QO(�Kz��`������/����;c�0ZA��&>�����D�����$S���v��&qw�q��.@����r/��Q�h������ ���������2db3P�g����x$7�T��%�����x�}L�sH��o�>��e�V�����l�{X��;PhY�JWM��S��#���r A���A��\�.#�C\�8�(�P���n�6HgG:x#|�N�������M��#�#�ka������I���Y�������������yk������'������q�,�vDF[�@F[[UX��lM���+.$�N(����g����*�$s+���$�93��}������x��*���]u=�:�J��I��/�7^B�#�o��{����,�7I�b�
( ��i����$���=_$�A���Ki�u���F5�~�q���V��D��s����ZG����A�UD��/K�f�K �\�@�%����\!R�����f��i�/H���}�ETA��,e�x�=�;�z T��EfT����c�Ss"o<<e]I�c1��*QR���D�����r���&�����9���#'0,�dC^i���?�F�:��*9�J�<>���n�K\_����%X������ ��I��Uq��Y�U�D��&q^Y�O�6!a���}����/��T<��D�\������#?D��~��R���> 9N�`g*����p�����CE��WZa#t
3�� �L#s�b�aD���d����OC�����\Q�os2�X-�<jc"�I����Y�kp����q\;�k4[���&~����lp ���9�� ��-W����;�O�O�c�I��Fmn�e=�@`���v������+n^�)������/>�����f1��{8MC�AMo����:�^�����/�����+�;���#X��|x�����x�O��K�M���4����n�
s�P�-������~P�����i�l�Q��p������}(�;f38���E�Wd�i��������^+���h��3+W���]���~���� ��X(���!\@����"��A�����]�������szI�.p�����Fu#D�{���7/��Jt�L�����>�U������ k���
�v��~������H�t���N�;/} �/�h�������a�����5��@���f�����Uw���4�����n��F����Ac���X";Dc9w���������pM%Y�����
��Z�~��
Eqx]J v2�3�){���'�����X���%��Kg5s+w_<�N1���=��H���w�����J�X�R��c�m���1$"z��Fo��t��H&[U���5�O�(��g�^Lj��eO�yL|��'���<�g��Y;j�$�elV����G9��B��%9���If�Y@��?�%D��s��~?1�3x
�s�#��#�w���/����&�C,�7#�;�e�
V�9����*G�:��OJ����rfO�Xz�r�P��M�J��v1��Z�9���������/�1���'�E�}��n������V/����`�.��K2_�=����+]x
5*D�(3�D��X��� +����5�a}��K
� t�Y��\gm�m�wE�E+������X�Y��XP��x���p�1��9bc��Ym{h�.���w�0�0��N
��{:5���a'�Q���f]wy�.��4}�-��]t�O�.ri�'.�h�(�]�
�it}`������s]�����������w���|'P��2Q);��x��J$�4�_��zE���qDx�����!
��]��tM�L�EB�E������^���pw%��������# _(h�
��"��5`7�"G����.~�}�0����Y������|8��]��`�w�4���B��zN$)e�Yh�S���Ts{� �����*��2��V���W8�
���W�a����N� ;Q�n����b���X� ���)�����F?�@��������(�b�'��Q�j�w}�"�p�����-����FW��O.�g0���W�$!�a���l6�>|����)��J)5�3
�=w8$N�\�����2��x�JF�{V�W�D�
��9�`q�
��D�|����*���H��g���a����`���&\M��PCU�r�F��$�x�PN�� !��{I�i�jS������R��H�q������]�����6�1r%�@����?`�y���Q 76�ex�NA��y9LOL~Qk�����w���m,��y��������o����# ��������NPAa6��-��-��-vD��Y���< �HSa�f�B�,� �7����.��.����?n���*v�����{{37�qU�����o�Q�(C,#|��v���,����Y��P�J� O���x�xcNA�8��b<r������\:E�u�,�@'�&�b4(�?�p��x�<�
����LI����� �5�t��f�Y�q���"�s�G_���JlQ"���y����7��y�\>S�`�s��4�wp6�7��u98��8[��g�]�;�<�ae������`�H6R�]4�N�M�(>���,01)���Z� ����cX����p���z���9��3@X<�;�\��l�BT@�N����������,�1�zK���j�m"��I��A�;+E����_���Z;5EWP��+`������|�&b�y��DCD�������0-����5���!��]������c�bN�������N�7Sr0�|p�?y]����o�����d�%7C UI�������,��&�e�`0����0�G�3��F���P$��:��\.m�b���3����5�<�����\��=!�nnn����'�b���u~�W�-���_W�R����}c�R%+��d��A�]uq����|]�U�6�7��\�����]u��Z���]��S,�
$��k�����<M��x�����5�<W�;�"�,/k�u�M
��`i�|,]�����|���1F�h�)�E�k���{-���D�D�\�HG�6YwG3���^"*mJ��Rst ��� ��'�@�r_��7����1��:�Td�v����`'���7�&�h*���"��}���!:]sZl���;�[RaEfn��2�kw�1��s��k�<H^��(���#S�T�`�^��Y��TO%[%�!������n:2w���m\4��_Zj��TB.r����9�/�1�4������E��yBAy�RD���1���V�{���-�������������1r!T�a�����U�(@9��t-�J���h!���0 ����P�Yt3EjG,]�\d��@�i��uP ~�5�9��d���uM2E8P�s�EN4;��A���hc��U��i[��0�O�T� V�m��������I���(\s������Y������7N��vl�63�y�
#�K���:zm���m�]�J��M�K� ��#�G@4lS��r?i\��t� l@������rL������v>;�.�o��$B��o��� �P}<���\��s������]�*���xn�2��M��D�RSs�p�K����yt"�(��)���gM{x7d���~�?��s� c2�"�k�d;#��=���G3S
��b�:b���S������j�f���Q��<�)v��5����3�BD�b� ��&h��oY��w���nr�D�.M(��\V�xe�+#��E��<at���n���VIu�~������?�`W����������5`��'����p���h<z�:4` +�Y&e��{�m��32�O��0j���C��D�}���L-+0�� 5��I$4t;���w�MWi�> � f��A@��v�rt�8���a���U��1�z���'� ����&9�$\�&r��8�a��a�Y�#���0�����V^���9k����-F��4��Y�j�o�=����n�.x��"���k���oxaL^[�����%��� ����z��3v3ubn�X�G2��tmJ��I��������������;;�T�`���io��u�����G��24��j�YdL\����d$[e%sb������Zb�']JI�!���'s�9^IU7�JIsf7�����4������\�IZ}����eh���W'/�����o]��~���o�6��j�� y�D{n���x�K���������Nj��������a=�=����q�Q�8�!��|&u�N��������c�G0�
�>E\X�7Co�
���Z c��
�I(����p���5����� �q �oA`�r�{�c�i�CP���1���;�Hk�m�i��$��{���w�b�V��N�u<�j�6DoN�#���i����/��/���;�������^3V�����S|
�2��H��[D�n*{�/bu�����VgWh��r�?�MU���?R����|�W�G8U����1N���*Sn�g�%g�>O�H?��Cx��u��y�,U�[�
7U�hnN ��*�(�RZiT�b^-T�H��*1F���
xr�)0GS(:E�Q���������b��n��3J����� �l�����������e���
+�[6'