SQLite

All files named ”src/test_vfs.c”
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

History for src/test_vfs.c

2025-03-08
06:53
[b4135c1308] part of check-in [84d8fcfca1] Test app/script patches from Jan Nijtmans for cygwin. Add/replace many more sentinel arguments for TCL variadic functions which specifically need a NULL trailing argument. With this, 'make test' on cygwin runs to completion for me, with 134 of 329227 tests failing. MSC build fails the same 13 tests which fail for me in trunk. (check-in: [84d8fcfca1] user: stephan branch: cygwin-fixes, size: 50336)
2025-03-06
13:38
[0280aa8ada] part of check-in [205979813c] Cygwin-centric fixes from Jan Nijtmans. (check-in: [205979813c] user: stephan branch: cygwin-fixes, size: 50333)
2024-12-09
16:01
[a19728c593] part of check-in [c892242bb6] Enhance tests to ensure that blocking locks, and not calls to xSleep(), are being used by SQLITE_ENABLE_SETLK_TIMEOUT builds when they should be. (check-in: [c892242bb6] user: dan branch: win32-enable-setlk, size: 50321)
2024-07-30
15:49
[f298475e46] part of check-in [6e5bb48a74] First attempt at getting the build to work with Tcl 9.0. (check-in: [6e5bb48a74] user: drh branch: tcl9, size: 50062)
2023-01-31
20:21
[193c18da3d] part of check-in [20ea53ddf5] Fix a race condition during hot-journal rollback that could theoretically cause spurious corruption errors. (check-in: [20ea53ddf5] user: dan branch: pending-lock-race, size: 50086)
2020-10-02
15:15
[2cc38a7989] part of check-in [dd009cd7ae] Fix some test code so that testfixture can build with SQLITE_OMIT_WAL defined. (check-in: [dd009cd7ae] user: dan branch: trunk, size: 49994)
2019-11-22
00:42
[36822d6967] part of check-in [6a64fb6a2d] Revise the SQLITE_OPEN_NOFOLLOW so that it actually uses O_NOFOLLOW in the open() system call. This backs out the SQLITE_ACCESS_SYMLINK value but adds the new SQLITE_OK_SYMLINK return code from the xFullPathname method of sqlite3_vfs when that routine resolves symbolic links. O_NOFOLLOW is always included in open() system calls for journal files. (check-in: [6a64fb6a2d] user: drh branch: trunk, size: 49826)
2019-11-21
17:14
[a10a2a7c50] part of check-in [2d53a30cc2] Fix a recently introduced memory leak in the test code in test_vfs.c. (check-in: [2d53a30cc2] user: dan branch: trunk, size: 49897)
2019-11-20
16:10
[323ab2719e] part of check-in [0d1055a5da] Fix a use-after-free problem in the test suite. No changes to production code. (check-in: [0d1055a5da] user: dan branch: trunk, size: 49897)
2019-11-18
17:46
[cd65c660eb] part of check-in [cb79c82849] Add support for SQLITE_OPEN_NOFOLLOW. (check-in: [cb79c82849] user: drh branch: trunk, size: 49821)
2019-05-10
20:44
[32618cbd95] part of check-in [a194e53670] Add tests for the RBU module. (check-in: [a194e53670] user: dan branch: trunk, size: 49750)
2019-04-05
16:52
[0868f1d4d7] part of check-in [8b5a621e2e] In the test_vfs.c VFS, if a Tcl xWrite script returns "SQLITE_OMIT", silently omit the write() call. (check-in: [8b5a621e2e] user: dan branch: trunk, size: 49642)
2018-12-26
17:49
[c6c6a58f66] part of check-in [14a64df36e] Add a few more test cases to walvfs.test. (check-in: [14a64df36e] user: dan branch: trunk, size: 49567)
2018-12-24
18:51
[4c02cd8457] part of check-in [d697f6f3ca] Add test cases to test file walvfs.test. (check-in: [d697f6f3ca] user: dan branch: trunk, size: 49451)
15:15
[9a53b40290] part of check-in [606b1ead24] Merge latest trunk with this branch. (check-in: [606b1ead24] user: dan branch: mutexfree-shmlock, size: 48144)
2018-12-22
20:32
[4e31a7b98a] part of check-in [6231485114] Improve the coverage of wal.c provided by the "coverage-wal" test permutation. (check-in: [6231485114] user: dan branch: trunk, size: 46600)
2018-12-06
18:58
[194b8e78e9] part of check-in [8f4cb9dd33] Experiment with using an atomic CPU primitive instead of a mutex for intra-process locking with the unix-excl VFS. (check-in: [8f4cb9dd33] user: dan branch: mutexfree-shmlock, size: 48095)
2018-07-14
20:25
[112f1f9271] part of check-in [1c41250f67] If an SQLITE_IOERR error is encountered as part of an atomic commit on an F2FS file-system, retry the commit in legacy journal mode. (check-in: [1c41250f67] user: dan branch: exp-retry-atomic-commit, size: 46551)
2016-07-28
17:11
[f0186261a2] part of check-in [f2f1323cc4] Make sure the SQLITE_TCLAPI macro is always defined and use it for all callback functions that must interface with the Tcl C API. (check-in: [f2f1323cc4] user: mistachkin branch: callbackConv, size: 45751)
14:37
[2edd39d413] part of check-in [e8be3dfeab] Allow the 'testfixture.exe' target to be compiled with the __stdcall calling convention. (check-in: [e8be3dfeab] user: mistachkin branch: callbackConv, size: 45709)
2016-04-14
13:16
[4d02f38bfb] part of check-in [7ee570e7a9] Since the return value of sqlite3OsClose() is always ignored, we might as well make it "void" instead of "int", and thereby save 50 bytes in the compiled binary. (check-in: [7ee570e7a9] user: drh branch: trunk, size: 45634)
2015-04-19
21:43
[3b65d42e18] part of check-in [d05becd873] Fix harmless compiler warnings seen with MSVC 2015. (check-in: [d05becd873] user: mistachkin branch: vsix2015, size: 45642)
2015-03-17
16:01
[b7e6831e6f] part of check-in [e22dde187e] Add a test for the change on this branch. (check-in: [e22dde187e] user: dan branch: wal-blocking-lock, size: 45658)
2015-01-19
00:35
[5a14c63da9] part of check-in [1032191099] Eliminate all use of sprintf(), strcpy() and strcat() from test logic because OpenBSD hates those functions. (check-in: [1032191099] user: drh branch: trunk, size: 45616)
2015-01-12
19:59
[8ee7be45fe] part of check-in [44375a34e5] Silence some harmless uninitialized local variable warnings. (check-in: [44375a34e5] user: mistachkin branch: msvcW4, size: 45581)
2014-05-07
15:09
[f84075a388] part of check-in [19d56cbaca] Add test cases and documentation for the nolock and immutable query parameters. (check-in: [19d56cbaca] user: drh branch: win32-none, size: 45573)
2013-07-29
15:54
[e72f555ef7] part of check-in [c0809b5e32] Comment and preprocessor macro cleanup. (check-in: [c0809b5e32] user: drh branch: trunk, size: 44197)
2013-07-06
17:57
[12d9931f65] part of check-in [0ae7e75b21] Drop any existing mapping of the database file when exiting the pager "error state", as it may at this point be too large for the database file. Do not invoke file-control MMAP_SIZE if the database file handle does not support xFetch and xUnfetch (on the grounds that xUnfetch(0) calls to invalidate the mapping cannot be made). (check-in: [0ae7e75b21] user: dan branch: trunk, size: 44180)
2013-04-05
20:40
[8e6087a8b3] part of check-in [b095e2cdb6] Improve the code coverage of "permutations.test coverage-pager". (check-in: [b095e2cdb6] user: dan branch: trunk, size: 43386)
2013-02-23
18:58
[fb16b2d993] part of check-in [ccab94c10d] Enhancements to test scripts. No code changes. (check-in: [ccab94c10d] user: dan branch: incr-vacuum-opt, size: 43146)
2012-08-06
18:50
[c6260ef238] part of check-in [d045f8b2d4] When reusing pages as part of creating a new index, allocate the leaves from each free-list trunk page in ascending order, instead of trying to maximize localization for each individual allocation. This increases the chance that pages will be written to disk in ascending order by a large CREATE INDEX statement, improving overall performance. (check-in: [d045f8b2d4] user: dan branch: sorter-coalesce-writes, size: 43006)
2012-07-17
14:37
[da6d0d982b] part of check-in [e416359633] Ensure that there is always at least one aReadMark slot usable by an unprivileged reader while a checkpoint is running. Also, if one or more transactions are recovered from a log file, initialize one of the aReadMark slots to contain mxFrame as part of the recovery process. (check-in: [e416359633] user: dan branch: trunk, size: 42974)
2012-04-19
18:04
[9d934e1110] part of check-in [3281972eaa] Fix harmless compiler warnings on x64 MSVC, mostly in test code, but also in tclsqlite.c and in the FTS4 module. (check-in: [3281972eaa] user: drh branch: trunk, size: 42253)
2012-02-22
20:08
[73f46bd9b5] part of check-in [c81fc40b2b] Move test logic for SQLITE_FCNTL_PRAGMA out of os_unix.c and into test_vfs.c. (check-in: [c81fc40b2b] user: drh branch: file-control-pragma, size: 42233)
19:56
[37d523ce23] part of check-in [5643618108] If the SQLITE_FCNTL_PRAGMA file-control returns anything other than SQLTIE_NOTFOUND and SQLITE_OK, then treat the result as an error. (check-in: [5643618108] user: drh branch: file-control-pragma, size: 42099)
2011-12-23
01:04
[07157a0bbf] part of check-in [6191c5e451] Change the name ZERO_DAMAGE to the more descriptive POWERSAFE_OVERWRITE. The query parameter used to control this device characteristic is now "psow". (check-in: [6191c5e451] user: drh branch: statvfs, size: 41648)
2011-12-19
00:31
[b241a08b5f] part of check-in [41891b231e] Some fixes to the test suite so that it works with ZERO_DAMAGE set to true. Still lots more problems remain. (check-in: [41891b231e] user: drh branch: statvfs, size: 41528)
2011-12-17
19:49
[01d5732a8d] part of check-in [a0be6ea464] Add SQLITE_IOCAP_ZERO_DAMAGE and enable it for both unix and windows. Use this device characteristic to reduce the required work in journaling. A side effect is that this changes the default page exists back to 1024 even with the use of statvfs(). (check-in: [a0be6ea464] user: drh branch: statvfs, size: 41516)
2011-11-12
03:17
[27b7d9de40] part of check-in [76dec8aa9d] Make sure to flag benign malloc failures in the Windows VFS as such. Expand use of the DO_OS_MALLOC_TEST to cover the VFS functions that can now return an out of memory error. Support an experimental --match option to the test suite that will run only those tests matching the specified pattern. (check-in: [76dec8aa9d] user: mistachkin branch: winSyscall, size: 41453)
2011-08-26
17:17
[367e050ebe] part of check-in [41b5f86971] Cherrypick the recursion fix to test_vfs.c from [065e5a5ea4f82]. Also fix the nan.test module to handle upper/lower case changes in TCL. (check-in: [41b5f86971] user: drh branch: branch-3.7.2, size: 39824)
2011-08-12
11:59
[b0baec983b] part of check-in [87a15917d7] Add tests to improve coverage of vdbesort.c. (check-in: [87a15917d7] user: dan branch: experimental, size: 41245)
2011-06-23
01:07
[956cb3f5cb] part of check-in [07884cc218] Remove unused variables from test_vfs.c (check-in: [07884cc218] user: drh branch: trunk, size: 40759)
2011-06-22
10:37
[1d82aee93e] part of check-in [065e5a5ea4] Modify the implementation of the test code in test_vfs.c so that test VFS objects may be invoked recursively. (check-in: [065e5a5ea4] user: dan branch: trunk, size: 40785)
2011-05-23
18:37
[e7855568df] part of check-in [a65d043a2a] Minor cleanups to the header comments on various test_*.c file, to make the suitable for programmer-level documentation. (check-in: [a65d043a2a] user: drh branch: trunk, size: 41519)
2011-04-23
19:06
[0ac5b2e3da] part of check-in [2af51f856c] Test that it is now possible to use different VFSs for two databases attached to a single handle. (check-in: [2af51f856c] user: dan branch: uri, size: 41526)
2011-04-22
19:37
[b6bab7382f] part of check-in [b8a8132e71] Add the start of the "uri-filenames" feature. (check-in: [b8a8132e71] user: dan branch: uri, size: 41111)
2011-01-14
11:51
[2ed8853c1e] part of check-in [772a3845f8] Fix a bug in test code (test_vfs.c). (check-in: [772a3845f8] user: dan branch: trunk, size: 40694)
2010-11-01
17:38
[e10fcca756] part of check-in [8dd5c69198] If a database file with the WAL flag set is opened in exclusive-locking mode, use heap memory to store the wal-index instead of shared-memory. (check-in: [8dd5c69198] user: dan branch: trunk, size: 40649)
2010-08-12
02:41
[702e526361] part of check-in [45362437d4] Increase the maximum page size from 32k to 64k. (check-in: [45362437d4] user: drh branch: trunk, size: 40584)
2010-07-13
18:44
[7e291f8525] part of check-in [f4780bde62] Changes so that the xShmOpen VFS method is no longer required. Its job can be done by the first call to xShmMap. Rename xShmClose to xShmUnmap. (check-in: [f4780bde62] user: dan branch: experimental, size: 40584)
2010-07-03
17:13
[bea0f0bdee] part of check-in [51ec0e5432] Remove the unused xRename() method from the sqlite3_vfs object. Add better documentation on the xCurrentTimeInt64() method. (check-in: [51ec0e5432] user: drh branch: trunk, size: 40525)
2010-07-02
19:04
[f7e4d92be8] part of check-in [336ce7d297] Fix a bug in test_vfs.c causing an assert to fail. Changes to test code only. (check-in: [336ce7d297] user: dan branch: mistake, size: 40481)
2010-07-01
15:09
[88ca1326c1] part of check-in [a8f6341d3b] Add pager test cases. Change a condition in pager.c to NEVER(). (check-in: [a8f6341d3b] user: dan branch: trunk, size: 40463)
2010-06-29
10:30
[2291fd2272] part of check-in [008513ee61] Add tests to pager1.test and pagerfault.test. (check-in: [008513ee61] user: dan branch: trunk, size: 40001)
2010-06-25
19:09
[90d51963df] part of check-in [bfd563c471] Further test cases for pager1.test and pagerfault.test. (check-in: [bfd563c471] user: dan branch: trunk, size: 38427)
2010-06-23
19:27
[d001a4e64c] part of check-in [3e9680c4c1] Add test case for SQLITE_FULL errors to pagerfault.test. Remove a NEVER macro in pager.c that this hits. (check-in: [3e9680c4c1] user: dan branch: trunk, size: 36960)
2010-06-21
18:29
[f1b4398e7e] part of check-in [cc9ddae6d7] Add test cases to pager1.test and pager2.test. (check-in: [cc9ddae6d7] user: dan branch: trunk, size: 36849)
2010-06-19
18:12
[9ba0bb227f] part of check-in [5a5ff4e3e4] Change the name of IOCAP_SAFE_DELETE to IOCAP_UNDELETABLE_WHEN_OPEN. Have the xDeviceCharacteristics() method of the win32 VFS return this flag. (check-in: [5a5ff4e3e4] user: dan branch: experimental, size: 36775)
17:26
[abdf6881be] part of check-in [f5df83fd87] Add tests to pager1.test and pagerfault.test. (check-in: [f5df83fd87] user: dan branch: experimental, size: 36635)
2010-06-16
19:04
[687ba8db78] part of check-in [bede8c8a14] Experimental change: On systems where it is not possible to unlink a file while one or more processes has it open (i.e. not unix), avoid closing the journal file each time the database is unlocked and reopening it at the start of each transaction. (check-in: [bede8c8a14] user: dan branch: experimental, size: 35620)
10:55
[001c34e087] part of check-in [6c5c04eea1] Fix a memory leak that can occur in os_unix.c if an IO error occurs within the xUnlock method. (check-in: [6c5c04eea1] user: dan branch: trunk, size: 31515)
2010-06-14
18:01
[db0f5c7c81] part of check-in [58dfd83d8b] Move the xShmMap method to in between xShmLock and xShmBarrier, since it seems to fit in there logically. (check-in: [58dfd83d8b] user: drh branch: trunk, size: 31135)
14:07
[8e125e01b4] part of check-in [fc0cabc15c] Remove xShmGet/Size/Release from the sqlite3_vfs structure. Change the name of xShmPage to xShmMap. Remove some code that is now unused from os_unix.c and some of the test VFS implementations. (check-in: [fc0cabc15c] user: dan branch: experimental, size: 31249)
07:53
[15bddcddf6] part of check-in [37b26d125f] Add some fault-injection tests to improve coverage. (check-in: [37b26d125f] user: dan branch: experimental, size: 32245)
2010-06-12
12:02
[c3643e985b] part of check-in [eade8bc238] Fix some problems with handling IO errors on the experimental branch. (check-in: [eade8bc238] user: dan branch: experimental, size: 31601)
2010-06-11
19:04
[b83206d2c0] part of check-in [ca68472db0] Experimental change to the xShmXXX parts of the VFS interface. (check-in: [ca68472db0] user: dan branch: experimental, size: 31595)
2010-06-05
11:53
[d329e3ea93] part of check-in [f9d4ae0e8c] Add extra coverage test cases for wal.c. No changes to production code. (check-in: [f9d4ae0e8c] user: dan branch: trunk, size: 31172)
2010-06-04
11:56
[d3338794b5] part of check-in [b813233d76] If an attempt to sync the database file as part of a checkpoint fails, do not update the shared "nBackfill" variable. Otherwise, another process could wrap the log and overwrite content before it is synced into the database. (check-in: [b813233d76] user: dan branch: trunk, size: 30028)
10:37
[6203bc7d88] part of check-in [02c4040ce2] Fix a problem where an SQLITE_BUSY in the checkpoint code was being treated as an IO error (abandoning, instead of just limiting, the checkpoint). (check-in: [02c4040ce2] user: dan branch: trunk, size: 28824)
2010-06-03
19:10
[0f0242f295] part of check-in [df7d59899c] Fix another problem in test_vfs.c. (check-in: [df7d59899c] user: dan branch: trunk, size: 28791)
18:20
[dd2134246d] part of check-in [fcbf7cf189] Have test_vfs.c simulate IO errors in xShmLock. (check-in: [fcbf7cf189] user: dan branch: trunk, size: 28838)
09:25
[bae03f6255] part of check-in [ac0de2f39e] Enhancements to test_vfs.c and walfault.test. (check-in: [ac0de2f39e] user: dan branch: trunk, size: 28733)
2010-06-01
19:15
[fe1eda8d39] part of check-in [716d99f392] Changes to the way faults are injected into xShmXXX VFS calls. (check-in: [716d99f392] user: dan branch: trunk, size: 26283)
2010-05-30
19:55
[4f4f121f7d] part of check-in [ef3ba7a17f] Initial code for incremental checkpoint in WAL mode. This check-in compiles on unix and runs as long as you do not engage WAL mode. WAL mode crashes and burns. Consider this check-in a baseline implementation for getting the new capability up and running. (check-in: [ef3ba7a17f] user: drh branch: wal-incr-ckpt, size: 23552)
2010-05-20
23:51
[a2d320ea9a] part of check-in [1bd011c9fe] Add a new xShmBarrier method to the VFS - a shared-memory fence operation. Implement the same in both unix and win32. Use it to make the WAL subsystem more robust. (check-in: [1bd011c9fe] user: drh branch: trunk, size: 23718)
2010-05-18
13:27
[7fc397aa5a] part of check-in [0a6787908e] Mark the shared-memory in the WAL implementation as volatile. (check-in: [0a6787908e] user: drh branch: trunk, size: 23298)
2010-05-13
06:19
[3601f9b6d4] part of check-in [25e72f8156] Modify the VFS in test_vfs.c to match the refactoring of the xShmXXX methods. (check-in: [25e72f8156] user: dan branch: wal-refactor, size: 23280)
2010-05-12
18:01
[6e828b42e1] part of check-in [2b00152c1a] Refactoring the VFS-SHM methods used by WAL. This version compiles and runs non-WAL test cases but crashes and burns on wal.test. (check-in: [2b00152c1a] user: drh branch: wal-refactor, size: 23094)
2010-05-07
09:43
[c1e13b5f78] part of check-in [8b3b5ab8fa] Test another IO error case in wal.c. (check-in: [8b3b5ab8fa] user: dan branch: trunk, size: 22604)
2010-05-06
18:04
[72b8ad1a6b] part of check-in [637f51ddf9] Only pass -1 as the size parameter to xShmGet when the caller does not care what size mapping is returned. Only call xShmSize when the underlying allocation (not the mapping) should be resized. (check-in: [637f51ddf9] user: dan branch: trunk, size: 22602)
15:56
[a6a8b594b4] part of check-in [98a9713e00] Further coverage tests. (check-in: [98a9713e00] user: dan branch: trunk, size: 22205)
12:15
[e38d3619a8] part of check-in [f0fcb9c9a6] Add tests for some lock-contention cases. (check-in: [f0fcb9c9a6] user: dan branch: trunk, size: 22176)
07:43
[43ae46c963] part of check-in [fbbcacb137] Add tests for handling errors returned by xShm VFS methods. (check-in: [fbbcacb137] user: dan branch: trunk, size: 22136)
2010-05-05
19:04
Added: [4e84d17c6f] part of check-in [72663123d6] Test the handling of errors returned by the xShmXXX() APIs. (check-in: [72663123d6] user: dan branch: trunk, size: 22013)