Re: [HACKERS] WIP Patch: Pgbench Serialization and deadlock errors

Поиск
Список
Период
Сортировка
От Marina Polyakova
Тема Re: [HACKERS] WIP Patch: Pgbench Serialization and deadlock errors
Дата
Msg-id d63e60a8b741ea57e72b29c9efb2e2ca@postgrespro.ru
обсуждение исходный текст
Ответ на Re: [HACKERS] WIP Patch: Pgbench Serialization and deadlock errors  (Alvaro Herrera <alvherre@2ndquadrant.com>)
Список pgsql-hackers
On 11-07-2018 20:49, Alvaro Herrera wrote:
> On 2018-Jul-11, Marina Polyakova wrote:
> 
>> can we try something like this?
>> 
>> PGBENCH_ERROR_START(DEBUG_FAIL)
>> {
>>     PGBENCH_ERROR("client %d repeats the failed transaction (try %d",
>>                   st->id, st->retries + 1);
>>     if (max_tries)
>>         PGBENCH_ERROR("/%d", max_tries);
>>     if (latency_limit)
>>     {
>>         PGBENCH_ERROR(", %.3f%% of the maximum time of tries was used",
>>                       getLatencyUsed(st, &now));
>>     }
>>     PGBENCH_ERROR(")\n");
>> }
>> PGBENCH_ERROR_END();
> 
> I didn't quite understand what these PGBENCH_ERROR() functions/macros
> are supposed to do.  Care to explain?

It is used only to print a string with the given arguments to stderr. 
Probably it might be just the function pgbench_error and not a macro..

P.S. This is my mistake, I did not think that PGBENCH_ERROR_END does not 
know the elevel for calling exit(1) if the elevel >= ERROR.

-- 
Marina Polyakova
Postgres Professional: http://www.postgrespro.com
The Russian Postgres Company


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

Предыдущее
От: Heikki Linnakangas
Дата:
Сообщение: Re: Negotiating the SCRAM channel binding type
Следующее
От: Amit Langote
Дата:
Сообщение: Re: Problem on pg_dump RANGE partition with expressions