From: | ITAGAKI Takahiro <itagaki(dot)takahiro(at)oss(dot)ntt(dot)co(dot)jp> |
---|---|
To: | Simon Riggs <simon(at)2ndquadrant(dot)com>, pgsql-hackers(at)postgresql(dot)org |
Cc: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Greg Smith <gsmith(at)gregsmith(dot)com> |
Subject: | Re: Sorting writes during checkpoint |
Date: | 2008-07-07 01:29:15 |
Message-ID: | 20080707095158.73DF.52131E4D@oss.ntt.co.jp |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers pgsql-patches |
(Go back to -hackers)
Simon Riggs <simon(at)2ndquadrant(dot)com> wrote:
> No action on this seen since last commitfest, but I think we should do
> something with it, rather than just ignore it.
I will have a plan to test it on RAID-5 disks, where sequential writing
are much better than random writing. I'll send the result as an evidence.
Also, I have a relevant idea to sorting writes. Smoothed checkpoint in 8.3
spreads write(), but calls fsync() at once. With sorted writes, we can
call fsync() segment-by-segment for each writes of dirty pages contained
in the segment. It could improve worst response time during checkpoints.
> Note that if we do this for checkpoint we should also do this for
> FlushRelationBuffers(), used during heap_sync(), for exactly the same
> reasons.
Ah, I overlooked FlushRelationBuffers(). It is worth sorting.
> Would suggest calling it bulk_io_hook() or similar.
I think we need to reconsider the "bufmgr - smgr - md" layers, not only
an I/O elevator hook. If we will have spreading fsync(), bufmgr should
know where the file segments are switched. It seems to break area
between bufmgr and md in the current architecture unhappily.
In addition, the current smgr layer is completely useless because
it cannot be extended dynamically and cannot handle multiple md-layer
modules. I would rather merge current smgr and part of bufmgr into
a new smgr and add smgr_hook() than bulk_io_hook().
Regards,
---
ITAGAKI Takahiro
NTT Open Source Software Center
From | Date | Subject | |
---|---|---|---|
Next Message | ITAGAKI Takahiro | 2008-07-07 02:03:32 | Re: [PATCHES] WIP: executor_hook for pg_stat_statements |
Previous Message | Tom Lane | 2008-07-06 22:02:21 | Priority of timezone names vs abbreviations in AT TIME ZONE |
From | Date | Subject | |
---|---|---|---|
Next Message | ITAGAKI Takahiro | 2008-07-07 02:03:32 | Re: [PATCHES] WIP: executor_hook for pg_stat_statements |
Previous Message | Tom Lane | 2008-07-06 05:53:20 | Re: pgbench minor fixes |