Re: Fix for Extra Parenthesis in pgbench progress message

Поиск
Список
Период
Сортировка
От Fujii Masao
Тема Re: Fix for Extra Parenthesis in pgbench progress message
Дата
Msg-id 0f7ac0fa-f26b-49dc-b9a0-d35c29ace3a5@oss.nttdata.com
обсуждение исходный текст
Ответ на Re: Fix for Extra Parenthesis in pgbench progress message  (Tatsuo Ishii <ishii@postgresql.org>)
Ответы Re: Fix for Extra Parenthesis in pgbench progress message
Список pgsql-hackers

On 2024/11/02 20:43, Tatsuo Ishii wrote:
>> Hi,
>>
>> I noticed an issue in the pgbench progress message where an extra
>> closing parenthesis )) appears, as shown below:
>>
>> 7000000 of 10000000 tuples (70%) of pgbench_accounts done (elapsed
>> 19.75 s, remaining 8.46 s))
> 
> Yeah, annoying.
> 
>> This occurs when running commands like pgbench -i -s100 and is caused
>> by leftover characters when using \r with fprintf. I made a patch to
>> address this by adding extra spaces before \r, which clears any
>> remaining characters. While effective, I recognize this solution may
>> not be the most sophisticated.
> 
> The patch works perfectly for the case that there is one extra brace
> as shown in your example. However I think it will not work if there
> are two or more extra braces.

Are you suggesting adding more space characters before the carriage return
in the progress reporting line, like this? Since the line includes both
elapsed and remaining times, its total length doesn’t change much.
I think adding five spaces before the carriage return should be enough.
Thoughts?

-            chars = fprintf(stderr, INT64_FORMAT " of " INT64_FORMAT " tuples (%d%%) of %s done (elapsed %.2f s,
remaining%.2f s)   %c",
 
+            chars = fprintf(stderr, INT64_FORMAT " of " INT64_FORMAT " tuples (%d%%) of %s done (elapsed %.2f s,
remaining%.2f s)%5s%c",
 
                              j, total,
                              (int) ((j * 100) / total),
-                            table, elapsed_sec, remaining_sec, eol);
+                            table, elapsed_sec, remaining_sec, "", eol);

Regards,

-- 
Fujii Masao
Advanced Computing Technology Center
Research and Development Headquarters
NTT DATA CORPORATION




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