Re: pgbench: allow to exit immediately when any client is aborted

Поиск
Список
Период
Сортировка
От Tatsuo Ishii
Тема Re: pgbench: allow to exit immediately when any client is aborted
Дата
Msg-id 20230805.121611.2295180338896131631.t-ishii@sranhm.sra.co.jp
обсуждение исходный текст
Ответ на pgbench: allow to exit immediately when any client is aborted  (Yugo NAGATA <nagata@sraoss.co.jp>)
Ответы Re: pgbench: allow to exit immediately when any client is aborted  (Yugo NAGATA <nagata@sraoss.co.jp>)
Список pgsql-hackers
> Hi,
> 
> I would like to propose to add an option to pgbench so that benchmark
> can quit immediately when any client is aborted. Currently, when a
> client is aborted due to some error, for example, network trouble, 
> other clients continue their run until a certain number of transactions
> specified -t is reached or the time specified by -T is expired. At the
> end, the results are printed, but they are not useful, as the message
> "Run was aborted; the above results are incomplete" shows.

Sounds like a good idea. It's a waste of resources waiting for
unusable benchmark results until t/T expired. If we graze on the
screen, then it's easy to cancel the pgbench run. But I frequently let
pgbench run without sitting in front of the screen especially when t/T
is large (it's recommended that running pgbench with large enough t/T
to get usable results).

> For precise benchmark purpose, we would not want to wait to get such
> incomplete results, rather we would like to know some trouble happened
> to allow a quick retry. Therefore, it would be nice to add an option to
> make pgbench exit instead of continuing run in other clients when any
> client is aborted. I think adding the optional is better than  whole
> behavioural change because some users that use pgbench just in order
> to stress on backends for testing purpose rather than benchmark might
> not want to stop pgbench even a client is aborted. 
> 
> Attached is the patch to add the option --exit-on-abort.
> If this option is specified, when any client is aborted, pgbench
> immediately quit by calling exit(2).
> 
> What do you think about it?

I think aborting pgbench by calling exit(2) is enough. It's not worth
the trouble to add more codes for this purpose.

Best reagards,
--
Tatsuo Ishii
SRA OSS LLC
English: http://www.sraoss.co.jp/index_en/
Japanese:http://www.sraoss.co.jp



В списке pgsql-hackers по дате отправления:

Предыдущее
От: Thomas Munro
Дата:
Сообщение: Re: Is RecoveryConflictInterrupt() entirely safe in a signal handler?
Следующее
От: Soumyadeep Chakraborty
Дата:
Сообщение: Re: brininsert optimization opportunity