/ File History
Login
SQLite training in Houston TX on 2019-11-05 (details)
Part of the 2019 Tcl Conference

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

History of src/test6.c

2017-07-22
20:12
Add a test for the outcome of a process crash within an xWrite VFS method call. file: [e8d839fb] check-in: [eb871800] user: dan branch: batch-atomic-write, size: 32372
2017-03-07
14:45
When saving the state of an RBU update in the incremental-checkpoint phase, sync the database file. Otherwise, if a power failure occurs and the RBU update resumed following system recovery, the database may become corrupt. Cherrypick of [edee6a80]. file: [e2ed878f] check-in: [811a5599] user: dan branch: version-3.17.0-rbu-fixes, size: 31766
2017-03-02
14:51
When saving the state of an RBU update in the incremental-checkpoint phase, sync the database file. Otherwise, if a power failure occurs and the RBU update resumed following system recovery, the database may become corrupt. file: [004ad42f] check-in: [edee6a80] user: dan branch: trunk, size: 31780
2017-02-15
04:16
Further reforms to Tcl_*Alloc() usage. file: [121060d2] check-in: [ee1e6896] user: mistachkin branch: trunk, size: 31568
2016-07-28
17:11
Make sure the SQLITE_TCLAPI macro is always defined and use it for all callback functions that must interface with the Tcl C API. file: [55aa2775] check-in: [f2f1323c] user: mistachkin branch: callbackConv, size: 31554
14:37
Allow the 'testfixture.exe' target to be compiled with the __stdcall calling convention. file: [4fc2c870] check-in: [e8be3dfe] user: mistachkin branch: callbackConv, size: 31456
2016-05-24
16:20
Fix an obscure problem with transactions written in "PRAGMA synchronous=full" mode on systems that do not support POWERSAFE_OVERWRITE causing an xSync() call to be omitted if the last frame written by a transaction is aligned to a sector boundary. This means that if a power failure or OS crash occurs very soon after such a transaction is committed, it may be lost following system recovery. file: [a684b7ab] check-in: [37de3eab] user: dan branch: trunk, size: 31381
2016-04-27
18:54
Modify the permutations.test script so as to set any permutation specific configuration values before running each individual test script. file: [2c014d49] check-in: [2662d8fe] user: dan branch: permutations-fix, size: 30897
2013-12-11
15:47
Add the SQLITE_FCNTL_SYNC and SQLITE_FCNTL_COMMIT_PHASETWO file-controls and have the pager call them at appropriate times. This is needed in order to enable ZIPVFS to do multi-file atomic commits. file: [41cacf3b] check-in: [552f94d5] user: drh branch: trunk, size: 30343
11:03
Have the crash-test infrastructure code in test6.c read and write the 512-byte block containing the pending-byte lock as normal. Earlier versions did not access this part of the file in order to avoid triggering an assert in os_unix.c. But the assert() has since been removed. And not reading/writing this part of the file causes problems for multiplexor tests. file: [0c8fdf2e] check-in: [fdc3f3fa] user: dan branch: zipvfs-multifile-commit, size: 30395
2013-12-09
20:42
Modify the way some internal file-controls are invoked. In order to support multi-file transactions in the zipvfs extension. file: [6884dcfb] check-in: [32fb1784] user: dan branch: zipvfs-multifile-commit, size: 30529
2013-10-31
06:11
Fix harmless compiler warnings. file: [4f958b71] check-in: [1a0a8865] user: mistachkin branch: trunk, size: 30460
2013-10-15
14:29
Fix an 8-byte alignment problem on the "crash test" harness (test code, not in the core) that causes problems on Sparc. file: [00af0fe1] check-in: [bcbc6503] user: drh branch: trunk, size: 30453
2013-03-21
21:20
Many spelling fixes in comments. No changes to code. file: [a437f76f] check-in: [6f6e2d50] user: mistachkin branch: trunk, size: 30453
2012-10-18
10:35
More warning fixes. file: [938794c9] check-in: [51a6a797] user: mistachkin branch: warnings, size: 30454
09:39
Fix harmless compiler warnings. file: [b990d3cf] check-in: [018e09c7] user: mistachkin branch: warnings, size: 30449
2012-10-17
16:20
Add a test for the problem fixed by [bf44d73d3e]. file: [e0fc0551] check-in: [db9b1fa5] user: dan branch: trunk, size: 30447
15:28
Change the way the tcl crash-test code works to avoid triggering an assert() in os_unix.c. file: [0e47537b] check-in: [b8b7b8f9] user: dan branch: trunk, size: 30425
2012-04-19
18:04
Fix harmless compiler warnings on x64 MSVC, mostly in test code, but also in tclsqlite.c and in the FTS4 module. file: [417e1e21] check-in: [3281972e] user: drh branch: trunk, size: 30420
2012-03-30
14:59
Fix MSVC compiler warnings in test code. file: [3329df2d] check-in: [cb7a8504] user: drh branch: trunk, size: 30410
2012-03-08
20:00
On Windows, make sure the current directory value used by the test suite is 'normalized' to what the parent command shell sees. Also, clean the test directories used by the quota2.test file. file: [846ed1ed] check-in: [82bcd7ec] user: mistachkin branch: trunk, size: 30364
2011-12-23
01:04
Change the name ZERO_DAMAGE to the more descriptive POWERSAFE_OVERWRITE. The query parameter used to control this device characteristic is now "psow". file: [cf6ab27a] check-in: [6191c5e4] user: drh branch: statvfs, size: 30109
2011-12-17
19:49
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(). file: [ffcc25c9] check-in: [a0be6ea4] user: drh branch: statvfs, size: 29893
2011-08-23
19:46
Change the way the "crash" VFS (test6.c) handles SQLITE_FCNTL_SIZE_HINT. file: [3191b4ab] check-in: [40dd8a60] user: dan branch: trunk, size: 29844
16:41
Have the "crash" VFS used by the tcl tests (test6.c) handle SQLITE_FCNTL_SIZE_HINT internally, instead of passing it directly through to the underlying VFS. This is important if the crash VFS is simulating non-default device characteristics such as SQLITE_DEVCAP_SEQUENTIAL or ATOMIC. file: [fbe4fd2f] check-in: [fac8bc8f] user: dan branch: trunk, size: 29768
2010-07-14
00:14
Change the name of the xShmClose VFS method to xShmUnmap, everywhere. file: [c7256cc2] check-in: [c2d27cf5] user: drh branch: experimental, size: 29572
2010-07-13
18:44
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. file: [e328b504] check-in: [f4780bde] user: dan branch: experimental, size: 29572
2010-07-08
16:22
Fix warning in test fixture code. file: [a1217a21] check-in: [0bfcf3bc] user: shaneh branch: trunk, size: 29723
2010-07-03
17:13
Remove the unused xRename() method from the sqlite3_vfs object. Add better documentation on the xCurrentTimeInt64() method. file: [e7f71216] check-in: [51ec0e54] user: drh branch: trunk, size: 29711
2010-06-14
18:01
Move the xShmMap method to in between xShmLock and xShmBarrier, since it seems to fit in there logically. file: [44e0a99e] check-in: [58dfd83d] user: drh branch: trunk, size: 29751
14:07
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. file: [43d6ce22] check-in: [fc0cabc1] user: dan branch: experimental, size: 29751
10:30
Add the xShmPage method to the "crash" vfs in test6.c. file: [1b312541] check-in: [1008f536] user: dan branch: experimental, size: 30324
2010-05-30
19:55
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. file: [d3e1a771] check-in: [ef3ba7a1] user: drh branch: wal-incr-ckpt, size: 29859
2010-05-20
23:51
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. file: [e524e36b] check-in: [1bd011c9] user: drh branch: trunk, size: 29854
2010-05-18
13:27
Mark the shared-memory in the WAL implementation as volatile. file: [21f6ec70] check-in: [0a678790] user: drh branch: trunk, size: 29700
2010-05-12
18:01
Refactoring the VFS-SHM methods used by WAL. This version compiles and runs non-WAL test cases but crashes and burns on wal.test. file: [d00c3930] check-in: [2b00152c] user: drh branch: wal-refactor, size: 29681
2010-05-03
16:36
Update the crash-test VFS in test6.c to pass-through the shared-memory methods to the real underlying VFS. This fixes the walcrash.test script. file: [8b9eedc2] check-in: [ea09ff37] user: drh branch: trunk, size: 30132
2010-04-27
11:49
Add the xShmRelease() method to the VFS. The os_unix.c implementation of the shared memory logic is still non-functional. file: [49b39daf] check-in: [ed715b47] user: drh branch: wal, size: 28432
2010-04-26
00:04
Begin moving WAL-specific I/O into the VFS. This checkin contains VFS infrastructure but it is untested and is not yet hooked up to the WAL. The version number is bumped to 3.7.0 because of the VFS extension. file: [d23fc849] check-in: [f5e615c2] user: drh branch: wal, size: 28812
2009-11-10
01:30
Remove the obsolete "$Id:$" RCS identifier strings from the source code. file: [a8ece428] check-in: [f6c045f6] user: drh branch: trunk, size: 28432
2009-02-11
14:27
Fix the crashtest infrastructure so that it doesn't trigger the "don't write to the locking region" assert in os_unix.c. (CVS 6281) file: [1a0a7a1f] check-in: [b7fd4615] user: danielk1977 branch: trunk, size: 28496
2009-02-10
14:28
Prevent code in test6.c from reading the 512 byte locking region (the PENDING_BYTE page) of a database file. Doing so triggers an assert failure in os_unix.c. (CVS 6276) file: [86d7918c] check-in: [2a6a4316] user: danielk1977 branch: trunk, size: 27964
2008-12-20
18:33
Add a vfs backend that detects problems like the one addressed by (6043) and (6047). (CVS 6049) file: [10025acf] check-in: [49172e48] user: danielk1977 branch: trunk, size: 27267
2008-12-09
01:32
Fix compiler warnings in where.c and in the TCL test harness. (CVS 5994) file: [11fc775c] check-in: [680755db] user: drh branch: trunk, size: 26027
2008-06-06
11:11
Remove the xGetTempname() method from the vfs structure. Temp files are now opened by passing a NULL pointer as the filename to xOpen(). (CVS 5190) file: [0a0304a6] check-in: [5173b3e8] user: danielk1977 branch: trunk, size: 26043
2008-06-05
11:39
Modify the signatures of the sqlite3_vfs.xAccess and sqlite3_vfs.xCheckReservedLock functions. (CVS 5188) file: [6f960990] check-in: [4226ac54] user: danielk1977 branch: trunk, size: 26273
2008-05-16
04:51
Add more version tags to files that lack them. Ticket #3120. (CVS 5137) file: [1f7d1cc0] check-in: [81a8c70e] user: danielk1977 branch: trunk, size: 26214
2008-03-19
14:15
Add a new api sqlite3_randomness() for providing access to SQLite's internal PRNG. Add sqlite3_test_control() verbs for controlling the PRNG. (CVS 4882) file: [62281c0a] check-in: [15110ea0] user: drh branch: trunk, size: 26150
2008-01-22
11:50
Move the test (sqlite3_simulate_device) functionality out of the main code and into a test vfs. (CVS 4737) file: [f8b34a6f] check-in: [17e7bd6c] user: danielk1977 branch: trunk, size: 26147
2008-01-18
13:42
Add a test (and fix) for possible corruption if malloc() fails during a CREATE INDEX statement, the application continues with the transaction, then crashes. (CVS 4725) file: [8944b648] check-in: [65245d99] user: danielk1977 branch: trunk, size: 26281
2007-12-14
17:22
Change to the crash simulator to give better diagnostics in case it runs out of memory while using the mem3.c allocator. (CVS 4632) file: [f40e41e1] check-in: [0d5747db] user: drh branch: trunk, size: 26027
2007-09-17
07:02
Add a parameter to specify the size of the output buffer passed to xGetTempname() and xFullPathname(). This, and the previous commit, are changes to the public vfs API introduced in 3.5.0. (CVS 4433) file: [a9fc983d] check-in: [8b29f5fb] user: danielk1977 branch: trunk, size: 25943
06:06
Change the names of xGetTempName and sqlite3OsGetTempName to xGetTempname. To be consistent with xFullPathname and sqlite3OsFullPathname. (CVS 4432) file: [0f3894c2] check-in: [ad3687b1] user: danielk1977 branch: trunk, size: 25885
2007-09-01
09:02
Fix a problem handling a malloc() failure in printf.c. Also some other things to improve test coverage. (CVS 4361) file: [0513982d] check-in: [595bfe72] user: danielk1977 branch: trunk, size: 25885
06:51
Fix for registration of non-default vfs objects. (CVS 4360) file: [e6ce0d29] check-in: [5f48fb95] user: danielk1977 branch: trunk, size: 25131
2007-08-31
18:34
Remove the xLockState method for sqlite3_io_methods. Replace it with a defined call to xFileControl(). This simplifies the interface and also gives us coverage testing of sqlite3_file_control(). (CVS 4355) file: [12808427] check-in: [306586c4] user: drh branch: trunk, size: 25179
16:11
Initial implementation of the sqlite3_file_control() interface. Compiles and passes all historical tests but the new method is itself untested. (CVS 4353) file: [a3480a6e] check-in: [d3ab3e39] user: drh branch: trunk, size: 25337
2007-08-25
12:29
Make the test_async backend work again. (CVS 4293) file: [a6223d9d] check-in: [04167483] user: danielk1977 branch: trunk, size: 25301
2007-08-24
16:08
Remove nRef and vfsMutex from the sqlite3_vfs structure. Omit the sqlite3_vfs_release() interface. Less memory allocated for a pager in the common case where the size of the pathname is less than MAX_PATH. (CVS 4287) file: [7007b394] check-in: [b8451da3] user: drh branch: trunk, size: 25000
08:15
Add tests to simulate power-failure on devices that support IOCAP_SEQUENTIAL or IOCAP_SAFE_APPEND. (CVS 4284) file: [37caea08] check-in: [bdf5cb8d] user: danielk1977 branch: trunk, size: 25113
03:51
The win32 driver compiles but does not yet work well. Many bugs fixed. (CVS 4282) file: [de2dbcd6] check-in: [3a68fcdd] user: drh branch: trunk, size: 23648
2007-08-23
11:07
Add some further tests and a bugfix for the atomic-write optimization. (CVS 4276) file: [5d628656] check-in: [5f0fb894] user: danielk1977 branch: trunk, size: 23637
08:06
Add some tests for the atomic-write optimization. (CVS 4275) file: [2c141f36] check-in: [e2cc7b4a] user: danielk1977 branch: trunk, size: 23105
02:47
Improvements to memory leak detection. The --backtrace=NNN option is now recognized by tester.tcl. Memory leak summaries are automatically written to the file ./memleak.txt and each leak is tagged with the test in which it occurred. The quick.test script runs on Linux with no errors and no leaks. (CVS 4273) file: [1191c230] check-in: [21f6b310] user: drh branch: trunk, size: 22102
2007-08-21
13:07
Fix some problems in the crash-test backend. (CVS 4256) file: [da83a0e4] check-in: [5bced239] user: danielk1977 branch: trunk, size: 22189
10:44
Remove unnecessary #includes of "os.h". New mutex implementations. (CVS 4255) file: [9a93a553] check-in: [fbbd5bda] user: drh branch: trunk, size: 20206
2007-08-20
22:48
Work toward multithreading support. Currently crashes quickly on a test. (CVS 4253) file: [b0090b48] check-in: [1315bd8e] user: drh branch: trunk, size: 20222
14:23
Changes to crash-test io backend (test6.c) so that it works with the sqlite3_vfs interface. (CVS 4247) file: [d67117b2] check-in: [40f66ada] user: danielk1977 branch: trunk, size: 19415
2007-08-17
15:53
Begin migration to using sqlite3_vfs interface. (CVS 4240) file: [80990810] check-in: [af3e3c7a] user: danielk1977 branch: trunk, size: 19254
2007-08-16
10:09
More work on refactoring of malloc() interfaces. There are still many errors. (CVS 4233) file: [14919eef] check-in: [77b16713] user: danielk1977 branch: trunk, size: 19112
04:30
Half-way through a major refactoring of the memory allocation. I have not even attempted to compile so I am certain there are countless errors. (CVS 4231) file: [b0aea629] check-in: [deb7ecd6] user: drh branch: trunk, size: 18986
2007-08-15
17:08
Modify the crash-recovery test code in test6.c for 3.5. Also change some other code to use the new sqlite3_io_methods interface. Lots of things are broken now. (CVS 4228) file: [4d812a5e] check-in: [af9503da] user: danielk1977 branch: trunk, size: 18972
2007-08-14
17:42
Add comments describing upcoming changes to crash-test module (test6.c). No code changes. (CVS 4223) file: [2c4ed217] check-in: [63631c17] user: danielk1977 branch: trunk, size: 18632
2007-03-19
05:54
Add new OS file method to return the sector-size of the underlying storage: sqlite3OsSectorSize() (CVS 3700) file: [5957d249] check-in: [5752d84d] user: danielk1977 branch: trunk, size: 14614
2007-03-17
10:26
Modifications to crash-test infrastructure. (CVS 3695) file: [edbd903a] check-in: [c4be8d99] user: danielk1977 branch: trunk, size: 14484
2006-01-24
10:58
General test coverage improvements. (CVS 3022) file: [60a02961] check-in: [153940af] user: danielk1977 branch: trunk, size: 13899
2006-01-06
21:52
Changes so that SQLITE_OMIT_PARSER and SQLITE_OMIT_DISKIO work. (CVS 2878) file: [74d91b48] check-in: [9d71b7de] user: drh branch: trunk, size: 13830
14:32
Change the OS interface layer to use traditional direct function call implementations instead of the more complicated virtual function table. Omit the asynchronous I/O demo. (CVS 2870) file: [2c195d07] check-in: [2529c2e1] user: drh branch: trunk, size: 13683
2005-11-30
03:20
Restructure the OS interface yet again. This time make the OsFile object a virtual base class which is subclassed for unix, windows, and the crash test simulator. Add the new file "os.c" for common os layer code. Move all OS-specific routines into the sqlite3Os structure. (CVS 2795) file: [cb811391] check-in: [bd8740d1] user: drh branch: trunk, size: 13649
2005-11-29
18:37
The crash tests now compile, at least. But they get wrong results. The problem is fundamental and suggests I need to completely rethink how the new OS backend should work. (CVS 2792) file: [951effde] check-in: [966bc68e] user: drh branch: trunk, size: 13632
03:13
Make the OsFile structure opaque with its internal structure known only to the appropriate os_*.c implementation. Omit the os_unix.h and os_win.h include files. The crash tests are broken by this patch. (CVS 2791) file: [0543cf07] check-in: [058f3175] user: drh branch: trunk, size: 12520
2005-11-26
03:43
Add an OS method for making copies of file descriptors. This fixes the crash tests. (CVS 2786) file: [d8501501] check-in: [57a674fc] user: drh branch: trunk, size: 12562
00:25
Modify the OS layer so that I/O routines are called through a virtual function table. The os_test.c module has been replaced by test6.c. The crash tests are busted now and need to be fixed. (CVS 2785) file: [d86ca78a] check-in: [1f69aec2] user: drh branch: trunk, size: 12352 Added