On Sat, Apr 8, 2023 at 10:15:40AM -0400, Bruce Momjian wrote:
> On Fri, Apr 7, 2023 at 09:16:14PM -0700, Andres Freund wrote:
> > extensions (string)
> >
> > This option is a comma-separated list of names of PostgreSQL extensions that are installed, in compatible
versions,on both the local and remote servers. Functions and operators that are immutable and belong to a listed
extensionwill be considered shippable to the remote server. This option can only be specified for foreign servers, not
per-table.
> >
> > When using the extensions option, it is the user's responsibility that the listed extensions exist and behave
identicallyon both the local and remote servers. Otherwise, remote queries may fail or behave unexpectedly.
>
> Okay, this is very helpful --- it is exactly the issue we are dealing
> with --- how can we know if partial aggregate functions exists on the
> remote server. (I knew I was going to need API help on this.)
>
> So, let's remove the PARTIALAGG_MINVERSION option from the patch and
> just make it automatic --- we push down builtin partial aggregates if
> the remote server is the same or newer _major_ version than the sending
> server. For extensions, if people have older extensions on the same or
> newer foreign servers, they can adjust 'extensions' above.
Looking further, I don't see any cases where we check if a builtin
function added in a major release also exists on the foreign server, so
maybe we don't need any checks but just need a mention in the release
notes.
--
Bruce Momjian <bruce@momjian.us> https://momjian.us
EDB https://enterprisedb.com
Embrace your flaws. They make you human, rather than perfect,
which you will never be.