ITAGAKI Takahiro wrote:
> Magnus Hagander <[EMAIL PROTECTED]> wrote:
> 
>> FILE_FLAG_NO_BUFFERING requires that *all* I/O follows:
>> * File access must begin at offsets that are integer multples of the
>>   volume sector size.
>> * File access must be for number of bytes that are integer multiples of
>>   the volume sector size.
>> * Buffer addresses for read and write operations must be sector aligned.
>>
>> I was under the impression that our code can in no way guarantee this.
>> Especially given that a typical NTFS drive can have anything from 512 to
>> 4096 bytes if you use the GUI to format it, and larger sizes than that
>> when you use some SAN tools to do it.
> 
> Do you mean there are drives that have larger sector size than 8kB?
> We've already put the xlog buffer along the alignment of
> ALIGNOF_XLOG_BUFFER (typically 8192 bytes).
> But if there are such drives, using FILE_FLAG_NO_BUFFERING is harmful!

Yes. I have heard this can happen with certain SAN drives. I haven't
seen it myself, and I can't seem to find a reference right now :-) But I
do recall having read about th need to check the sector size and
specifically align it, because some do have that problem.


//Magnus


---------------------------(end of broadcast)---------------------------
TIP 4: Have you searched our list archives?

               http://archives.postgresql.org

Reply via email to