1.Dd March 11, 2017 2.Dt SQLITE_IOCAP_ATOMIC 3 3.Os 4.Sh NAME 5.Nm SQLITE_IOCAP_ATOMIC , 6.Nm SQLITE_IOCAP_ATOMIC512 , 7.Nm SQLITE_IOCAP_ATOMIC1K , 8.Nm SQLITE_IOCAP_ATOMIC2K , 9.Nm SQLITE_IOCAP_ATOMIC4K , 10.Nm SQLITE_IOCAP_ATOMIC8K , 11.Nm SQLITE_IOCAP_ATOMIC16K , 12.Nm SQLITE_IOCAP_ATOMIC32K , 13.Nm SQLITE_IOCAP_ATOMIC64K , 14.Nm SQLITE_IOCAP_SAFE_APPEND , 15.Nm SQLITE_IOCAP_SEQUENTIAL , 16.Nm SQLITE_IOCAP_UNDELETABLE_WHEN_OPEN , 17.Nm SQLITE_IOCAP_POWERSAFE_OVERWRITE , 18.Nm SQLITE_IOCAP_IMMUTABLE 19.Nd Device Characteristics 20.Sh SYNOPSIS 21.Fd #define SQLITE_IOCAP_ATOMIC 22.Fd #define SQLITE_IOCAP_ATOMIC512 23.Fd #define SQLITE_IOCAP_ATOMIC1K 24.Fd #define SQLITE_IOCAP_ATOMIC2K 25.Fd #define SQLITE_IOCAP_ATOMIC4K 26.Fd #define SQLITE_IOCAP_ATOMIC8K 27.Fd #define SQLITE_IOCAP_ATOMIC16K 28.Fd #define SQLITE_IOCAP_ATOMIC32K 29.Fd #define SQLITE_IOCAP_ATOMIC64K 30.Fd #define SQLITE_IOCAP_SAFE_APPEND 31.Fd #define SQLITE_IOCAP_SEQUENTIAL 32.Fd #define SQLITE_IOCAP_UNDELETABLE_WHEN_OPEN 33.Fd #define SQLITE_IOCAP_POWERSAFE_OVERWRITE 34.Fd #define SQLITE_IOCAP_IMMUTABLE 35.Sh DESCRIPTION 36The xDeviceCharacteristics method of the sqlite3_io_methods 37object returns an integer which is a vector of these bit values expressing 38I/O characteristics of the mass storage device that holds the file 39that the sqlite3_io_methods refers to. 40.Pp 41The SQLITE_IOCAP_ATOMIC property means that all writes of any size 42are atomic. 43The SQLITE_IOCAP_ATOMICnnn values mean that writes of blocks that are 44nnn bytes in size and are aligned to an address which is an integer 45multiple of nnn are atomic. 46The SQLITE_IOCAP_SAFE_APPEND value means that when data is appended 47to a file, the data is appended first then the size of the file is 48extended, never the other way around. 49The SQLITE_IOCAP_SEQUENTIAL property means that information is written 50to disk in the same order as calls to xWrite(). 51The SQLITE_IOCAP_POWERSAFE_OVERWRITE property means that after reboot 52following a crash or power loss, the only bytes in a file that were 53written at the application level might have changed and that adjacent 54bytes, even bytes within the same sector are guaranteed to be unchanged. 55The SQLITE_IOCAP_UNDELETABLE_WHEN_OPEN flag indicates that a file cannot 56be deleted when open. 57The SQLITE_IOCAP_IMMUTABLE flag indicates that the file is on read-only 58media and cannot be changed even by processes with elevated privileges. 59.Sh SEE ALSO 60.Xr sqlite3_io_methods 3 61