Re: psql's \watch is broken
От | Michael Paquier |
---|---|
Тема | Re: psql's \watch is broken |
Дата | |
Msg-id | 20191214024453.GA3004@paquier.xyz обсуждение исходный текст |
Ответ на | Re: psql's \watch is broken (Fabien COELHO <coelho@cri.ensmp.fr>) |
Ответы |
Re: psql's \watch is broken
Re: psql's \watch is broken Re: psql's \watch is broken |
Список | pgsql-hackers |
On Sat, Dec 14, 2019 at 12:09:51AM +0100, Fabien COELHO wrote: > >> explain (analyze) select * from pgbench_accounts \watch 1 >> >> It behaves as expected. But once I break out of the loop with ctrl-C, then >> if I execute the same thing again it executes the command once, but shows >> no output and doesn't loop. It seems like some flag is getting set with >> ctrl-C, but then never gets reset. >> >> >> I've not dug into code itself, I just bisected it. > > Thanks for the report. I'll look into it. Looked at it already. And yes, I can see the difference. This comes from the switch from cancel_pressed to CancelRequested in psql, especially PSQLexecWatch() in this case. And actually, now that I look at it, I think that we should simply get rid of cancel_pressed in psql completely and replace it with CancelRequested. This also removes the need of having cancel_pressed defined in print.c, which was not really wanted originally. Attached is a patch which addresses the issue for me, and cleans up the code while on it. Fabien, Jeff, can you confirm please? -- Michael
Вложения
В списке pgsql-hackers по дате отправления: