Re: pgbench: make verbose error messages thread-safe
| От | Alex Guo |
|---|---|
| Тема | Re: pgbench: make verbose error messages thread-safe |
| Дата | |
| Msg-id | 6b89a2d4-d661-4b3e-9031-e85db28ed264@gmail.com обсуждение |
| Ответ на | pgbench: make verbose error messages thread-safe (Fujii Masao <masao.fujii@gmail.com>) |
| Список | pgsql-hackers |
On 4/24/26 2:26 PM, Fujii Masao wrote: > Hi, > > While running pgbench with multiple threads and --verbose-errors, > I found that some verbose error messages were corrupted. > This issue happens because printVerboseErrorMessages() uses > a function-local static PQExpBuffer for building those messages. > Since that buffer is shared across threads, it is not thread-safe. > > Attached patch fixes this issue by changing printVerboseErrorMessages() > to use a local PQExpBufferData instead of a static one. Thoughts? > > Since this issue was introduced in v15, the patch should be > backpatched to v15 if accepted. > > Regards, > In single-threaded mode, reusing the static local buffer might be slightly more performant. But if this function needs to be safe in multi-threaded mode, then we have to stop using a static local variable. So the change looks reasonable and good to me. Regards, Alex Guo
В списке pgsql-hackers по дате отправления: