pgsql: Fix incorrect calcSumX2 in numeric deserialize functions

From: David Rowley <drowley(at)postgresql(dot)org>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Fix incorrect calcSumX2 in numeric deserialize functions
Date: 2026-09-29 02:48:35
Message-ID: E1xBNtT-00000001gs0-0x9x@gemulon.postgresql.org
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Fix incorrect calcSumX2 in numeric deserialize functions

calcSumX2 is used to inform the aggregate transition function whether it
should include the square of the transition value in the aggregate
state. The deserialize functions for various numeric aggregates that do
use calcSumX2 weren't properly setting the property to true. This does
not matter in core as we never perform any aggregate transitions after a
deserialize operation.

This fix is only required for external code which plumbs aggregate paths
together in such a way that could result in aggregate transitions being
performed after states have been deserialized.

Author: Maxime Schoemans <maxime(dot)schoemans(at)enterprisedb(dot)com>
Reviewed-by: Andrey Borodin <x4mmm(at)yandex-team(dot)ru>
Discussion: https://postgr.es/m/FEBF5C3D-CC53-455F-AA9D-4D377A2E957C@enterprisedb.com
Backpatch-through: 14

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/6a93535798aa9219d01c01c67161a78780e2af1a

Modified Files
--------------
src/backend/utils/adt/numeric.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message David Rowley 2026-09-29 02:48:59 pgsql: Fix incorrect calcSumX2 in numeric deserialize functions
Previous Message Masahiko Sawada 2026-09-28 23:28:48 pgsql: Fix crash in parallel autovacuum when no DSM segment can be crea