From: | Alexander Kuznetsov <kuznetsovam(at)altlinux(dot)org> |
---|---|
To: | Daniel Gustafsson <daniel(at)yesql(dot)se> |
Cc: | PostgreSQL Developers <pgsql-hackers(at)lists(dot)postgresql(dot)org>, egori(at)altlinux(dot)org, nickel(at)altlinux(dot)org |
Subject: | Re: [PATCH] Check for TupleTableSlot nullness before dereferencing |
Date: | 2024-12-13 08:54:35 |
Message-ID: | 18bda8da-1ab0-4a4d-9aca-826610a244a8@altlinux.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Hello,
ping. What do you think about reasoning below? Maybe we should consider
proposing different patch for removing redundant check there?
09.10.2024 18:23, Alexander Kuznetsov wrote:
> 03.10.2024 12:48, Daniel Gustafsson wrote:
>> From a quick reading we can only reach there after evaluating an expression, so
>> can it really be null though? This code hasn't changed all that much since
>> 2009, if there was a reachable segfault on a null pointer deref I have a
>> feeling we'd heard about it by now so some extra care seems warranted to ensure
>> it's not a static analyzer false positive.
> Thanks for your response!
> It seems to me that dereferencing is possible under the following scenario:
> [...]
> This entire reasoning is based on the assumption that slot2 can theoretically be NULL, as there is such a check at line 968.
> Is it possible that no errors have occurred because this condition has always been satisfied and is, perhaps, redundant, or maybe I'm misunderstanding something?
--
Best regards,
Alexander Kuznetsov
From | Date | Subject | |
---|---|---|---|
Next Message | Alexander Kuznetsov | 2024-12-13 08:57:18 | Re: Detect buffer underflow in get_th() |
Previous Message | Yuya Watari | 2024-12-13 08:44:11 | Re: [PoC] Reducing planning time when tables have many partitions |