Understand where the time goes in `commit` path
The critical bottleneck is currently the commit path. Before we make any decisions about what to do next, I would like to better understand where the time goes: in particular, how much I/O is in the critical path: Is there I/O that can be removed, or moved to the background? Should background I/O be queued to a dedicated thread?
Edited by Marc Shapiro