Re: Documentation fix on pgbench \aset command - Mailing list pgsql-hackers

From Fujii Masao
Subject Re: Documentation fix on pgbench \aset command
Date
Msg-id 1c140eaa-c2e5-4c6f-a1d3-71a1138169a9@oss.nttdata.com
Whole thread Raw
In response to Re: Documentation fix on pgbench \aset command  (Yugo Nagata <nagata@sraoss.co.jp>)
Responses Re: Documentation fix on pgbench \aset command
List pgsql-hackers

On 2025/06/27 1:31, Yugo Nagata wrote:
> On Fri, 27 Jun 2025 01:05:47 +0900
> Fujii Masao <masao.fujii@oss.nttdata.com> wrote:
> 
>>
>>
>> On 2025/06/26 18:01, Yugo Nagata wrote:
>>> Hi,
>>>
>>> The current documentation of pgbench’s \aset command states:
>>>
>>> “If a query returns no row, no assignment is made and the variable
>>>    can be tested for existence to detect this.”
>>>
>>> However, this is inaccurate, since variable existence check (like \if :{?var})
>>> is not yet supported, although such a feature was proposed in [1] and discussed
>>> again in [2], where \aset itself was introduced.
>>
>> Right.
>>
>>
>>> Therefore, I’ve attached a patch to remove this part from the documentation.
>>
>> Or would it be worth documenting an alternative way to detect when no rows are
>> returned? For example:
>>
>>       If a query returns no rows, no variables are assigned. You can detect
>>       this by setting an initial value to the variable before running the query
>>       and checking whether it changes.
> 
> That's what I thought as well, but I didn’t do it because we can’t distinguish it
> from the case where the query returns the same value as the initial one.

Could we use a value that the query is guaranteed not to return as the initial value?
For example, in SELECT id AS myid FROM test \aset, if the id column is of type integer,
we could initialize myid to FALSE.


> To detect it correctly, we would need to reconsider the variable existence check,
> or introduce a new meta-command or a special variable that indicates the number of
> rows returned by the previous query, and so on.

+1

Regards,

-- 
Fujii Masao
NTT DATA Japan Corporation




pgsql-hackers by date:

Previous
From: Yugo Nagata
Date:
Subject: Re: Documentation fix on pgbench \aset command
Next
From: Melanie Plageman
Date:
Subject: Re: Remove unneeded check for XLH_INSERT_ALL_FROZEN in heap_xlog_insert