Re: Add SHELL_EXIT_CODE to psql

Поиск
Список
Период
Сортировка
Искать
От
Corey Huinker
Тема
Re: Add SHELL_EXIT_CODE to psql
Дата
Msg-id
CADkLM=dgtu3Xxhr1q5cN9Q7GTBvPrX1usvSgDjYj+U7OMJ1Jiw@mail.gmail.com
Ответ на
Список
Дерево обсуждения
Add SHELL_EXIT_CODE to psql Corey Huinker <corey.huinker@gmail.com>
Re: Add SHELL_EXIT_CODE to psql Corey Huinker <corey.huinker@gmail.com>
Re: Add SHELL_EXIT_CODE to psql Corey Huinker <corey.huinker@gmail.com>
Re: Add SHELL_EXIT_CODE to psql Corey Huinker <corey.huinker@gmail.com>
Re: Add SHELL_EXIT_CODE to psql Maxim Orlov <orlovmg@gmail.com>
Re: Add SHELL_EXIT_CODE to psql Corey Huinker <corey.huinker@gmail.com>
Re: Add SHELL_EXIT_CODE to psql Corey Huinker <corey.huinker@gmail.com>
Re: Add SHELL_EXIT_CODE to psql Isaac Morland <isaac.morland@gmail.com>
Re: Add SHELL_EXIT_CODE to psql Corey Huinker <corey.huinker@gmail.com>
Re: Add SHELL_EXIT_CODE to psql vignesh C <vignesh21@gmail.com>
Re: Add SHELL_EXIT_CODE to psql Corey Huinker <corey.huinker@gmail.com>
Re: Add SHELL_EXIT_CODE to psql Robert Haas <robertmhaas@gmail.com>
Re: Add SHELL_EXIT_CODE to psql Corey Huinker <corey.huinker@gmail.com>
Re: Add SHELL_EXIT_CODE to psql Robert Haas <robertmhaas@gmail.com>
Re: Add SHELL_EXIT_CODE to psql Corey Huinker <corey.huinker@gmail.com>
Re: Add SHELL_EXIT_CODE to psql Maxim Orlov <orlovmg@gmail.com>
Re: Add SHELL_EXIT_CODE to psql Corey Huinker <corey.huinker@gmail.com>
Re: Add SHELL_EXIT_CODE to psql Maxim Orlov <orlovmg@gmail.com>
Re: Add SHELL_EXIT_CODE to psql Corey Huinker <corey.huinker@gmail.com>
Re: Add SHELL_EXIT_CODE to psql vignesh C <vignesh21@gmail.com>
Re: Add SHELL_EXIT_CODE to psql Corey Huinker <corey.huinker@gmail.com>
Re: Add SHELL_EXIT_CODE to psql Maxim Orlov <orlovmg@gmail.com>
Re: Add SHELL_EXIT_CODE to psql Corey Huinker <corey.huinker@gmail.com>
Re: Add SHELL_EXIT_CODE to psql Maxim Orlov <orlovmg@gmail.com>
Re: Add SHELL_EXIT_CODE to psql Corey Huinker <corey.huinker@gmail.com>
Re: Add SHELL_EXIT_CODE to psql Maxim Orlov <orlovmg@gmail.com>
Re: Add SHELL_EXIT_CODE to psql Corey Huinker <corey.huinker@gmail.com>
Re: Add SHELL_EXIT_CODE to psql Thomas Munro <thomas.munro@gmail.com>
Re: Add SHELL_EXIT_CODE to psql Corey Huinker <corey.huinker@gmail.com>
Re: Add SHELL_EXIT_CODE to psql Maxim Orlov <orlovmg@gmail.com>
Re: Add SHELL_EXIT_CODE to psql Corey Huinker <corey.huinker@gmail.com>
Re: Add SHELL_EXIT_CODE to psql Tom Lane <tgl@sss.pgh.pa.us>
Re: Add SHELL_EXIT_CODE to psql Corey Huinker <corey.huinker@gmail.com>
Re: Add SHELL_EXIT_CODE to psql Justin Pryzby <pryzby@telsasoft.com>
Re: Add SHELL_EXIT_CODE to psql Tom Lane <tgl@sss.pgh.pa.us>
Re: Add SHELL_EXIT_CODE to psql Corey Huinker <corey.huinker@gmail.com>
Re: Add SHELL_EXIT_CODE to psql Tom Lane <tgl@sss.pgh.pa.us>
Re: Add SHELL_EXIT_CODE to psql Corey Huinker <corey.huinker@gmail.com>
Re: Add SHELL_EXIT_CODE to psql Tom Lane <tgl@sss.pgh.pa.us>
Re: Add SHELL_EXIT_CODE to psql Corey Huinker <corey.huinker@gmail.com>
Re: Add SHELL_EXIT_CODE to psql Corey Huinker <corey.huinker@gmail.com>
Re: Add SHELL_EXIT_CODE to psql Tom Lane <tgl@sss.pgh.pa.us>
Re: Add SHELL_EXIT_CODE to psql Corey Huinker <corey.huinker@gmail.com>
Re: Add SHELL_EXIT_CODE to psql Tom Lane <tgl@sss.pgh.pa.us>
Re: Add SHELL_EXIT_CODE to psql Maxim Orlov <orlovmg@gmail.com>
Oops, that sample output was from a previous run, should have been:

-- SHELL_EXIT_CODE is undefined
\echo :SHELL_EXIT_CODE
:SHELL_EXIT_CODE
-- bad \!
\! borp
sh: line 1: borp: command not found
\echo :SHELL_EXIT_CODE
127
-- bad backtick
\set var `borp`
sh: line 1: borp: command not found
\echo :SHELL_EXIT_CODE
127
-- good \!
\! true
\echo :SHELL_EXIT_CODE
0
-- play with exit codes
\! exit 4
\echo :SHELL_EXIT_CODE
4
\set var `exit 3`
\echo :SHELL_EXIT_CODE
3

On Fri, Nov 4, 2022 at 5:08 AM Corey Huinker <corey.huinker@gmail.com> wrote:

Over in https://www.postgresql.org/message-id/eaf326ad693e74eba068f33a7f518039@oss.nttdata.com Justin Pryzby suggested that psql might need the ability to capture the shell exit code.

This is a POC patch that does that, but doesn't touch on the ON_ERROR_STOP stuff.

I've added some very rudimentary tests, but haven't touched the documentation, because I strongly suspect that someone will suggest a better name for the variable.

But basically, it works like this

-- SHELL_EXIT_CODE is undefined
\echo :SHELL_EXIT_CODE
:SHELL_EXIT_CODE
-- bad \!
\! borp
sh: line 1: borp: command not found
\echo :SHELL_EXIT_CODE
32512
-- bad backtick
\set var `borp`
sh: line 1: borp: command not found
\echo :SHELL_EXIT_CODE
127
-- good \!
\! true
\echo :SHELL_EXIT_CODE
0
-- play with exit codes
\! exit 4
\echo :SHELL_EXIT_CODE
1024
\set var `exit 3`
\echo :SHELL_EXIT_CODE
3


Feedback welcome.
В списке pgsql-hackers по дате отправления
От: Corey Huinker
Дата:
От: Aleksander Alekseev
Дата:
Сообщение: Re: Pluggable toaster
FAQ