-
Type: Task
-
Resolution: Done
-
Affects Version/s: None
-
Component/s: None
-
None
Michael, this is one approach to fixing the bug Mark reported (I obviously haven't reproduced it, though).
What I think is going on is that direct I/O on his system disallows any write that's smaller than 4KB (which makes sense, I guess, since such writes are known to have problems). Obviously, he could configure allocation_size=4KB, but that won't work for our default files, in this case, WiredTiger.wt.
What I did was require the page allocation sizes after direct I/O is configured be both at least as large as the buffer alignment, and a multiple of the buffer alignment. The latter might be overkill, but I don't see why that would be sure to work when blocks smaller than the alignment size don't work.