Re: BUG #17280: global-buffer-overflow on select from pg_stat_slru

Michael Paquier <michael@paquier.xyz>

From: Michael Paquier <michael@paquier.xyz>
To: Kyotaro Horiguchi <horikyota.ntt@gmail.com>
Cc: a.kozhemyakin@postgrespro.ru, pgsql-bugs@lists.postgresql.org
Date: 2021-11-11T08:08:34Z
Lists: pgsql-bugs
On Thu, Nov 11, 2021 at 12:19:09PM +0900, Kyotaro Horiguchi wrote:
> I'm not sure which is easier to read, but it might be a bit hard since
> the conditino term in not mention counter itself. I don't object to
> that way.  And, yes SLRU_NUM_ELEMENTS cannot be used here:p
> 
> The attached is the first way in the choices.

That looks fine.

Also, what do you think about adding a test in sysviews.sql? This
could be as simple as that:
SELECT count(*) > 0 AS ok FROM pg_stat_slru;

I am not sure if the buildfarm animals running valgrind would have
caught this issue, but having something would be better than nothing
for this case.
--
Michael

Commits

  1. Fix memory overrun when querying pg_stat_slru