Re: \if, \elseif, \else, \endif (was Re: PSQL commands: \quit_if, \quit_unless)
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Corey Huinker <corey.huinker@gmail.com>
Cc: Fabien COELHO <coelho@cri.ensmp.fr>, Erik Rijkers <er@xs4all.nl>,
Jim Nasby <Jim.Nasby@bluetreble.com>,
Daniel Verite <daniel@manitou-mail.org>,
PostgreSQL <pgsql-hackers@postgresql.org>,
pgsql-hackers-owner@postgresql.org
Date: 2017-02-03T17:10:35Z
Lists: pgsql-hackers
Corey Huinker <corey.huinker@gmail.com> writes: > Well played (again). That one ranks up there with "and don't call me > Shirley." I meant in the specific psql-context, does it do anything other > than (attempt to) terminate sent-but-not-received SQL queries? It also flushes the input buffer. I think it is probably reasonable to let it cancel interactive \if state as well. A useful thought-experiment is to ask what behavior you'd want if we had metacommand loops ... and I think the answer there is pretty obvious: you'd want control-C to kill a loop. I'm less sure about what it ought to do when control is somewhere in a script file. I *think* we have things set up to kill execution of script files altogether, in which case we have the answer a fortiori. If not, there's room for discussion. regards, tom lane
Commits
-
Support \if ... \elif ... \else ... \endif in psql scripting.
- e984ef5861df 10.0 landed
-
Add a "void *" passthrough pointer for psqlscan.l's callback functions.
- 895e36bb3f36 10.0 landed