aboutsummaryrefslogtreecommitdiff
path: root/src/os_unix.c
Commit message (Collapse)AuthorAge
...
* Changes to the unix VFS that allegedly enable it to build of Fuchsia.drh2019-02-20
| | | | | We have no way of testing this. FossilOrigin-Name: be21a6416d47ff7db995006a0422b745044d9b8bb5bad3c53342aa6e2e524771
* On the first connection to a WAL-mode database that was not cleanly shut downdrh2018-10-11
| | | | | | | | | and contains a left-over -shm file, truncate the -shm file to 3 bytes instead of to 0 bytes. Avoiding a truncation to 0 means that system monitoring tools can better detect if a process illegitimately tries to truncate a -shm file. Such a rogue process might think it is being helpful by cleaning up old files, but there is a race condition that can cause damage to the database. FossilOrigin-Name: 90cf32cde072a305f30c75a71665d1f9e23e805c0a49f5306f015c056dd70f0c
* In the unix VFS, fix the heap shm allocator (used for unix-excl) drh2018-10-11
| | | | | so that it works even on systems where the page size is larger than 32KB. FossilOrigin-Name: 7fbb083c5cf0948af3624b7538ffa086f77de27a3e84a7039ae7d6574f1a3a54
* Add an additional assert() verifying mutex invariants on thedrh2018-10-02
| | | | | unixShmSystemLock() routine in the unix VFS. FossilOrigin-Name: cb1511065d5348c5b3015dc9d690fc5d519a14ffdfa7164bb552a4fa686ad142
* Additional field name changes and commit fixes associated with shared-memorydrh2018-10-02
| | | | | locking in the unix VFS, to improve maintainability. No logic changes. FossilOrigin-Name: 9280774a4bbc665d70f346d258768cbcca3e0e77791473aecfd7d0e87810ab31
* Fix comments and refactor some names associated with shared-memory lockingdrh2018-10-02
| | | | | in the Unix VFS. No logical changes. FossilOrigin-Name: 3e9f1635271c92dce5324728b4ee1cc1a1856ec3c60b1b512a652c21e010e63e
* Fix a problem building on Android with SQLITE_ENABLE_BATCH_ATOMIC_WRITE set.dan2018-09-18
| | | FossilOrigin-Name: e41e50fe7430cb79f67369fe81ac9938665bfc5db59c4faaf429ceb8ca03f584
* Fix an assert() in os_unix.c that is not true when using RBU.dan2018-09-12
| | | FossilOrigin-Name: 028ed8618af012b51104a06cc155b45d98bc4ff833d4431b9c38fd6851a74e82
* Fix a harmless compiler warning in os_unix.c.drh2018-09-06
| | | FossilOrigin-Name: b9d1fb5d44e0a6ffc00ee987f178e448d7516e579beecdeeb387e69aef588921
* Fix a harmless unused-variable compiler warning that only came up in certaindrh2018-08-16
| | | | | compile-time configurations. FossilOrigin-Name: 456842924bb33c0af8af29402f06e5f25b6791f698a0d12a080258b20b0cfb61
* Stop requiring the global VFS mutex to access the unixInodeInfo.pUnused field.drh2018-08-13
| | | | | The unixInodeInfo mutex is sufficient. FossilOrigin-Name: e3ea43dabf099dc2954c23d348638e7b2a8b9122d2994154bc649a2c09260c46
* Take extra precautions to ensure access to unixInodeInfo.pUnused is protecteddrh2018-08-13
| | | | | by all necessary mutexes. FossilOrigin-Name: 8b1e0010b9e0b548a90087f4d25843d2b40f7e9551722ac587fa925d37b510c2
* Fix an incorrect comment on the unix-nolock VFS object. No functionaldrh2018-08-13
| | | | | code changes. FossilOrigin-Name: 90f7c193b42f0d8120a8e429bdea5e1cec5d3f45b901db8fc5a5c2ca3e69cba8
* Return an SQLITE_NOMEM error if the locking mutex fails to allocate.drh2018-07-23
| | | FossilOrigin-Name: 1c94834879be0601ac40ef3c4fb1b140f7737e89af7808f2f1db4ceb3daae19f
* First attempt at reducing mutex contention in the unix VFS by providingdrh2018-07-23
| | | | | a separate mutex for each unixInodeInfo object. FossilOrigin-Name: f69afaf00a659cd768a863c5f4a1d527f01187e037240da0ada527cb52c5afe8
* Proposed fix for the use of posix_fallocate() so that it handles EINVALdrh2018-06-02
| | | | | returns correctly. FossilOrigin-Name: ab3a5539db82814cafb832cdaebd1e14566139306453ef9cdba6b244a994fe0b
* Avoid a race condition that might cause a busy_timeout to last longer thandrh2018-03-26
| | | | | it should. FossilOrigin-Name: b81960561b47a1b49646f2f8870dd0684dc4ca7c0b9e11076fd713de66b75972
* Add infrastructure to support for using F_SETLKW with a timeout on systemdrh2018-03-26
| | | | | that support that functionality. Requires SQLITE_ENABLE_SETLK_TIMEOUT. FossilOrigin-Name: 2e54a7433ece4eb27e71bda6f2d121d5aa46ddd5a481357d8543d1432aaad689
* Remove an unnecessary memset().drh2018-02-21
| | | FossilOrigin-Name: e7b7f5884a78630c6ba6a217c36247397e62f1928d4b480df929efcfc4a01893
* Only try to use the geteuid() interface on unix if HAVE_FCHOWN is defined.drh2018-02-19
| | | | | This fixes the build for vxWorks, we are told. FossilOrigin-Name: 38f654dc117bb11d61407327884b5c913cfaf920547bebc4ce5a4cf983e5c20e
* Allocation the mutex used by the unix VFS only once at initialization, insteaddrh2018-02-05
| | | | | of every time it is needed. FossilOrigin-Name: 5764dc160783f5c4017204b3e26a89d31240c868484ced8214c9ad872bd77bd4
* Fix an error in the setDeviceCharacteristics() procedure for thedrh2018-01-15
| | | | | (unsupported) QNX code in os_unix.c. FossilOrigin-Name: 8151913a3987f4dd2d6efee046727f5fa9b6f11d5d3867ea8f512c03a212ac2b
* Fix a problem in os_unix.c causing it to return SQLITE_CANTOPEN instead ofdan2018-01-10
| | | | | SQLITE_READONLY_RECOVERY. FossilOrigin-Name: 6a16f554f027ba268276b728588b5eaea837cbed85358a06a2f6da3b70e834ad
* In the os_unix.c implementation of xOpen(), do not returndan2018-01-09
| | | | | | | SQLITE_READONLY_DIRECTORY in cases where the file cannot be opened for reasons other than a readonly directory, such as the process running out of file descriptors. FossilOrigin-Name: fa8b80bb967792de99808712ac03e37ace0f11eb8fbe444aacd3d19184c425ea
* An improved way of generating the SQLITE_READONLY_DIRECTORY error.drh2017-12-13
| | | | | The error message submitted to sqlite3_log() is still correct this way. FossilOrigin-Name: 1c0aa919ee429cd194820ec9c54084563f39e63fd399b23f859fc6703b429b15
* New result code SQLITE_READONLY_DIRECTORY is returned when an attempt isdrh2017-12-13
| | | | | | | made to write on a database file that is in a read-only directory and hence the journal file could not be created. This situation formerly returned SQLITE_CANTOPEN, which less helpful. FossilOrigin-Name: 3ec73c38f878d73d278fce99ba10c708dcc475835774f1e17769ff7315be6d7c
* Minor enhancement to two assert() statements in the default VFSes.drh2017-12-13
| | | FossilOrigin-Name: 9cede8a83ca4cd88d504050115e1e89e7b3d3cd3cb2ffb5b8961e311a23ff5e2
* Fix a harmless API signature mismatch in the unix VFS.drh2017-12-09
| | | FossilOrigin-Name: bab9de7fdda20a724f7c21ec2c25b488ece08b685f1e4fd15c9e73b6b4a0133a
* Change the name of SQLITE_READONLY_CANTLOCK to SQLITE_READONLY_CANTINIT.drh2017-11-08
| | | FossilOrigin-Name: 6d7f94faa7e6de62f82bc6cac019508a9c1ffd6fa1d14f52fa93e9c06afdd32f
* On unix, if the *-shm file cannot be opened for read/write access, open itdan2017-11-07
| | | | | read-only and proceed as if the readonly_shm=1 URI option were specified. FossilOrigin-Name: ba718754fa5ab8596cb84b751051de98afa2706fe6c5df39ad6d925d790719ee
* If a readonly_shm connection cannot map the *-shm file because no otherdan2017-11-01
| | | | | | process is holding the DMS lock, have it read from the database file only, ignoring any content in the wal file. FossilOrigin-Name: ce5d13c2de69b73378637d4f7e109714f7cd17bf1d1ad995e0be442d517ed1b3
* Fix a race condition in os_unix.c that might allow a client to use a *-shmdan2017-11-01
| | | | | | file corrupted by a power failure if another client fails between locking the *-shm file and truncating it to zero bytes. FossilOrigin-Name: d655bfabd110999b6808073c334869c5b6a8334df56811df883e47e56d3f1cbb
* Fix an error in the previous commit on this branch.dan2017-10-26
| | | FossilOrigin-Name: f71dfee06ce1e0eee760cfca19482bdec7729d6c7d28f10f4cfd21e1f92a04b0
* Instead of extra locks, use F_GETLK to ensure that readonly_shm clients cannotdan2017-10-26
| | | | | connect to a wal-mode database if there are no writers. FossilOrigin-Name: 5492f457dc7cc5c416de4b4e61e84bd2f10b4e6ce54011b7a60feb47f629c923
* Use extra locks to prevent a readonly_shm=1 process from connecting to adrh2017-10-25
| | | | | WAL-mode database if there are no writers. FossilOrigin-Name: 35d979082b4ab36d6a8975f8f15a50e69f46b72a173164d2b353377b9f758bd8
* Do not reference the ioctl() system call in the unix backend unless itdrh2017-10-25
| | | | | | is actually needed by the Batch Atomic Write extension. This should allow the build to work on VxWorks. FossilOrigin-Name: adfa7ed2de3e833fff65935455e71236a59602aaf7b97ece667ab300dca9f673
* Add another test case for the problem fixed by the previous commit.dan2017-09-14
| | | FossilOrigin-Name: 1a7e0b61c8a6bdd3ed105b9bc8a3732668fd7a897d2ed16c99445498e3c87089
* Avoid an out-of-bounds read that can be caused by a specially constructeddan2017-09-14
| | | | | journal file. FossilOrigin-Name: cf5bf42cad6e019a38dc0a36ff1f53ada619eef5259e175c3554a16669e03202
* Fix error tests in seldom-used compile-time branches of the unix backend.drh2017-08-22
| | | FossilOrigin-Name: 885c2b44a44f8d054014e4079b2cac8279c11d13206d5b5215189ef75b9c5254
* For the unix VFS, avoid an unnecessary stat() system call prior to openingdrh2017-08-18
| | | | | any file in the common case where there are no unused file descriptors. FossilOrigin-Name: 3075cfa07489eaf13cb9a2760e2391e79dd73181fe1730fae7bdcd6ad66d2a1f
* On Windows, avoid casting a value larger than 2^31 to a (SIZE_T) on systems ↵mistachkin2017-08-07
| | | | | where it is a 32-bit type. FossilOrigin-Name: f08d63b413601b22726e8b96ff8eb779857321b9df30db0333f71e50ffb5077d
* Fix a problem with handling SQLITE_FCNTL_MMAP_SIZE requests with a negativedan2017-08-07
| | | | | parameter in os_unix.c. FossilOrigin-Name: 4249fcf7b0c0233f9b3ba5139702738d5221c5309240e6e91dc139eff59471fe
* Avoid casting a value larger than 2^31 to a (size_t) on systems where itdan2017-08-07
| | | | | is a 32-bit type. FossilOrigin-Name: 46c3085dcad6372ac20eff499e17fe11680fdf4adb9186bf8b12221a5047e485
* Add new extended error codes for the atomic write file-controls.drh2017-07-28
| | | FossilOrigin-Name: 94a2004756ffe027b3495be91366750135c294a9c460edc9a1b4b9422dcc33bd
* Do not set device-capabilities flags SEQUENTIAL or SAFE_APPEND for f2fsdan2017-07-27
| | | | | file-systems. FossilOrigin-Name: 4477e60cd801dab7a8aec12c5bc5e81e774bedbfed38abbc8eb8b37336141a44
* Omit unused batch-atomic-write code if SQLITE_ENABLE_BATCH_ATOMIC_WRITE isdrh2017-07-22
| | | | | not defined. FossilOrigin-Name: a89b62c4966cd297326e8712da40e0962d2328d7ba1f201d5abcec911eeef347
* Use ioctl(F2FS_IOC_GET_FEATURES) to determine whether or not atomic batchdan2017-07-21
| | | | | writes are available. FossilOrigin-Name: 532bbf1f2b1028db4e581c756533aa660e482d833caaed4eafb299ef9b584f3a
* Add support for F2FS atomic writes. Untested at this point.dan2017-07-20
| | | FossilOrigin-Name: 416973ede3bde8567d1f2699728f72352979e054ef988d1c1e1cfe4290f6f8b8
* Work around a bug in the definition of "ino_t" on some versions of Android.drh2016-12-05
| | | FossilOrigin-Name: 8df492c1711bfea250264fdaa4892e0842705f83
* Add the "modeof=<filename>" URI parameter to os_unix.c - used to specify a ↵dan2016-08-11
| | | | | file to copy permissions from when a new database is created. Also allow passing NULL as the second parameter to sqlite3rbu_vacuum(). FossilOrigin-Name: ed406d31ff54ee3de8db91690a966e5c561f8f94