Re: [PATCH] Fix possible overflow on tuplesort.c - Mailing list pgsql-hackers

From Alvaro Herrera
Subject Re: [PATCH] Fix possible overflow on tuplesort.c
Date
Msg-id 20200423194314.GA22975@alvherre.pgsql
Whole thread Raw
In response to [PATCH] Fix possible overflow on tuplesort.c  (Ranier Vilela <ranier.vf@gmail.com>)
Responses Re: [PATCH] Fix possible overflow on tuplesort.c  (Tom Lane <tgl@sss.pgh.pa.us>)
Re: [PATCH] Fix possible overflow on tuplesort.c  (Ranier Vilela <ranier.vf@gmail.com>)
List pgsql-hackers
On 2020-Apr-16, Ranier Vilela wrote:

> When multiplying variables, the overflow will take place anyway, and only
> then will the meaningless product be explicitly promoted to type int64.
> It is one of the operands that should have been cast instead to avoid the
> overflow.
>
> -   if (state->availMem < (int64) ((newmemtupsize - memtupsize) * sizeof(SortTuple)))
> +   if (state->availMem < ((int64) (newmemtupsize - memtupsize) * sizeof(SortTuple)))

Doesn't sizeof() return a 64-bit wide value already?

-- 
Álvaro Herrera                https://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services



pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: HEAPDEBUGALL is broken
Next
From: Robert Haas
Date:
Subject: Re: [PATCH] FIx resource leaks (pg_resetwal.c)