On Thu, Oct 18, 2018 at 1:44 PM Andres Freund <and...@anarazel.de> wrote: > I wonder if it'd make sense to hack up a patch that logs when evicting a > buffer while already holding another lwlock. That shouldn't be too hard.
I tried this. It looks like we're calling FlushBuffer() with more than a single LWLock held (not just the single buffer lock) somewhat *less* with the patch. This is a positive sign for the patch, but also means that I'm no closer to figuring out what's going on. I tested a case with a 1GB shared_buffers + a TPC-C database sized at about 10GB. I didn't want the extra LOG instrumentation to influence the outcome. -- Peter Geoghegan