Re: Ragged latency log data in multi-threaded pgbench

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: Greg Smith <greg@2ndquadrant.com>
Cc: PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2010-03-15T16:06:19Z
Lists: pgsql-hackers
Greg Smith <greg@2ndquadrant.com> writes:
> Looks like sometimes a client is only getting part of its line written 
> out before getting stomped on by the next one.  I think one of the 
> assumptions being made about how to safely write to this log file may be 
> broken by the multi-process implementation, which is what you get when 
> thread-safety is not available.

pgbench doesn't make any effort at all to avoid interleaved writes on
that file.  I don't think there is anything much that can be done about
it when you are using the forked-processes implementation.  It's
probably possible for it to show up on the multi-threads version too,
depending on how hard libc tries to interlock stdio calls.

			regards, tom lane