Re: [HACKERS] dumping rules

From: jwieck(at)debis(dot)com (Jan Wieck)
To: jwieck(at)debis(dot)com
Cc: emkxp01(at)mtcc(dot)demon(dot)co(dot)uk, pgsql-hackers(at)postgreSQL(dot)org
Subject: Re: [HACKERS] dumping rules
Date: 1998-08-18 17:43:32
Message-ID: m0z8pnB-000EBPC@orion.SAPserv.Hamburg.dsh.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

I wrote:
>
> >
> > Jan,
> >
> > Whilst you are working on the rules system it would be nice if
> > you could look for an oportunity to store the plain text rule
> > definition at creation time.
> >
> > If the definition were stored in a table column it would allow us
> > to dump and restore databases in a more complete way.
> >
> > I looked at this some while ago myself but never got close to
> > making it work.
> >
> > Keith.
> >
>
> Yes, that would really be nice and I had something the like
> already in mind.
>
> [...]
> On the other hand wouldn't it be too complicated to
> reconstruct a command from the parsetree, that exactly
> creates the rule. Reading a parsetree isn't fun, but after
> all I did on the rewrite system I'm somewhat familiar with it
> now (sometimes I see the cup in a targetlist, the coffee
> machine in the rangetable and all the buttons in the
> qualification when pulling a coffee out of it - think I
> should I consult a psychist when the rule system is fixed
> :-).
>
>
> Jan

To demonstrate that it really isn't that complicated as it
looks, here is a C function that if defined in the backend as

CREATE FUNCTION get_ruledef(name)
RETURNS text AS '.../get_ruledef.so'
LANGUAGE 'C';

can be used to see a textual representation of the rule given
as argument.

It is able to handle ALL the rules I defined in the test
suite for my first fix (sent yesterday). In addition I tested
a

... WHERE (att, att) IN (SELECT ...)

in the definition of a view. Worked too. The output can
easily be fed back into a psql and produces exactly the same
pg_rewrite entries that where there before.

It is not complete (aggregates are not handled up to now and
there might be some other expression constructs, that could
occur). But it's a starting point I think. At least we could
produce a view

CREATE VIEW pg_rule AS
SELECT rulename, get_ruledef(rulename) AS definition
FROM pg_rewrite;

Now pg_dump could output views as commands for regular tables
and add commands for the rules. It must omit the rule
_retpg_user in the dump, but that's all. All views and rules
are restored.

pg_dump should not select all rules at once, because if only
one of the rules cannot be converted back to it's definition
string, none could be dumped. Instead it should get a list of
all the rule names in pg_rewrite (without _retpg_user) and
then loop over it getting one at a time.

As soon as anybody reports an error (pg_dump cannot save rule
...) we know what case isn't handled by get_ruledef() and
could implement it.

Jan

--

#======================================================================#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me. #
#======================================== jwieck(at)debis(dot)com (Jan Wieck) #

