Re: ISN extension - wrong volatility level for isn_weak() function

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Daniel Gustafsson <daniel(at)yesql(dot)se>
Cc: Viktor Holmberg <v(at)viktorh(dot)net>, pgsql-bugs(at)lists(dot)postgresql(dot)org
Subject: Re: ISN extension - wrong volatility level for isn_weak() function
Date: 2025-03-14 14:16:24
Message-ID: 3052531.1741961784@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

Daniel Gustafsson <daniel(at)yesql(dot)se> writes:
> On 14 Mar 2025, at 12:49, Viktor Holmberg <v(at)viktorh(dot)net> wrote:
>> The isn_weak function in the isn extension reports the wrong value if you look at it inside a transaction:

> I wonder if this should really be marked VOLATILE instead as it has a side
> effect.

Indeed. This whole area seems really poorly considered. The comment
in isn--1.1.sql says

-- isn_weak(boolean) - Sets the weak input mode.
-- This function is intended for testing use only!

despite which it's documented at length in isn.sgml. On the other
hand, so far as I can find it's tested nowhere, which means none
of the "weak mode" code is getting exercised.

regards, tom lane

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Tom Lane 2025-03-14 14:27:07 Re: BUG #18848: DEREF_AFTER_NULL.EX.COND After having been compared to a NULL
Previous Message Daniel Gustafsson 2025-03-14 14:09:23 Re: ISN extension - wrong volatility level for isn_weak() function