Support FreeBSD + ZFS where posix_fallocate reliably returns EINVAL
[?]
CfKUdBH1SowFB6y7uNUACeEhoxtSXcN8N24RiMMLmSM1
Feb 2, 2023, 7:12 PM
RUM725HY2MWXXR7M3NHTTXD7M2HM2XCSI77PXODAXAHHLVNX6Z7QCDependencies
- [2]
M6PHQUGLfallocate only when necessary - [3]
3CKCVBXTA few optional storable types - [4]
2ZRCQBXPVersion bump - [5]
4Z4GEJTFVersion bump - [6]
YWFYZNLZCleanup + inter-process concurrency - [7]
PRDUE4YACleanup + published on crates.io - [8]
OP6SVMODResetting history - [9]
W2MIZD5BSingle file databases + CRC for the root pages (checking the other pages makes everything very slow) - [10]
WTXLZDYIFixing bus errors on a full disk - [11]
E4MD6T3LProofreading and commenting of this crate (massive bug fixes included) - [12]
FQ567GAXVersion bumps - [13]
RLVQDUPYFixing a double-free error introduced in 1.2.13 - [14]
YXKP4AIWNew file locks, with multiple sets of free pages - [15]
OHUZ73MKVersions - [16]
DASFQGORDebugging - [17]
P5NWMJ2HVersion bump - [18]
XOXTGNPZAdding a contiguous memory allocator (for large blocks) - [19]
TJ2R4HAZAccessing the root pages (unsafely, of course) - [20]
C36737FJArbitrary byte strings, and version 1.3.1
Change contents
- replacement in sanakirja/src/environment/mod.rs at line 3
use fs2::FileExt;use fs4::FileExt; - replacement in sanakirja/src/environment/mod.rs at line 403
file.allocate(length)?;Ok(())if let Err(err) = file.allocate(length) {let code = err.raw_os_error().unwrap();if code == libc::EINVAL {Ok(())} else {Err(err.into())}} else {Ok(())} - replacement in sanakirja/Cargo.toml at line 23
mmap = [ "memmap", "fs2" ]mmap = [ "memmap", "fs4", "libc" ] - replacement in sanakirja/Cargo.toml at line 34
fs2 = { version = "0.4", optional = true }fs4 = { version = "0.6.3", optional = true }libc = {version = "0.2", optional = true }