public inbox for [email protected]  
help / color / mirror / Atom feed
From: Bruce Momjian <[email protected]>
To: [email protected] <[email protected]>
Cc: PostgreSQL-development <[email protected]>
Cc: Finnerty, Jim <[email protected]>
Cc: Andres Freund <[email protected]>
Cc: Tom Lane <[email protected]>
Cc: Tomas Vondra <[email protected]>
Cc: Julien Rouhaud <[email protected]>
Cc: Daniel Gustafsson <[email protected]>
Cc: Alexander Pyhalov <[email protected]>
Subject: Re: Partial aggregates pushdown
Date: Thu, 26 Oct 2023 15:43:29 -0400
Message-ID: <[email protected]> (raw)
In-Reply-To: <TYTPR01MB10954D890D8F729E1BCE42D4F95DDA@TYTPR01MB10954.jpnprd01.prod.outlook.com>
References: <OS3PR01MB66608567A5DE381D99BEE1A395C3A@OS3PR01MB6660.jpnprd01.prod.outlook.com>
	<[email protected]>
	<OS3PR01MB6660E61EB659850022B9607195C1A@OS3PR01MB6660.jpnprd01.prod.outlook.com>
	<[email protected]>
	<OS3PR01MB66601F4809974F6A8275131195C1A@OS3PR01MB6660.jpnprd01.prod.outlook.com>
	<TY3PR01MB10956C71BF25436F242C9829795D5A@TY3PR01MB10956.jpnprd01.prod.outlook.com>
	<[email protected]>
	<TYTPR01MB1095486F5E3103D783AF4748995DFA@TYTPR01MB10954.jpnprd01.prod.outlook.com>
	<[email protected]>
	<TYTPR01MB10954D890D8F729E1BCE42D4F95DDA@TYTPR01MB10954.jpnprd01.prod.outlook.com>

On Thu, Oct 26, 2023 at 11:11:09AM +0000, [email protected] wrote:
> > 	   and checks if the remote server version is older than the local server version.
> > 	   If so,
> > 	   <filename>postgres_fdw</filename>
> > -->	   assumes that for each built-in aggregate function, the partial aggregate function is not defined
> > -->	   on the remote server unless the partial aggregate function and the aggregate
> > -->	   function match.
> > 	   Otherwise <filename>postgres_fdw</filename> assumes that for each built-in aggregate function,
> > 	   the partial aggregate function is defined on the remote server.
> > 	   The default is <literal>false</literal>.
> > 	  </para>
> > 	 </listitem>
> > 	</varlistentry>
> > 
> > What does that marked sentence mean?  What is match?  Are one or both of these remote?  It sounds like you are
> > checking the local aggregate against the remote partial aggregate, but I don't see any code that does this in the patch.
> This sentence means that
> "If the partial aggregate function has the same OID as the aggregate function,
> then postgres_fdw assumes that for each built-in aggregate function, the partial aggregate function is not defined
>  on the remote server."
> "Match" means that the partial aggregate function has the same OID as the aggregate function in local server.
> But, in v30, there is no code which checks the partial aggregate function has the same OID as the aggregate function in local server.
> So I modified the code of is_builtin_aggpartialfunc_shippable().
> Also, I modified wording postgres-fdw.sgml.

Yes, that is what I needed.  Attached is a modification of your v31
patch (the most recent) that mostly improves the documentation and
comments.  What else needs to be done before committers start to review
this?

-- 
  Bruce Momjian  <[email protected]>        https://momjian.us
  EDB                                      https://enterprisedb.com

  Only you can decide what is important to you.


Attachments:

  [application/gzip] fdw_partial.diff.gz (33.4K, ../[email protected]/2-fdw_partial.diff.gz)
  download

view thread (38+ messages)  latest in thread

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: [email protected]
  Cc: [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected]
  Subject: Re: Partial aggregates pushdown
  In-Reply-To: <[email protected]>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox