• Tom Lane's avatar
    Introduce less-bogus handling of collations in contrib/postgres_fdw. · ed3ddf91
    Tom Lane authored
    Treat expressions as being remotely executable only if all collations used
    in them are determined by Vars of the foreign table.  This means that, if
    the foreign server gets different answers than we do, it's the user's fault
    for not having marked the foreign table columns with collations equivalent
    to the remote table's.  This rule allows most simple expressions such as
    "var < 'constant'" to be sent to the remote side, because the constant
    isn't determining the collation (the Var's collation would win).  There's
    still room for improvement, but it's hard to see how to do it without a
    lot more knowledge and/or assumptions about what the remote side will do.
    ed3ddf91
postgres_fdw.out 134 KB