Rules: first fix

From: jwieck(at)debis(dot)com (Jan Wieck)
To: pgsql-hackers(at)postgreSQL(dot)org (PostgreSQL HACKERS)
Subject: Rules: first fix
Date: 1998-08-17 13:21:39
Message-ID: m0z8PEC-000EBPC@orion.SAPserv.Hamburg.dsh.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi,

as proposed here comes the first patch for the query rewrite
system.

The tar archive contains mainly a little test suite that
would fit into our regression tests. You'll find the patch
itself (src.diff) in the directory ./ruletest.

Changes:

The syntax of CREATE RULE now accepts () in addition to
[] to group the action statements. I looked around to
see, what ANSI says on CREATE RULE with no luck. But I
found what other database systems expect:

Sybase, Microsoft SQL Server and some others use
CREATE RULE to add value checking on table columns.
But Sybase says for ANSI compliance the check clause
on CREATE TABLE should be used.

Ingres uses CREATE RULE where PostgreSQL uses CREATE
TRIGGER (and it uses ... EXECUTE PROCEDURE
proname(args) too on it).

AMOS uses ... DO proname(args), so I assume this
means trigger like in Ingres.

INSTEAD NOTHING rules now create an action. It is a new
query command type CMD_NOTHING that is treated in the
rewrite handler as a null statement (thrown away). This
allows now event qualification on instead nothing rules
(formerly not supported).

Queries that are fired in by the rule system are now
executed before the original query (if it still exists
after rewriting). This is required because a constraint
delete query fired in by a delete rule would become a
mergejoin (or the like) that does a scan on the triggered
relation, but in the case of a delete it cannot find the
deleted tuples if the delete takes place first. The same
would happen if an update modifies the key fields. This
might interfere with table constraints or triggers that
check for foreign keys. It could be a situation where
only a real trigger can help (Bruce, did you receive
PL/pgSQL?).

Major change is that relation level rules seem to work
now (as far as I tested them). I was able to create
insert/update/delete rules on a view that do the required
actions on the tables behind it. Constraint
update/delete rules work. Instead rules with
qualification can be used to distribute insertion into
different tables (user inserts every time into the same
table but tuples are really inserted into different
and/or multiple tables depending on qualifications).

Left to do:

Create more tests.

There are still problems (don't know how to copy
object...) when using a rule after creation without
starting a new backend. This must get fixed.

Create more tests.

I haven't had a look on attribute level rules.

Create more tests.

I still must look at the update new stuff. I don't know
what it currently does at all, but I know what it must
do. It must modify (or extend) the actual parsetree's
targetlist entries putting in the rule actions target
list expressions.

Create more tests.

