Major - P3
Storage Engines 2020-03-23
compile failed on OS X 10.12
Project: WiredTiger (develop)
WT-5170 Use mmap for I/O on all data files (#5155)
- Simplified the implementation to not support file extension and truncation on mmapped files. Reads and writes destined to the outside of the mapped buffer default to the system call path.
- Added stats to measure how much I/O is done via mmap vs system calls
- Remap the mapped region if the file is extended via a write beyond the end of the file.
- Only mmap files that are of type data or log. Code refactoring. Minor bug fixes.
- Introduce remapping the mmapped region if we extended the file size via the write system call. Do not remap every time we have the opportunity, but only occasionally, to avoid the overhead.
- Enable fh_extend and remap the region upon file extension.
- Enable I/O via MMAP for all data files via a runtime option mmap_all.
- Add low-level testing of mmap_all configuration at 5%.
Co-authored-by: Sasha Fedorova <firstname.lastname@example.org>
Co-authored-by: Sasha Fedorova <email@example.com>
Co-authored-by: Keith Bostic <firstname.lastname@example.org> | 16 Mar 20 21:25 UTC
Evergreen Subscription: ; Evergreen Event:
- is caused by
WT-5170 Convert the os_posix layer to use mmap for I/O instead of system calls