Tomas Vondra <tomas.von...@2ndquadrant.com> writes: > On Fri, Jul 12, 2019 at 02:00:25PM +0200, Pavel Stehule wrote: >>> Mutable function are allowed in check constraint expressions but >>> it is not right. The attached is a proposed fix for it including >>> regression test.
> Yes, and the question is whether this is the right thing to do (I think > it probably is). I'm pretty sure this change has been proposed before, and rejected before. Has anybody excavated in the archives for prior discussions? > OTOH, even if we prohibit mutable functions in check constraints, people > can still create triggers doing those checks (and shoot themselves in > the foot that way). There are, and always will be, lots of ways to shoot yourself in the foot. In the case at hand, I fear we might just encourage people to mark functions as immutable when they really aren't --- which will make their problems *worse* not better, because now other uses besides check constraints will also be at risk of misoptimization. regards, tom lane