Re: BUG #18134: ROW_COUNT do not set to 0 when psql's \gset command get no rows returned
От | Jov |
---|---|
Тема | Re: BUG #18134: ROW_COUNT do not set to 0 when psql's \gset command get no rows returned |
Дата | |
Msg-id | CADyrUxN2+vOCWarbcyw4rQ5XzVbsLJscFh_5tPVvL49YMYrxfA@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: BUG #18134: ROW_COUNT do not set to 0 when psql's \gset command get no rows returned (Japin Li <japinli@hotmail.com>) |
Список | pgsql-bugs |
I conformed this patch fix the problem, thanks!
Japin Li <japinli@hotmail.com> 于2023年9月28日周四 10:51写道:
On Tue, 26 Sep 2023 at 09:26, PG Bug reporting form <noreply@postgresql.org> wrote:
> The following bug has been logged on the website:
>
> Bug reference: 18134
> Logged by: amutu
> Email address: amutu@amutu.com
> PostgreSQL version: 15.4
> Operating system: FreeBSD 13.2-RELEASE amd64
> Description:
>
> reproduce steps:
>
> $psql postgres
> psql (15.4)
> Type "help" for help.
>
> postgres=# select * from cmdq where status= 'new' \gset
> no rows returned for \gset
> postgres=# \echo :ROW_COUNT
> :ROW_COUNT
> postgres=# select * from cmdq;
> cmd | src_ip | worker | status | ts | id
>
> ---------+-----------+--------+--------+-------------------------------+----
> ls /tmp | 127.0.0.1 | | done | 2023-09-23 14:39:59.047309+08 |
> 1
> (1 row)
>
> postgres=# \echo :ROW_COUNT
> 1
> postgres=# select * from cmdq where status= 'new' \gset
> no rows returned for \gset
> postgres=# \echo :ROW_COUNT
> 1
> ------------------------------------------------
> from the psql doc:
> ROW_COUNT
> The number of rows returned or affected by the last SQL query, !!!!or 0 if
> the query failed or did not report a row count.!!!!
It seems SaveResultVariables() was lost when executing failed. Attached fix it.
--
Regrads,
Japin Li
ChengDu WenWu Information Technology Co., Ltd.
В списке pgsql-bugs по дате отправления: