* Tom Lane ([EMAIL PROTECTED]) [030214 19:35]: > Lance Thomas <[EMAIL PROTECTED]> writes: > > Below is something that may be of interest -- a short, 7-statement script > > that seems to drop my postgres server. > > It appears that the plpython trigger implementation assumes that any > given procedure will be used as a trigger for only one relation. The > reason it crashes is it's trying to use the rowtype info of the relation > it was first compiled for with the other relation. > > Probably the easiest fix is to include the relation OID as part of the > Python name of a trigger procedure, so that a separate copy is compiled > for each relation the procedure is used with.
Interesting idea. I had been taking the approach of applying the cache to just the python compilation, and not the rowtype info. This has a substantial performance penalty, which I'd been addressing by eliminating some unneeded parameter processing that doesn't apply in the trigger case, and considering a separate cache for each rowtype. > Any plpython users want to step forward and fix this? I have other > things on my plate ... I'm looking at the bug right now. Patch in a day or so. -Brad ---------------------------(end of broadcast)--------------------------- TIP 3: if posting/reading through Usenet, please send an appropriate subscribe-nomail command to [EMAIL PROTECTED] so that your message can get through to the mailing list cleanly