Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> c.d.o.server -> Re: What is better asychronous IO or multiple db_writers?
Hi Jonathan,
It is a generic unix thing. You find it in most of the unix internals books, but I think the best explanation is in Maurice Bach's. Basically, it is designed to avoid the risk of process A requesting a direct read of say blocks 1,2 and 3 and then blocks on the physical I/O, then after the physcial I/O has completed and the blocks are in the buffer cache, but berfore process A wakes up, DBWR overwrites say block 2, with the result that process A gets a potentially inconsistent image of the data. Inode locking prevents this risk.
Hope this helps,
Regards,
Steve Adams
steveadams_at_acslink.net.au
>
>Steve,
>
>> On the other hand, the management overheads of the
>> buffer cache are significant. Mostly importantly, all readers take
a
>> shared lock on the datafile inode which delays dbwr from taking its
>> exclusive lock on the inode to write. This can significantly impact
>> dbwr performance.
>
>Is this a generic Unix thing, or a particular feature of HP-UX ?
>
>