Hi, Created a commitfest entry for this. Link: https://commitfest.postgresql.org/43/4405/
Regards, Nazir Bilal Yavuz Microsoft On Thu, 22 Jun 2023 at 17:03, Melanie Plageman <melanieplage...@gmail.com> wrote: > On Wed, Jun 21, 2023 at 9:49 PM Kyotaro Horiguchi > <horikyota....@gmail.com> wrote: > > Regarding the second patch, it introduces WAL IO time as a > > IOCONTEXT_NORMAL/IOOBJECT_WAL, but it doesn't seem to follow the > > convention or design of the pgstat_io component, which primarily > > focuses on shared buffer IOs. > > I haven't reviewed the patch yet, but in my opinion having an > IOOBJECT_WAL makes sense. I imagined that we would add WAL as an > IOObject along with others such as an IOOBJECT_BYPASS for "bypass" IO > (IO done through the smgr API directly) and an IOOBJECT_SPILL or > something like it for spill files from joins/aggregates/etc. > > > > I do have a question about this. > > > So, if we were to start tracking WAL IO would it fit within this > > > paradigm to have a new IOPATH_WAL for WAL or would it add a separate > > > dimension? > > Personally, I think WAL fits well as an IOObject. Then we can add > IOCONTEXT_INIT and use that for WAL file initialization and > IOCONTEXT_NORMAL for normal WAL writes/fysncs/etc. I don't think we > need a new dimension for it as it feels like an IO target just like > shared buffers and temporary buffers do. I think we should save adding > new dimensions for relationships that we can't express in the existing > paradigm. > > - Melanie >