mirror of
https://github.com/postgres/postgres.git
synced 2025-07-30 11:03:19 +03:00
Allow aggregate transition states to be serialized and deserialized.
This is necessary infrastructure for supporting parallel aggregation for aggregates whose transition type is "internal". Such values can't be passed between cooperating processes, because they are just pointers. David Rowley, reviewed by Tomas Vondra and by me.
This commit is contained in:
@ -2057,10 +2057,10 @@ search_indexed_tlist_for_sortgroupref(Node *node,
|
||||
* search_indexed_tlist_for_partial_aggref - find an Aggref in an indexed tlist
|
||||
*
|
||||
* Aggrefs for partial aggregates have their aggoutputtype adjusted to set it
|
||||
* to the aggregate state's type. This means that a standard equal() comparison
|
||||
* won't match when comparing an Aggref which is in partial mode with an Aggref
|
||||
* which is not. Here we manually compare all of the fields apart from
|
||||
* aggoutputtype.
|
||||
* to the aggregate state's type, or serialization type. This means that a
|
||||
* standard equal() comparison won't match when comparing an Aggref which is
|
||||
* in partial mode with an Aggref which is not. Here we manually compare all of
|
||||
* the fields apart from aggoutputtype.
|
||||
*/
|
||||
static Var *
|
||||
search_indexed_tlist_for_partial_aggref(Aggref *aggref, indexed_tlist *itlist,
|
||||
|
Reference in New Issue
Block a user