begin 644 get_ruledef.tar.gz
M'XL(`,:UV34"`^P\^7?;-M+YE?HK$#6I)44^<[2U-]FG2'+,_63)E61WNVV?
M'T5!-C<4R?*(H^W+__[-#``2I*C#3=)CMWIY,0D",X.9P5P`></CZS!Q^93/
M]A]\IA][=O#5\^?L`8/?TP/Z>W(at)D_LK?`6,OGK]X\?3IT8L7<'UX^/3I\P?L
M^8/?X)=$L14R]B"XB7YVU_2;3JP'_X6_&TW^Y]9;/G-<_JEQ'!X<O'CV;*7\
M#[]Z_I64_]'1BV='T/+T\.#I`W;PE_P_^^^+W4_UJWQ1^8(I%8)+^*D[-O-#
MIFE:K<YFB6?'CN_1*+/3[8_-4[/=&IN#OAC[Z(Q;4QX>L_TD"O==W[;<_2BT
M]TE.XLJ%?]GML#U*-;CYCAWN';'#;[[Y>O_(at)Z_W#I^SPQ?'SI\?/OF8T@'7?
M!^P1XOYTTZ>9C+GKLCE0P>YN><A9?,M9X$?Q3<@1;>0GH<TCYCKO(at)$65T;#=
M,8<O5TY1P#0]VTVF`M:-ZT\LEUG>%,"&,8L";CLSQTY9'<$01PYX5!,(ZBE?
M]L3X=3T0;*72/NVUWHR>O&2[YJ-:SWQ]\2WVHCLU0L(`&MDIB'<VOPGW;O,#
M5=>)9;_EWK12Z75:G0X^[(dot)6(at)NL'/8JJ=WN#U/Y(at)3T5RG"\^:.\`4=['K^J`,
M4^9/_LWMF!&A,("ZO]0UZU&MTQM=GIZ:_ZQ7*O!P]-+0GN[YE4JKUWMI8#=X
M6A=87R>..R64T:T5IFC@&>`^!B;!&.BJ!AW#<`0M1[==;GD,+FV\.*X8X9SM
MSM0H>==`U(X'M(at)8APG\5`&+V1V/LQ,1E[QI8<CVX&(^P1>#"B^YHC&PBCA$[
M,^I+2,I-]S(at)W>]"GM?8_U_<WL_\O7CP[?)[Z_R/R_\\(at)`OC+_O\6O_W&)_E5
M6(/EU,?89:?2Q+/8QV?,8O(at)T8O#<\1SQA+^/8:AA&(SY2<S\&7/B'5C^20`^
MA!'8(at)G(dot)`EA7>09C-$J\0N->W8#%='N[9Y!D.4\]P\!4$F\=/OP'GD/,,`C7\
MQK=(at)C2)_%M^!94#+9/O!(G1N;F.P$Y,%^P>L_>\<;K]EN^S,FD^2\&9/'\V9
ME<2W8!_1'4#_F]#RXH(at)%/)P[480\0/:P).)-1K#AS]R?.K-%4\*8.E$<.I,D
MQAYH^,%[V-R+T"'HM.$C!T!/?3N9<R^VR+T*&(dot)A_+6_!(at)B0$;P2`(at)M!_YZ!%
MC6^MF/'W@,/Q;K+),<^/'?14`%G""'EL.1X,80X0#2:,Z'6(at)CZ"*(`F:Q&#D
MEG024PGC'0\G0-<<02`]Z=R`U&B/]7UV%SIQS.$I>$R.TVBJZ2I^P%18Z"\L
M-U[`Q#AGB"?D/R<.FFXU4]"D.&6^\Q]X`BR.]B2,<^0PN!;"BP+(LW)N+=B$
MLYRL4=@(T(at)DE#"E7,7F/8Q>8-_+:=?T[ZBM)1\[&('!4_<B&^:;\0*4H"@/'
M>?Q.CD!R&'J6T%T(at)YZ=(->)*98O]9TX8Q2RP;CA.G%OV+?G(+`A9,"L(W(6F
MFF:?]0>L>P6+BXW.P`VQ\5F7M2['9X,A(at)W\=<S0>FJ\OQX/AB+WNLI[9>MWK
MLO&`M?K?2Q(at)7K>'X>\9.H3OT'W;;XR9!SJY'%]VVV>J)YC8M97$W&$H8[4%_
MU/WV$M=XJP?WG=9YZTUWQ%AK:([,_AOH>CF&_TX9$<@N1UUU9XXDC-'@=/Q=
M:]AM,G,\8IU!^_(<$:&]:.)<@&+6Z0[-*VBZ`M(at)`:-(at)=G#9I^HH?"H%D`3MK
M775AXMT^:W6NS%&W(at)UBQQ\5@-#)?FST3Y(at)Y-H\OVF80A:-?7OPZPU>^P/%L%
M>]"T]7K?,WK8[K7,<\8T)L/$ABW(at)3G?4)";V+CO`%KA^C7SI#^"_GGENCH%`
MD$Y3(C7/+WIFM[,$0_#NO#MLGT%#2TP#!IV:XWYW-)+";`G9FNW+7DL)ZN)R
M"#,''M-$^H/^KMD_'0(I763VGA!(*(at)H&UQ?#P16('!BGF-SJLVIK!,^J['5K
M9,*,$):F>&5,(D$`0(at)EC\+IGOB'9(H,'2)G`(at)^NZ9?;'W7ZKW^Z2]EU>7`R&
MJ(B7%YW6&#(at)H873[9]@'"1^1AIP/.JF+&4D!?I+?/@2)*MK^6Q1/'7_O]E6^
MR74F2VT6N)%<6^*!J9SFVV:V%[O%H2%8&VS+&JO\/;>3V`_WH\#9NZUJ3VQ_
M/@?[%>W#L)L;\(^YIV"6W6B?N_Y-6?L$HF9P&E'^F>>#C=NG__,/_`#L/ACB
M<-]V+;+%)3"C162#\>)ES]SRAV`.+:`0O/\U`(ZBE4_C15`8*E*6:J52V6\P
M+9,#'7DC\JPI#,?;W,/]2H3(dot)U68V9`NL(at)4$-)"K\1#6_\YTI:P2NY5U#V(./
MV4O6O^SU3O(#?TYXN-"Z5$?='IA-0'<Z')Q#.'(=<G2'G'V']HHI1-#UT6'U
M9`W9*KF.2FC'D(LU]&2\#S`[,%&8"H*OET+N88BU%G!N;I@"IP@@5(at)O&&-'1
M%""V:S*Z[8`W%$VQ72\P!PD4#$((W^*5Y%A9SXB[D+#=8P#H+0_O,R`)0!?X
M/09,@:1[#4!&7//W05CKP5('8<36Q(7HP/%B%B+%4_Z^"2$2:&X#UU>337S?
M9>^L,`(at)AHGY?!A/EM1DFA+S0'[MM`S/>ALPQ&#`>=[T8IQR[6Q%K(at)U[%`G0;
M+UF#6MY9;BF[N$OAVS7J;&T`2PY:G&E95RN6`72A+Q%]Q."QE\RS(at)40IV!G[
M[;4SNPYA&)BK:6VU'/!)E`3E"T=;:9#F[+*.#U$ZA<\8.$)0G800[6J9D"%#
M:=M/W"F&H8B=61`*,B20(at)N*LIP\@[)!#.P6"B&GEHJ^L6_657RH434)/PVC(
M7B?4!MV2N6&`2*,?#G\2;<A=P_`2UXU^.))MP`<@"IQ,:(N&=.$;AESYHCU=
M_;(]MG6(at)C7@>Z`#!Z(at)%G\;[`7/PUV'=<1-]J^I!^H)&,_#D7X>^4\P"RHCM/
MC5B"L4]_-?N*?R`?K:4&<25VT%0/2U(@B-&%"9F#!T%XN`&3,V,UZ(T:CX-K
M=?;P)0Z_'OS?-<3#??`"]8K:&T'_6^L.AX-ADU4U"1XSV_(PX[!+2:BN)7O@
M:7D#EM@@">&!I2J6X+L0G.O[;Y,`/1&D*/:>QG'0N*EJ9SZD=31.0\^PV(6=
M(!]),`-2(at)ZG,)CTYX(at)`%I[4F<S<";-F0>D:0XBRA7L/0O,,5'K?.?JD8L-Y1
M=]'_"_TUT$,;Y*&!1]FS(at)Y_04;?.NP.S<Y+RGY(at)AQ"-Y5,MY[B8[;#(%`YAN
M*&)2(BK&DAQU:'4VLR!9$_/_L?HX^K%:;;(<#(at)1;""@00F2]X]A,Z.J"Y`]K
MI/Z&B_12"RVHTD*8*046]F,MK\D,$*LN?%B@/`2H9"%J:@%)2H1QH)ZU;&TI
MP?R=[7(at)[[)CML!V]^R%VW_GQ0#:2,9&SQ3`VR(F9^!XUQ5"0(at)T2,`A`#LV4E
M8BO4A])U)24(at)*U6E_'D<@50*4_R06\ZHJ:"W``?P'BI<AGJ,5:_H-K?83\V^
M.3HK4Y#<0L^-%J16ZYF&RGY*26$U^W;MJC4\ZPQ'_V)/B"\&W(_,?W5KLG,=
M>NM=1`](DEII#R&ZG5T0A2']5,XM2$V3EEUBARL*"'9?(at)=]&Z9]DG6)[J1-<
M84WD9`NE72H>TB9($J,[!3WTF4IS(C;G<S]<;-!C\#)`3BY03</3+"C%GB!R
MZ`FI%5S48%(at)=&*9XETUO20+06P(HX3TY-7P&M-K!HE9D?A/I:Q+JW1396I/>
M<2+E"6:A/_\5[FB-(at)FYV1BMT=#6]72M:P-R<R-M!&?Y]DW<N:."'LF!+ER9%
M6Q`<80P9)K90HO:PVQIWV?"RUV4R^4UC*2H=LAOG'?>6+,"F?*=R_X1'!EP4
M\S0FR4P+(at)?@[RE9%"[HO;*'L-HV+CK`)`UO1(at)C&KX437TNMJL!K0[^?$<@M-
M%N5QHA$#>:,A6B)T(at)69/B[]FGI_#@<9VG5Q;J/P8CT:!92O7PJ7\P#:2_UK:
M`U(at)K>^`.D"67U=>'WQS5MS$8:=@/:8>;@(dot)V(at)99&9$BG8M9AA\G)1SR!'F/"P
M)L4'ZB^EI"RQO$5OAURNXR!8(1/'`_1+IJ6)H)OL2\%/-9\-Z$(at)%-'QTCPA!
M1SX'/N2(at)A@YO$1NJWR='ERFOPIBU(%+4OL\Q1UP;VASQ5G8'1*0XY7BT6$/B
MTX:+:L]6+*95IS-9[)G]>A)2`(((U2-[\C"+C959S]:^S.KKHI`X]C'/S<9N
M$6-FF^DK=OO6KC=`B]X0%CRP1S?6NB\92^`BT=-&6K$868C2]$=5UAJQ07\)
M'@>KG\49N*4T2_>3%(8[)[9OB9.XT"FWL*V(LYW#G6,CAT16\L8#P@/>90)Y
MS5M,-L2`H^(`49]>/>!I<8#9'W6':S`\*P[H`$FE&)0(dot)(at)*"LQ(V/#7BXVLT3
M=QY'[-:*6.)%28#G18!/DG]H`!]/(5!&#(:20U,91RF0%'E>F4BNLJQ3(@IH
M+)'U<BU(&<9Z/:_]:+U>L0-=[W,<VB/&%&$7BD<*>%,9Q/K2FC!G&?'()L(at)$
M!7?0.*3;CI"[3''#5(at)_"4(at)(dot)B5FAF4:I5+;<1D:A\6"]."I>LT1`^WZ"JHR&J
MCJ(at)=$EQQ>1(dot)(at)$WR,14HP`[):67>I1%"3!J*NZ4M^58D2=2D'L\(F0=]]I4J&
M!TUB"01'P\MN(at)8]YZ)W!TH+%$S/=5H>]Y8L[/YR""9RQR*_K[,P<B`A(at)EU80
M`=`!GSH>'C?2S)>RC!I8X/U-?)NR!-A/N9ZAAU$EG,\AKQ&GP+C07JV$U60I
MS%]$2KA>'`BB;#ED-6=1;"[K5ST1POI0(*Q^HGS1!PCVP9+\(@H:Q4F#BAZD
M9(dot)8(at)]`?C,[/_YD2`3X%(at)OR)+-D\Q^K(at)YRBEN\EGC6PM/G3CQ=CD(!>L?5A5[
M4\HH`;FP0I(at)_'H`#^\6E@"D2E7F'(7;P`^P7AYSCT0B*7M.-%MG+!?7:F(:L
MV3:1^8;R8G(MRB1HG'-H[?..+)@<"Z[*B9=NM:@-#>HH[3I=:\"$>UL&MK2K
ML(at)TPX?J6@2WMZ6P#3+C%96!+VS>K(at)2F#F,*4*R`/5*V+:AY$Q5!^=WT1".NH
MCZ-CN5RDU)2_I8,GSAS2&=P<`%>YX'&U*0#J7KA$YGEJ]+*.(%L$D2N5O:@-
M19VWF`R%4OW>2H77[^?IF;,!B_$'3`ES^Q*-B*NMAFPC"G<67)E4#RWOAH\G
MKGC0(at)!!&RW'QGO9\]%T(:!(VL-`(03UMT(`]U$&$<C_+]URT;NCA](&.EGD;
MC;7Y]"G5Z._D+H?8ZO#96\^_8W>W#BQE5(1;N)MGYY[4V!"GR<C=,M",$$]K
M2?LB%`DK_D2^;(V)7=+6"!(at)0`&-?')H+8#;92L4O4>Q"YY%S_]++2$YGZ7WD
M_(?[,Y'NX0P4&-D?X_&:0]QF#OM;]AQNGSS1PR#T6B6[>%CL;+*:V+^K*YK$
MO%$<=8A+ZJEGD^3]X/R4"E&U2\$_>;+DYNZ%F2*O',Y5>(T"TKR3+AUYVNJ-
M%,D?MO&$?=`C(ATGH9VC(QF1-A64"1(\9S;C(6U*"AA49FGTN]\U2#4;[<OA
ML-L?-_8P,HY\5&681,S\N2,R+CKN($Z%*!(at)0S_-PXZY/MNC22,I-K9Q4,Q7`
M/$P9\^3)3[+B#BLT=KR$:U$MB`N#D9Q]R((25^WO/,0X8Q[4H#M(at)XC-A7ZLT
MZVI]"?S:,8H_)>,TLG+F1,FU-(U:E9,G@;;P10+`=N46(,@DLA;26-\G1Q<C
M"L&YA_!B?!7BCDXT^DP8=%;+;`R:F#1:!W.-.0ZKKI2FMD#5ODI,^V"UW%&#
MG*#T6!`P4)-`A+%A93E3B5<G*G2&H:;9>XSZ2W,_9:E]F&LH;&\D=O3%FL""
M(at)A(YY8"%):"G&@]S<O_R2Y8C0`3(at)^4P)`9$T#+DZ#(VWQOIEHK#F5(at)H^,#:O
M"NBTU;HH*KBQ_=)8'KHD8*;+-_]<@G9E74C(at)+<B3YKJ<?8J"R5*12:.5.GQ8
M:6=;4LHB299B!OQBKT&3M^83RLITGRCE3G%LH]%E1QZ"Q;(EH2TX2];^I[+X
MKQUQV3:Y"@#>-`EP+O4U(at)6<QV%\*/#TF2V3WBSS7'PS[WXH\TY,U,MP$#2T:
M-:_$J*GAQ=B26$A!`*0K3?&B1R:FO;T]=M7J7=(A71EY(K([)^*%;L+G[/T5
M@/ZY`]"_PK<MP[<1*$>L6=P[!Y1:K@>S/QXPZ=8V+HA2WGC:PN!1XL9#58+?
M174I6S.Y"%`GI%JRXU)PO$6?J&6<Q6BPMFTXN#$4+/6@)1&#_CAVB>YHZL_I
M[]*QGWS=-%='5I,3!HW)+7!UOCOS]\7P3O?_+S?X?PE;5)+E+%;$>`5NT>F7
M31PSMF!766'VU\30RU7HY2)T$<^*.N2?)7XI5CY+XA>Y)WB_^&7].?7/&+]L
M$U"4&C(Y36DA8)&,?Q\[)NG8PH0MA^)`=.GZITHKKADK)*TB*^?/V`Z>.1='
MC6E_?Z=(at)^CYI'EPQ/M[J%;+,E^5IQZJU7RJ6)FX1DTDHV?[3]N(P1;;^`*G3
MZDGD,JKRR?Q!K5!QEV.Y?"^/#=S/"*U_]V6=$2JS+O>T)Y)BJJC\KH&13L(at)]
M`R/K#U(at)JH*#U3Z/9Z;1*'"LV<WKY?BMM_N(at)7LW2%U_0]%24(dot)REX62'.&_'RK
MJ7]!$`?9,?G5(at)K@,,'7'S-UD4Q^/V:HT'E_XH/?,$3.]N,`FW/7OU$@;N`2N
M!\VO;]L)OLU1.`^!DLMM!T5[V6XZOG4SI\\(3,2+..S.#]]"%CZ+-V7M8GN:
M6#*V;NAO/=N8'E^W;FY"?G,,9A=K=48`NA7/:M4?O<?1CQ[X,QKHCTCGY&@Z
M[93;5Q5`:-=TP>G=+7&*J:KJ>(735./K-Z&?!&U:C1^)6X-T'P+P';T4<Y?T
MFM[80\,EWM^K(T;"MV19Z;A706N(at)*:\T>,B@(=X%I-=WV:WU3KVA(SZ?(at)79I
MXL1LBE^"@%LYI`AC'_^DA^4`WNXK/T@/&,@R+LYJ<''=_>?%\)C.BJVV2VJ]
MI6NM(D]$L+26(at)0-0N_R`$-:U+MDR%,(PRFJ[R^C]@(Y[U6J#@"-SU3QX6,<_
MGG\_</>>#7UV8IOIE)I%0S\0J'-\N(+C\D#2[R:'.KZ$7_OMN;><=6[#4PE-
M'"71V-OJ=_[B[V?D;W\P7L5?_`[&[\WCZJ]9DJ>7_78VJ8+SS[_#O8YXS0>4
M$IQC:H&.[`32?;Q:WJU)OU'JSXP/NCC+O-N5E3FW*RI#`.7HVJZLG&=;3(at)]6
M!>XP'E]!"SU?1.MIF(Y(at)MB@!9ZXJ)V./W^VI2:6E*2,MNF]1(\X&+`&'0`O/
M42(at)$^?J7)#N5*)8+M4E""J#40J+8O&%9,C^%FZ2DJO;R;L/):)7.X'OUBC`L
M<Y"GK*Q>%F7Z@('V1\99%*O?(\`:)9.>X[U-L<I[K(@E$Q>N4--DHZZ2XDRK
M/-2JGV.MR7&[K^!"5"L%F5FE+(W51-5-J68Z$,T0AEYZ(at)E<FM9JF,5HE6#3H
M1:0ER&O4L6Q#_5>85B.M1#67[&>J7R7E=+(dot)O(at)JD/E<HJ;[K-J>`R*WU/=:3/
M4:2:H=EF[9,5ZIL5I!E+D(HO652V5^M-)T(3#[,Z+\OE\$!H7C3U*(at)DC(dot)PB:
M3Z]6OY0AIRKWJU8FVZF+6JX?X4<`"=U6J?9'?Z]D76U)^QH%OJF=?HWBU`_G
MU_)#`_1D1.^+%LO:935RG!W<(]FX]&FRL/*U9&&;%Q73K^JD7U38YM5$.0=\
M4XQ;H7T[6D1M_*@"3;%V,1P,S$Y32G9`'S0UI^FK^HAR]Q7^[TSK5.O!?]H+
M,P]3;IG1%:3YTYK$5Y?O4N344GS-07XN`G?(:1:@A_)%X";+(91,R7A-S-/$
M4&=ONN/1>'C9'J=X3S8><+-4K0E6!HPBKX0?"*C?XT";^O+'E[6,NMU7$EIZ
M/&;9&*TOW(at)N%(%I6U(dot)(at)VE(dot)4WF%JVRLBNVJVL;OBHB:S(at)*<T4GPCY?2IY<5;(
M`^/2RFT89Y4\/(E*U8GLA8GT8*HXD6J!&0KGEJL-VLLZRY>V)'#;=Y.Y)]_>
MRCI9'KY4##9V[D.0D[ZV$;(D2K!8EO4,DACI":SI%%BVNV\G\6Z.F1K0T$^\
M_V_O6GK:B(%PK_17Y$+9H`"BXD1+)0YMA=2B"J5"/:&E;$(D("B[E/;?US/C
ML<?K?3AT2WN8[P)YK#VVQ^.Q9_R%PD6R.95Q&6:[H_/"?Y,39T'"U>**V%(G
M/DU&-/WA]G[/^&++_&H/_H>LF4?B$P)NRH?[\/*)KY<8,GOM]#`<4-98/\DN
MBR.PR!33&[@>H[$VJ_35A1&F4^4YZ9GNJL-Q/U_><T-(dot)%*M!(at)KT<,9E!3]J)
M34?%K(U]+QU#/0QG!7AK<SZ%"])E%;`46B?E3C!D+F%?P'T9^1_HQ''0RFK'
ME:)"<4]3'!>"&&YW/)@D9)MUP?ZW"_9)1:;LLI"3`^-WU>,2:'V0P[(at)4-/JX
MPO'S9E+9FPDEA-'1[<U+031!<76<L?(at)M-`+F,9><"!(dot)V(dot)D(at)BEJH[`F89!]U\
M/?A4K-5DBJ[L/*A](BBK_K80(at)CD+!#DYG1X8/1UV.K;<>Z+X?T8AB&I9X<LR
MGQ5C.::L*UZA7!0+=V2(at)`K<Y!"/@(5(+:ZO)SI?>PO=&I]Q:`A/`[?BJZVP_
M</+>1-:53Q=]"=;,8B&##R)P=!R,,U\;W/HC,L6'`FMN7F&>85S/X:[:SF(at)(dot)
M5Q:K7;QQ)!P:<JK0:_*_$9+D3B:ZR&*40KE;'5"_R4</%'XIPV\U5(at)4X`()N
MG7TU-&77UC1]SR'OAPCN<_),&OPLX6!U<&'&7A-4X;D5S0M\'\PS?B3=I(at)^W
M\]7)W6RYL3%;F#\71B;CJ@:;V^(G5",SRIGSIW%G35Q:)$'+TC;]]J5K:>.6
M615%GHBT%<Y6"XFW[:L;*)4]%7&+6U.5HBE^C0MZ4RYR7#6'\;&+S!(dot)UD(at)(dot)Z
M).`;OH!NSWPE.^_,_S0*D]$K.2A,"8/#P:Q"X*QL8SDS,TE66?C$N-Z7.-VY
MXRTOSF2TL\]BE_80BG:%6YOEUN$A\MQ1K7([7!,YV`ZOF9HAV3IP2GVD7X?@
M]!K,C+O\!<Q7:0D:+52P\4Q!ZHYH(at)X'OTF<\5TC7[;=;U/KL_:<NM289TA29
M:^KWU8PVNWZ2&LWDMU[PV%$C5A2AQ*[:8!C]F(MR?*92U]"&(0$_MG>"C(M'
M%^Y_>'O)C2IAU.UO66R5EILW20O26'YCG8#%GS7BF,OP%M1\'"@%?;U%)8ZG
MT].OGWM5(L.78Q(I03VHSB3E\/V\B1=O&I4%#H.Y\D!Q7&-!;>+.D+IC96K1
M'%>066HIU;55;Z*+*J(at)VM!_/Y78:+Z+GXN0$$IEL8ESM:K(XB3$[!;Z$M.C@
MSX"5[N532)^M0O7F<=DS]*0D)W%RXJ(.,AU[NS'EET)2(D(1-\<W!8,S[BJ0
MWXI/+)-U<R"DEGU%+XW/D,_1(;9Y52(ZMK8DIB1.<NZ1I2DE2[RWL3U?P33-
M9,+5GTAFBC-]!'W=(](at)ZJ5IK2Q&XKUU2I(;4K00R8'[D8\DRRGQ3_"AN2K!]
M1YTU!\%;<2W`O))GXLPTA]H?AM&[ND.<=)?D^M%SW!"^JT8QZW#R/5/D-P[\
M^MAN5]-:;N9!EP.)KVMJT-*U"H[CO[5>C(I.Z4`7'JU_N2/Z^:2HYJ)II(at)P8
MW'RA4"@4"H5"H5`H%`J%0J%0*!0*A4*A4"@4"H5"H5`H%`J%0O'_XS>B9>)Y
$`*``````
`
end

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Jan Wieck 1998-08-18 17:47:48 Re: [HACKERS] dumping rules
Previous Message The Hermit Hacker 1998-08-18 17:17:49 Re: [HACKERS] int8 type -- call for porting results!