Re: \i and \watch - Mailing list pgsql-admin

From Edwin UY
Subject Re: \i and \watch
Date
Msg-id CA+wokJ_nqFaPF8YaLsgndawVT-Wf-Zw5hBaK5=F8UehD2PozXQ@mail.gmail.com
Whole thread Raw
In response to Re: \i and \watch  ("David G. Johnston" <david.g.johnston@gmail.com>)
List pgsql-admin
Thanks for the explanation.
Yeah, here's what's happening. So, yeah, we'll check on having to script it instead.

###
=> select now() ;
              now
-------------------------------
 2024-11-07 07:46:23.876888+00
(1 row)

=> \! cat x.sql
select version() ;
=> \i x.sql
                                                   version
--------------------------------------------------------------------------------------------------------------
 PostgreSQL 14.12 on aarch64-unknown-linux-gnu, compiled by aarch64-unknown-linux-gnu-gcc (GCC) 9.5.0, 64-bit
(1 row)

=> \watch 5
Thu 07 Nov 2024 20:47:05 NZDT (every 5s)

              now
-------------------------------
 2024-11-07 07:47:05.411747+00
(1 row)

Thu 07 Nov 2024 20:47:10 NZDT (every 5s)

              now
-------------------------------
 2024-11-07 07:47:10.418915+00
(1 row)

^C


On Thu, Nov 7, 2024 at 6:26 PM David G. Johnston <david.g.johnston@gmail.com> wrote:
On Wednesday, November 6, 2024, Edwin UY <edwin.uy@gmail.com> wrote:

Is there no way to use \watch to let it run the last script that I just run?

When do I do as below:

select 1 ;
\i x.sql
\watch 20

It runs select 1 instead.


Watch is documented to act on either a non-empty query buffer or the last sent command.  I would expect that whatever the final SQL command present in x.sql is would be the command that gets watched.  If indeed the preceding select 1 command is watched there would seem to be an undocumented interaction going on.

In any case, no, you cannot watch a meta-command.  You’d have to resort to shell scripting the repeated execution of the psql program itself.

David J.

pgsql-admin by date:

Previous
From: "David G. Johnston"
Date:
Subject: Re: \i and \watch
Next
From: Wasim Devale
Date:
Subject: Re: Bytea datatype content to view