Last but not least: create much more tests (would someone
be so kind to assist?)

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 ruletest.tar.gz
M'XL(`%H(at)V#4"`^P]:W?32+)\C7Y%DV''3G`2/?T(`^<P0[C#+H39P%S.GMT]
MK&QW8H$M&4DF9-?<WWZKNEL/VVJI93LAS$8'8DM=KZZNJGZIR^%L3&,:Q4?W
MKN\BMMYQ''*/P&7I[-,P^:>X=$+:3KNMF[IN.U"J=_3V/>+<NX%K%L5N2,B]
MZ47T:5P"-^R[]_Z`5YBT?S0(O6D<'7W#]G<Z'4LW#"RU=?NN_;])^X<S_WWR
M\+!<):J7H>MMVY:UOPG&82;M;YL="TK;N@'^K]^U_[5?!P?:P0%Y"XT=D<`G
M+OGLT4L2C]R8>!&)Z)@.8K)/@G,HBMW^F"*XZP_)R(V(YT<TC(]FTZ$;TZ,A
M1:O!AS%UAP2-*")Q(at)`A](dot)G(_4S(8!Q$E8^\C!0Z4A-0=<Z*'`*1I7)9WE/B4
M#(at)D:($'"9`Q_0BSE_(!#')`0R]_')OGLCF?`J&FTB&GL/2H',@'(K`*R`,@"
MH"(H*\_/DO"S\OPLLPH(^%E6%9`-0'85D`-`#DH.>A2`O*(at)`[;.1KXI17)4<
M$%3%P*JD-G$>!I,4C/,4)G#IQ2,R",`07#\F],LTI%'D!;XFRA<PR>6(AA3,
MZS$QY-25Y"\AWT?RYIKTDZI7`EDE^MG?)V=T0B=]&C+K%\*BFZ#G)8#'Y$5,
M(O<J0H1GK\F+TS=O3YX^(\].7IZ\/2'/SUZ_2MK=(.]^/3D[8:H;S,*0^O&A
MBVAO`N``[AM[$ZAY`(T1!I<1;Q8$-LD$PAZYH+&08JC]8ZK](]Q$(at)46H"X;(
M$8MU6$0T7HM9Y$Z$_467[G2*<<0-H:)C+Y+P;O9;Q-U+1,`;52F0GQ]<<G:!
M/[Z"/U3P(VX<AUY_%E,)UXSE(C]+SJ_X>=H^7N3/QF,NUC(at)O`7`8>N?G8'=-
MUNY],#Z4-+4ZL"30'`7`?O"9[FD\H&>%$5*#]G?)0QB;KS`LM9H$J$J)G&<D
MCQT+0GWF0J%1VF8N(at)I2TE@R_U\M9N+T&@6XW)?`3<?2Z5EOF$(D-'KJMU#X.
M^X)=5(at)A"I*5NN:H3-7O8UT\HF.J'P),K-^71SRDY8UPSGA:ZN:6H<;D=/H%1
M9;UF6]084#/UG!%DFB[593)P(N=!R"TV=*&^B8K%>"@J'KA$5S!*FJ2=1R,(
MP<8;+=)XZ?FS+^3/KD_>>73PL5'8[2QC^T'\X1*QWWG^Z=L,FS2AA/:#X..>
M(B$ZC6=,CN<>#-]H^)F&C>*A$'REX;D[H`65H/%(+V98(at)64H8Z55KL4KJU^"
M5H`WI6$$L3%%XGPJFF09J3]!I)_#&;!_%4P^>*XO8><.)]X*-ZZ40DZ%\%P=
M*O!<,*$(E&C!081!H)/`5Q][T\>D,1W/XJ`A7"3W7%`!(D5^DNJ_V(V87,O\
MA1J1_S3A\N&2J5VPGPYI-,#'68-(^"<,5N.NJ.5*?;C6-ZL.#PQG.*S[-'/'
MWKDW<&,@RR8TQ<&`3J99^V!E1]A$CJ[KA[K$MA=0+C#>($I7SW`6U(K(at)J%(dot):
MU!2Y?$E4NO!TU%#!_0CL(G?LAE?XI"W8%M'[(J.7H7=*T+%U5QL0:2P!<R5(
MV(at)[@Q\&%1)$3-XHR94[H%<0\4*9=H?\E--?C:$Y-M"N&U:YJ;$FMD-JCTBHO
MZY[Q7]"_^/*0-`PA156++1`[%(\7VV,1A#TMEU.ED6L3%=[X:C:.O2EXY,"-
M!NX09(at)7"->%;?KVBQ$=C.S_=;)S101`.230*9N,AN8`)5P98W(@Y`N:F!`R]
MG()33<'9F$*O@@);)HH[U=JHJ(S-";6K";65"'6K"76W1,C2-VUI6X5"H0O$
M=K%KQ([D>5ORO"-YWBWL6I%MP5.G\&F[\&FG\&FW>$&NMZE;]C9UR][&;MG;
MV"U[VW++WK;<LK<MM^QMRRU[&[MEKZ9;%GIVH2_UTNGU3S`7_98>75_F/OD_
MTA":OZV2LQ6#%HA:K'28'S%[1\.P]6\:4?F`Y9<1SM[9-(at)RN%8(dot)9T=#S+W`?
MAN^KG'LACETB`B88XKIJX:"%X>76R27+TPS,7&+NG:=#(YA<CI#[Y1&NS(at)6S
M>&EF<QF$'R7K'(CJ+ZS4-RYQ80_7IXN];`G#K(W!HO`0YG&-F-3$[*V+R8)E
M391>;11K[9I9:]?,KE\SISY*>P6ET%`Y5J&OLR)ST0CB("#1Q!V/2V0P%\6N
MAP+S)<!Y_1<E8#,'+*^=9`&:E5F%(ZY$*9(24UIBR15IU_98N[;'VFM[K+VV
MQ]KU/=:N[['VVAYKK^VQ=GV/M>M[K%WFL5(OEQJT7>7G$LNUE2Q7U9_M^B'`
MKA,"[.(0(`T8ZZFK*G`HOO\3T7(at)VW>X;0.7O_QB&W>XLO_]C.<[=^S\W^/X/
MOH03L>F3&%X&_"4%_C:06!0;A!37!-D;.]FF7!.'S[&-(at)VO\!,LN(at)C,5X:P"
MN`20"9/NX[E1\;3$2`FS%;T$_CVX&^+`<%4X7GYG<A(at)D@UUMIV`>D0U4?'J)
MF['XT=^3<)I-AX*36$65<9+M;PHF??&UK^UDFZ_IBQX2YA`Q!7,1.V7,"Y98
M\N_BY/AH%4:RLO>9O`J6&`X(at)GP8Q/<8O.U/P,S(-Z6>@'G'VTUD<X_QB$(R!
M%-=\/W0''VF,;<;00OIIQN8\R'6"Z[G$';#9!Q/F$%]ZN<2W:LX]GY((R/%W
MU78R6:D[&*5(>7)^<"FQ;[%1U$SVB&+Z)6[ACA';A,*[8CO.MAZ74+WS]*88
M4VR`-:<YI&D%-[[#MX"2YYISH9RM``1:JB$Q55%SL)@E.\VJMKA)B)::W&D[
M.\M[:XD]B2>/Y!*9=27BU=],&HDX8,B&Q)U2<8I<*5/2FGH`DN8ZC+DNUJDN
M&EY)Z!)V6:;]:4[W_+O8L5V28EHN(at)SR"Y64HK[J,944D&P<7%QB(2GH\W)1J
M\OVHP<@-84BWE^Z$3(at)*?7A6[*-^06L6\'`4$'[62P,2*#"P"-0)=3K1%(at)O$P
MO9.R8'M[5=(5Z!U02_I'K#):6^'&)-8JWSE27IL+&D\O9@"/M\V]%OC(at)3F(dot)$
M$;?!>T\N%(R&DVU/B5ARB\RV!S-ZY'[.V/F3[4@>^,&J[(N<Y'606[2R:A-6
M94*>"_5RE1:)5V'^D^IM4L1/=TJ);%1HYT=Q\GXK=A3AVHIP'46XKB)<KP"N
MH(UC&[W'D+A/;*<=$!O8D2>/\>TU5#^_QR7_JA&H(QN!2L4Q:XAC+HICZ1*C
MA(:H(893$E-B9UD*8C(at)RKITZ7-ME7-LK7$VG2O5=*?<*=V)2H5/R]?NR7D4L
MU`MK*[9&ODJ_/#\"-U^VS`C&MM0?I,,)^JE04XS>^]"2Z$J(5*X<(=(dot)*(at)K[$
M\*C92`5HL!#58-PM<L!?3Q<;9^',)U8X!"41.QY)N@(AK%TJ;-JX:,2&KE^#
M\':!\*8_+)?:K%+QMJ0S"Z0SHKA<.N.F#<"H-H`*SUK>F"KQ++$$J13OQ?J;
M.JQ5`]96ZTL8K+Q1>'6T.OT)3$'Y.HE1RM&LQ]%:Y&@O<!3M4L;.*F-G%E2P
MRIM%(at)ZCW%$(0NT*0PFK]\<Y_TB]3L!$ZO(8#P#7._]J6V<%2QS+NSO]^F_9?
M.``<S.+K/O]K&WIN_9^W?]NPS;OU_YNX_OK[R=G?CHG2R5H5V.2`K0IL<LY6
M#KMZVE8%-CETJP*;G+U5(at)4V(dot)X*K`)B=QI;`%QU=58).CJ`)6=CS)G9.^=O`0
MAD3&W#`T<VZ86M-DQT#WM`2Y^C2N,A?.P$`&&?TZE58X>5JORK6$6=*JTCG?
M-5H`_EA:TU)O!L6JW^ZCQ14-4WPJLJPE9*>%:[2(B2UBFIHU-Q5;I%RDZD/$
M6Q.N]G'B=3D;<T+(at)%OY8^,?&/P[^:7:71%(\F.S.&2,DC'21+%)%HEK36:)9
M\PRRBB\MP6[>%*I'DNLQ9+S,N6VJ,UPYP[P6QUY/G>/*H><:707P,>;=+K"%
M/UMPOHT.2]?0E(7&8*$Q6#6,H?((]?5&!MF9Z_6CPH(:[+EE(at)P-;SFI4J'5Z
MNT(<PN5A`A$F$6$B$2X3$\I(at)4AE,+(/)92@(5OM$^$:2FEQ]3%*326HR2<UB
M23<[-ZY,1/'XN#H]R2ER*0&5L^3K(AMUD5=.EM="7CE(at)+L56(dot)&:NC"LY;2[%
M+S]S7(at)\M/7JNBK9\`KW(+=<\AU[BG/GCVQQSSE_&`6=EUT/^H3$U$#+'!H31
M3N[6(at)%M6VZR4293=-FV%H9$X*<[>29(at)+6;2\"`<:LB!SP5K<"<Y:?X)W(at)G%%
M/[3F<7I%X<FB])GX3,1,1LXQ5QUVF]1'8010=5Y_&\U>T;!FS8:MJ9M4&69E
M%U"9+4`-LS!I0)$-U<P=H$RB7(at)J!,K+JF02D%E:24*"DP9-CYAQG\9KCJSUD
M+E[K80[,7^AAGLW?YH$K,<.%Z^&"R4B_:DSGRWS92N:<O6O#'SQP6EPM\)5]
M,+ZL>M6X75T(at)YW&9.B6X_$T9AMO.^*8BJ.)V,MR43)G,YSF94T%SXJ_.,-?,
M!5$#NR`E1!WLE<P0I8Y=FB#BSH;_$#;,[+&ZOG:1KI(at)UKJEGM$52C=LNPBV?
M?BDG)%&*_^OF);ESCSOW^$;N4<:W2L]E?*OT7*:K'&ZNOJG:M*9A5`[9%9/W
MW'G>G>?=>9ZRYY7(+&FCMHK,$MR.BLP27"<7+>S*D7?-[%HJ=,PMT5%*ZJ-$
MR-D6H1HI?I0T52/3CQ*]&@E_E.AUMTM/*?V/"B&[!B%90AGBSOND\M(6NB;I
MA3L.I8H2U(BI!&;J<P6ST,RV`EA7,[M*8):N))NM!M;L**S;80*?[;:#42J=
MDU`S'#6PWES!W5<74F5)B;9;5T4K67[O0Y89:<L-H:@Z%>&Z6]?<5AU'X?TN
M##CR0J>LL%U6V"DK[)8%T]Z6^OW>EOK]WK;Z_=ZV^OW>EOO]WI;[_=Z6^_W>
MEOO]WK;Z_=Y:_?[Z(dot)0`K!(at)[ED4@KCT!:^3A!*Q\?J.V&_;?UJLGK;4U=!>&V
M]W32VFR:(/)['@]OM[^V[YSH#^Y$W]5P<9OY4^^</`$SE"9'EEH5;.-NTGM+
M)KW&W:3W.XEB!4F02RJ<Y$*&.L\'*K5^J-(at)F<V->=D8_-?NY.2_+-)#!67.%
M=`H`9\\53MVOCD;JYW)61337193FB54FT-N0P&K66&7,WKJ8UJ:UMC:MM;UV
MK9VU,=LRS+)\L?E(M1"/<(R0$L.10'9CZOF;7N[&SI<X^9MV_F:EMUTC.;4J
MIK,V9CY/K2J(dot)N8I3EGZVUM(at)]R4M+6)MI?.\=AA#Z_/5?H$W8A\**9M+RY0!F
M%8!5I11[W;!GKQOV[$W#GKUIV+/7#GOVVF'/WC3LV9N&/7OML&>O'?;LZK"W
M5G+M[R9DRO-\UW*2&I'17CNFVFO$5+LLIJZ5"/S;QN-[=]<?-?_+4(at)+X+62`
MJ<K_;MCF<OX7NWV7__TF\[^HIG8O`3?K(at)5N5X,KIWA?1;B#K>QG#FTK^7B;#
M->2`E[>D4HIT.;IBIG0Y@<J$Z7+4ZKSI4BVK9D^OGSQ=)5MYE5AF3;$J,JAO
M+-(-I%&OXG^=V=2EO%5SJF\KI7JY(`J)U=?,JRYW,95TZ:786\V:7LI)*7FZ
M5,.W(85ZJ7#?52+UTIK<EG3J):.;HF2O)>!./?!V/?!./?!N/?!>)?(at)MR91>
M(=3-YDN7"W/]6=/EO&\N=[K<H%92H5>`EF5$7T0MRHLNU<7MS8Y>)?)MSI%>
M)?MMR)1>)>,MS)<N=Q%I^O,*%+,^BE4?Q:[3=UQS9O0JOM>2'[V*Z0UG2:\2
M9YU<Z7=KK-_%^B_^&7M1?`T\RM=_\:'-UW]M(at)`,`S/]N6W?KOS=Q+:[V:_GD
M[W>>^]_D_]DO_HZNP?_+?O_!L-H6\_^V;G1,F%/`$].\R_]_(]</]X_ZGG\4
MC33MV<^G3U^=/$[=GWZ9!M#)\\>:]OSL]>G;D]-GCW?9+[@>^.2`DH-/Y&!(
M'G"8W00E`=4T(dot)A(at)%9'<?+S($HF%PA6MR"089NC`F="-*&,BN)F"&_01BD808
MF,!P14J!(at)ZP2V!6?9S/?3WXR*-J%TC!\K&OLAX7P-?9_#=R8)'WAO\(at)CG'*@
MD3)DJ//N(at)Y@<'AZ27?;T05)3\E/R^]D/V&]FDR<AC69C?A_,8F(^^=%(at)*-XY
M&4RFY"`B2Q#I!JRX?X2IW'TMZ2.Y],%'SIB.([I4]/SIBY<GSW:U':P1YW7N
M:</`IYH&3/].'D`!M-DGHI,#EQR<LZ52#/],X'_F&28JR[Z'0FUYG-T56&89
M2<O\E(?50)82,>+9^7E=,1(<%3$26!3C+N(at)7Q?\H'!P.O?/S&Q__V;JE.R+^
MZTY;M['4=N[B_XU<V.3D8!`2;/\(at)]"Z.^OB[V_[P:.J&,,D[<GUW?/5O>CA`
M"&FAAM&YDL3.\]`C3V<7A'2(81SK]K%E$*/7Z^+K1J7T=U[!K!,Q#<`TC^WV
ML='CF/N+%Q.D8YNMCF.R+H&19(at)\Z-N'OM9$X=/T(0O[D#*S_33R)F[\AOS<Q
M=B[[TP(at)_6R0I)/L1_-T#O/_`_YV_SFAXM0.&N_\IO'JD/<P_X;M1^!+5SDOH
M/W+/(GR(SS^Q1'43]R,]#8:TR7#W'HF2(at)R>#8#)Q_>';JRENL_WRZMG[W]^^
M>/GB[=\8/C`[VL>_9)\TEF;:#?$;>>*G.,0OMT)WAOMC/J5#X(at)K,3\(at)30$`+
M%Y2OR40!_\5*>AEZH(,1B#"F(1FX/G&'0RP3N#[%-%'\]_B6>,2<!EJ`!^W&
MV1R2=PFJZ+Q=P9_)B0C8FXMJDQCKC;4^??WVUQ>G_R-0V2I'/(*N&7]ZA/?P
M)(+^T@,^_:L%V?F&[B''/,(/Z'::V(0'3T1;D,>/R>F+EWO0H%`LVF]G7RCR
MO:2)$#0'4M160FJ$9>"@NS-4,OLAPQ,_#J^:B75Q(at)8+^!^CT#V"T,.8[4;O[
MO_Q^=G9R^G9_M\5(X`5F]/SIRS<G+?XA9%F'^.G)NRK"J_4,N8T\)IS\P1.8
M,+)'*?B2=LG8G4[!C9N(at)Y!;)T>*2?T4T,/@,?(at)$_\92C_6+G;G>9+[,'`+:3
M2>5%;/(*!.-P1A_M``GVDY$PM$+C<L=CM(A%G)$;/;VX0"'.71A4,>;W`6)\
M[H51W!0R[3&:(FJPB)&H>@F.NW*N:F-<VTV+6>E7C6>F(YV>WNKTNDE8NJZJ
MB#WRQX2;,MG?6Q+Z$0-#-^%/%DW[_H)M[S'8:U=/9;]T$;J3PZNB3H.7E/9(
M'&2Y.W*.8?)9UAT)M#<ST1>UB6X=F_:QV97W14;/T%OPQ\EZH^11.VGXU],8
ME89=QC$A0M',0?]#'CP(at)+%@](E^9ZN8([4V\?Z,#(E8.;#P`)38?&"T6W3*,
MQM\;"8^?Q\'@(VG\LY%A/3`1\B&';"Y#[JU`(DWAHWG0X_3V%?Z,>'4+LH_W
M$)Q8]U$\P%B&*6W59>""]NV6MN\*@<66MCO'3KNTI:%5NVE(at)0G_B;H`N=/K[
MRY<XAMAA(at)PA6&%+VBEL6Q'\+(C_U'%':(C]&,RC[#%.^][/I'M+2R8\_<C=L
MWO?\YV$P^65,YG.2!\0^3M]C''=VZ#BX:)Z<G;T^(at)TZ`L6*OSY`_1;P79;_P
M/@EX)^N3P!_0W52"G%?"9XBQ1O0HO$L(A[-I4SP!6&'A+5.WTL!V*U0!O3T#
M1'[W06R8AC=3RKE^=P_Q"P!8WYF1V?'\&+3QWO.']`NF-UVG"H\$K1#FR:%/
MFAR[/V;=.01J/QXU4QX'>`1_N0].2'S=3DMC&/A:J[WE?BY&9,GG,WKN^<L3
M"0E,L9]+@)F?_WDVAMDE,2`:6\<PRRST<QF!_.S"@"AQ;)3YN>.TC'8[&X#L
M\H$WC'.P7PXN0</858M-,O(at)F7E(dot)"5O?C",?).*R.X]#KSV*ZFQ\4<%=A(at)(dot)]Q
M=`W63>Z+*01^AV&!&/;O(7"^N=G];H;*-NIDDP245;S/-(9.=#;%=3LZ1%D.
ML-E_`#%T_A7'882-PO&G!"E(#3RP$H,QYO%-ZU&POXFC=>B2/E.D#2B"3D.=
M4`K6S(H?\Q##6L'@(4;9!G_E$YMR(TR!E*PPA5[M;BQ;R0PS"HMV:,`LUY+;
MH:FWS-RH`F_3$<4/GC\8SX:4[/HPA8F.IJ$W8=\.1[O<L3.(?.<'<RL*(,EH
M,WT&LR'?F\YXQ\BG5<4$LMZ3,5J1`V%D(at)BRIY0VW2@0LJK[MM!P]J[[=;CEI
MAX,QTAL0'%"1?3;H/>,T7_LT&02G=6/^MX`QI'0J$!AP*<KGP!N27T9T\/%_
M/7KY&PTG4?-,*(&=86@)JFF\?KB`*AC]%M)I&`QH%$E9IGBB+,$,HEB(at)G@;^
M&_9&0['$\(\Y,_@@S.)A4BTHO**Q2PZ*(at)YW5!3<SDV#W-:5R'ZEX0^JR*7E`
MIK,X\UH68_Z_O:/K:1O9WM?\B^E+&QH7DI"$4$0E[BXK(57=6\I*O4_(Q`9\
MF]AI[)1&J_[W/9_S83MTVTNU?2!2"_',F3DS<[[/&7.57J.>6:4W0#<K>4B!
MAKAB\/0S(FW*%*(at)+U@7"<X/!@;BD'\#XI8E!1#VKC*PO30C[O?J!P7<JK,&0
M3=GE9VB3EARU>>*%8Q0=,JHCUIWX/#L*NLE2+AEKML!%(^*JXMEM-P/O1N<0
M4T;V$]&`F>#_2S*BP?,*6G;4+<IVK)-&5I!"O'B5E6<JY]EHJ>&C'G;P/#)V
M!#$+)$]`%H:N6T'E20(at)DFD@-DAS$]\SU#&:CWM:7'8S`^CWH*P=N)Q0LJZT1
M!6U&1'%_C2F!OM`J%AJ`.Z+KN\X;7:05U$BU:T[RC9FGBX75/^N\8HV\^W\1
M3T(at)YCEK:2:71ZI!N]/B'",NWA[T.9'8<JY6NINYW41^37SB$OP_U86Q;<Z(at)O
MYOM(N6>\[ENHV4[+0-]$^JV*>7\4#4=]9R#*(78<-5S/XQM`Z.+\C],C:?LM
M^WR>EDFQP*!+V;62^\6K*E[=I!0=4//,<QG8Y[>]Q?7G/NP3?&'S8#0$I`Z8
M/UOUZ6`0C093#VOYT*;*D#SB;1HO+V?SHDS1.4G15[%ZWPLF!:O=T;,CK#GW
MZ<2-TB#WDD[$)J3;!]-HY(R;!T?-_-F*7.`+W8-BZVY.)]'H<*R[Z31O!^4?
MB1K0N"C:4-V<5>F*"B1O5\7ZYI:CZR0##%#X?(.RC`AOUYB3:^B,'H0O_.Q(
M!'D;H_8%88K`S$Z,[O_P;W-CO-T9=BA2P3LQOKUC1\/<6$71=5'`%'@L/B$"
M-W&6`SH7MQ93DNLD2LG:!YL17&3XYX9+\S*C=(-H_'(7-I+_</E+(at)`4VK#8H
MM*_):8*U766K!#;JA;E!'X$V<(L0)SHY'(%-:.GDP3;=(at)IS`ZED&:D7K;9JM
M3'&7NQV%,SKSU9(%IH1'2]ZDC#^E8>;$CF5A*>;+B1B83Y,PC?Q+!OKO'+8Q
MT)U*%JAG<[*Q<,5W)KZ+-UOF=2MV(SS0.;4QRW(at)`QOMPZ(D>G[W4.0;>Y=,Y
M]O4U:\HC]%A":X`4H03)'UBS(JV-AP?@<.Q[,NF[<%YYI^69,3\&[]:]W^]'
MX]'8[7U=1[79#BQQO3!%T`V?U./\7K--\Z(at)P]L:1Z""&.FK:@ZR(Y]CI$F11
MLIY5,*S8%FH&A,UBW,/GEV*Y.<F3DR1Y"QU\92FX1,;AX,#8,]#PF_31%(8>
MS<H.PHI!5(G+"=/*;0I&3F.E*AHSC*Z;[.4,\/V=DG?>WJ@'U\%<T(MO_C`D
M6-+OJG1I!B_U.TPN!..N>]M0"["W/*3L[GHYQS]UO,K0D64N`*M_?#AT7/!S
M4H^:NIKI]>E$3%79A+/\NNA0<P:_81LW`ZMZ>_E$]O+L&@4H7J:!?R$7D[0/
M!+02),`U\^0H3<LJ`_VR3%>814N37?/O-444`[#M"?C2%(2.)_P93'PG1#-)
M,'&.BL(D!3S,JF>ETJ\I\OG&`F6YF<4E+D22[ZF;DF9"2V#[3)2!W`7K(,L_
M8&^8$(P2'"5)KV,PKRR,L`;,%].,6#&@.A$V!9Z';&T!81F-0,V.+5G(*BU(
M^"@F#4-A79^)R8:ZH[#6S3REWNNE27,T!'9MW^:)[SF7J2Z+;$D!BP^_%>/F
M*G,T7$_^S+;>-E&+\?]^5-L!%_)7ZK0$NTO<T.D<&Q\BR.<>U4'`'KP$ILX+
M@)JG^0U,&0)+X,KTS-`'=NC6Y*O?&AD5IU;4ZH,6D6ME;=!'UUM'W).LM04[
MOK42`(at)\(T]AG;]Z=GE](at)BB=X_,=_?CVY.%5_%WRQ-^E=]ZF=*PJ&WW'CUZD@
M+'UH`,FA_8,*I!>X_&WY_N-:OI^+1<#-K+)\S34?/Y$6:K5I)OO1>'+HN[(.
M?:=$+9^?$B6\#:QI.)X9VOFPD^@(@`AS/A-JOO?OWZ-5;A=4(at)J=5511TPMM6
MU5UA8YA%GIJ[/7L^D3R`#;;0MG$7?`P0;"C!\#ZZ*`<ZUH)N<:$,YE-3X#W2
MQ)-!/YH,`A_Y0=?\LZRU[;PG_0&L?>@YV]!Y>0UH=Y%Y;8!(at)2V""MN0*N/%#
M(_XI-=I'+J)9#QW>FR>(S%51S$-C1-,!-9E.L48ZR!'6-^U[3NRVQ1#B3<-$
M[1)0GG<QQDRWADPC[>\YA-"=1,::/$74PXEY)CK[6>"9MJE(U9`UP^SX:X99
M0XQJB-0+P&PYDIX)MZ"'X>+VI(KAUDZ<4"`D2:LXFY.)02$.=VK6VN%B0H9*
M4A3L2.(\1VW.O3"O`]_^;F8'NO[)I9WAF&2&73L;AN(ZL6R`II(at)PM@,N=W:3
M>U6:W`5,/`S!F'R-CGNI]I`3K-J0^;`<;30VCV=$&>X8MP%H+]UAM!Z6-H]G
M(`D$^#D8$SC]-=B,.<H2,NL\1M9JS?3S$I`L4>T)*+UQQA5R5I0+P`I2::]O
MC2WM]"*EX=:85Z:O-9Y!847G^:I*.;ZG?3NKA!]03+[SO)KSUPO:#8&JY(at)*%
MI1]`CQBMS0MZ1(]7F)UN+^+8CB16=6A!IM_+90MA8(R64VBS@"-8=?VB#%>T
M*1:%Z58(at)=]OCQ[(;G8I*"[O>ZEQ58#676>T*H2L0#4YV4E5OUHON*(at)$>F?-:
MH`?]]`I(.HVV@@IDO/WB(M!>+6*;N`)1:;^?O5LRGY;',81GI9W<\V;_I,AM
M$3+_\=(,R9+!FI7$7V-V86>/W_]6/E:97NAMQ?%F)BQ75-3W"LP[R%RDBP,#
M+\P0$R%:T[(*Z$!("GML80H.F'M69K539Y-Z4-VP:)=NL+^OP4UW8UUJ^,MU
MDA7;AK/PN>J';>WX7)&R@:X.F;^6$W0'>[TC_=[`.F`G;@YYR(at)-37!KC`(2D
MA.S<9%L'@&Q""^?A":/K/ULD%1>.RZG6G#3JW-8DI>;O3E^?_G(A_00_$2.+
MN)K=XC&47=<S,B%2D1?8DFEV[I_5P]JQ,*^7YW_"+K"_6BN2L(<&,54(=:3"
MN1:Q%-J3+![W5(>EEK\4L5DG&4[=!4]Y;CL>HRX_W#K"@;Z^GJ"_0X(at)J`X5"
M+JG8[\AK612))D#[EFJ^93/"H1&&MP85.TK:8_-BL..-?(*B\%PJJ7#<KIRP
MU3ML#/;J3K(at)^".;S^X7,8%N>ZA(5Y2_;17Y+DDZO"/1<+I;Q/5*]\(/-\%8?
M`\SRR=B[=B!^NJT841ZDIQX+DAG<PGUD!;B],[X<UR2OH'6IWI6,[M)97BS;
M)D9-8VSR*Z;]PV(at)Z&&U/`$_&!]%DXMV:F(at)X(dot)HNEH/TR[&F9B?[IZ<,KX9]TP
M:M&6J\?M.!B)18E\\XCLP#(#)X2</X'2]Q;YJOMJH_;E&H.5NN22JXP$\!:C
MB:VF0$(5H(GI8J$6UY?(at)U//L0[JSJ^#O"@P5SBBLB?>$;],%W4BR'1H+W+,2
MI7Z"3X*;1U(!LOPH?,**_GFU6![Y[1BAJ_M&V%R32<N/D:G-YV02C-ER`V3Y
MT4H5[G"?#0,];.\:2AKU\A^#B6(at)!\**G"MT&41L?RK,.O3Q[#<;YZ505TDK-
MAP?10=^GYH-I-)V.E9JMY/#+`UO,-,,[N,67"XTO>SWP7"L8KUYG^0??^+>!
MN*]U!)H%M^JMC=NUK7':/R"6]N(>2N7'?*-+"EK(&SP.A:0G'9\*%/Q6YV6I
M2'X25!T[#^UX>_V)G[_,5=Y)`A//X_"P'QT>CK?+H^D`!-9PXMV;Z??[T:#O
M%X(@;GJ_V^IKR<8Z'+641YY$]OJXJQ+:YG^'<8EXE;;E;KRKC)2<42^\F>O'
MO$FM<F.;=RLE)R$"_A+O76']'+>O\*(U%\7\#)*1LM&`"`IG3?<PX%4ZBT'H
MZNM$479*H;OG[Y=FD=W<5(at)2>%`(9YQNI#Z?HQD;29Y^*#WA+E7(SN)LR<+$2
M,!D=L/-R9(B^WA[E6C^LO)]AN4)>64RK.RR'<9&4]',Z6].)X#5/34SA\*`+
M,-3)@(MX<Y5ZN(#12>%G4!Q9B5L4K_3J;#F+72A#M81$EH+]@'ZX&:!W2-<L
MOAK?<+S7J_.>+7^SY]XH^'5A,^G#@;-FQ;R48>]QH;;4:%/9>FM+6!O?VJ5>
M$#]YV3\("^+;P;Q;5X/)R^'!R_X]5?#[_7&T[V*_'9?CB<@\X;H0O(B!ETQ-
ME^AF-=\(A>\(JR'8K^`H79Q&^O7-[Q=GO_V78J3>/6P=%#RADNP$*06*]/TF
M$3GGD5>G!H?[*9ZMUXO(I-5LEV?\8GY9B*M'YT1[PHMQ\NU'+R9ZF-7T[!SV
MXB*,F:P7BXWES6MF8SM&[:I(T%;+H/MMK5OW^!J/!WC_D[R-Y(at)?,84;WOO\)
G/GUY_\<0WP!"[_\8#/YEQH_O_WC\/'X>/X^?'_;Y"ZF1A?(at)`\```
`
end

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message David Hartwig 1998-08-17 13:46:29 Re: [HACKERS] Regression test status (was type coersion)
Previous Message The Hermit Hacker 1998-08-17 11:35:26 What does "cannot extend" mean?