Sven <[EMAIL PROTECTED]> writes: > If this approach is not satisfactionary and assertion predetection is > still requested, only solution I see is to catch signal SIGABRT, set > flag, longjmp back and report error. > But I really don't like it.
No, ignoring SIGABRT is surely right out. It suddenly strikes me though that we are being too picky. The reason (which I admit having forgotten) is that plpython only comes in an untrusted variant. That means that anyone writing plpython functions is already a database superuser, and has much more direct means of crashing the backend if he chooses to. So the idea that this python bug constitutes a security threat seems overblown. If there ever is a future Python release with a new sandbox mechanism, enabling resurrection of the trusted language, it would presumably contain the bug fix. Obviously we should document the problem in the plpython documentation ("don't try to use this feature with python versions before XXX"), but I'm not any longer convinced that we have to reject this patch on security grounds. [ Whether the patch is any good is a separate question ;-). I have not reviewed it. ] regards, tom lane ---------------------------(end of broadcast)--------------------------- TIP 9: In versions below 8.0, the planner will ignore your desire to choose an index scan if your joining column's datatypes do not match