>>>>> "ST" == Suresh Thalamati <[EMAIL PROTECTED]> writes:
ST> This might be obvious, thought I would mention it any way. My
ST> understanding is one can not just enable "RWD" (direct io) for the
ST> checkpoint. It has to be enabled for all the writes from the page
ST> cache, otherwise a file sync is required before doing "rwd" writes
ST> because I am not sure If a file is opened in "rw" mode and then in
ST> "rws" mode , writes to first open will also get synced to the disk ,
ST> when file is opened in "rwd" mode , I doubt that.
ST> If files are opened in direct io mode always , then page cache
ST> cleaning can possible get slow and also user query request for a new
ST> page in buffer pool can become slow if a cache is full and a page has
ST> to be thrown out to get a free page. Another thing to note is buffer
ST> cleaning is done on Rawstore daemon thread, which is overloaded with
ST> some post commit work also , so page cache may not get cleaned often
ST> in some cases.
I think the solution to this is to use multiple threads for writing
pages to disk. In order not to slow down user threads, one can copy
the page to another buffer and let it be written asynchronusly by
another thread using direct i/o (emulates a file system buffer).
--
Øystein