Tom Lane <[EMAIL PROTECTED]> writes: > There was some talk awhile ago of preventing flattening when the > subquery targetlist contains volatile functions, but we didn't > have any consensus that the cure would be better than the disease. > (In particular, since user-defined functions default to being > considered volatile, such a restriction could easily cripple > optimization of subqueries.)
Thinking aloud... Postgres could have a VOLATILE function attribute to explicitly mark functions requiring special care. The default could be sort of a best-guess usually-volatile-but-sometimes-takes-liberties-when-convenient compromise. Perhaps eventually warning on functions created without being explicitly VOLATILE/STABLE/IMMUTABLE. Well, I guess Postgres can't warn on a valid SQL function if it's interested in spec conformance. But it could be an option to do so. -- greg ---------------------------(end of broadcast)--------------------------- TIP 2: you can get off all lists at once with the unregister command (send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])