On 2018-05-23 12:51:38 -0400, Tom Lane wrote: > Heikki Linnakangas <hlinn...@iki.fi> writes: > > On 23/05/18 19:25, Tom Lane wrote: > >> To make this > >> patch safe, I think you'd need to grovel through the subquery and make > >> sure that the parameters are only used as inputs to operators that belong > >> to the type's default btree or hash opfamily. (Many other cases would > >> work in practice, but we have no semantic knowledge that would let us be > >> sure of that.) > > > Hmm. First thing that comes to mind is to use the raw bytes as cache > > key, only treating Datums as equal if their binary representation is > > identical. > > Ah. That would work, though it'd make the number of subquery executions > even less predictable (since some logically-equal values would compare > as physically unequal).
As long as there's no volatile functions, would anybody care? Greetings, Andres Freund