On Fri, Jul 20, 2018 at 2:28 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
However, that could only fix the OP's problem for these particular functions, which are a small fraction of the ones we have that take collatable types but don't really care about collation. I kinda feel like we should have invented an "ignores collation" function property, so that such functions could be identified --- that would not only let postgres_fdw handle this honestly, but we could refrain from throwing unmatched-collations errors for cases where it doesn't really matter. Maybe it's not too late to invent that in future. If the parser sets inputcollid = 0 for any function marked that way, then if the function is incorrectly marked as ignoring collation it would get an error at runtime, so it seems like we could add it safely.
Would this automatically apply to operators as well, like hstore's -> operator, once the fetchval function was marked? The non-shippability of that can be a major problem.