On Tue, Mar 12, 2019 at 2:22 PM Andres Freund <and...@anarazel.de> wrote: > I'm basically just curious which buffers have most of the additional > contention. Is it the lower number of leaf pages, the inner pages, or > (somewhat unexplicably) the meta page, or ...? I was thinking that the > callstack that e.g. my lwlock tool gives should be able to explain what > callstack most of the waits are occuring on.
Right -- that's exactly what I'm interested in, too. If we can characterize the contention in terms of the types of nbtree blocks that are involved (their level), that could be really helpful. There are 200x+ more leaf blocks than internal blocks, so the internal blocks are a lot hotter. But, there is also a lot fewer splits of internal pages, because you need hundreds of leaf page splits to get one internal split. Is the problem contention caused by internal page splits, or is it contention in internal pages that can be traced back to leaf splits, that insert a downlink in to their parent page? It would be really cool to have some idea of the answers to questions like these. -- Peter Geoghegan