SQLite

Timeline
Login

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

100 check-ins occurring around 982cc7f4e7.

2009-04-28
04:47
Make sure sqlite3_open16() always zeros the db return pointer if SQLite initialization fails. (CVS 6552) (check-in: 057c7d17 user: drh tags: trunk)
04:46
Enhance sqlite3_complete() so that it understands EXPLAIN QUERY PLAN. Ticket #3828. Testing is done in TH3. (CVS 6551) (check-in: 3ac1b15f user: drh tags: trunk)
2009-04-27
18:46
Bring the documenation and implementation of sqlite3_collation_needed() into agreement. Use a more efficient implementation of sqlite3ErrStr(). sqlite3_result_error_code() now calls sqlite3ErrStr() if no prior error string was set. (CVS 6550) (check-in: cb9af829 user: drh tags: trunk)
2009-04-25
08:39
Tests for the new asynchronous IO API. (CVS 6549) (check-in: 11b2564e user: danielk1977 tags: trunk)
2009-04-24
20:32
Add another test case for the "x IS NULL" uniqueness problem of ticket #3824. No changes to code. This just double-checks that everything is working now. (CVS 6548) (check-in: 3ceae357 user: drh tags: trunk)
18:06
Dequote the "from" table in a FOREIGN KEY definition (affects the output of "pragma foreign_key_list). Fix for #3800. (CVS 6547) (check-in: 600482d1 user: danielk1977 tags: trunk)
15:46
Get rid of the special RowSet processing in where.c and move that into clients. Added the WHERE_DUPLICATES_OK option to eliminate an unnecessary RowSet during DELETE with a WHERE clause containing ORs. (CVS 6546) (check-in: 98606bee user: drh tags: trunk)
14:51
Make sure that the optimizer realizes that an "x IS NULL" contraint does not necessarily give a single-row result even on a UNIQUE index. Ticket #3824. (CVS 6545) (check-in: 207335fd user: drh tags: trunk)
10:13
Make selecting the asynchronous IO file-locking mode a runtime operation. Still untested. (CVS 6544) (check-in: 577277e8 user: danielk1977 tags: trunk)
09:27
Improve comments and documentation of the asynchronous IO VFS module. (CVS 6543) (check-in: 92bc6be2 user: danielk1977 tags: trunk)
2009-04-23
19:08
os_win.c, winOpen(), changed to handle the SQLITE_OPEN_EXCLUSIVE flag and sharing modes in the same manner as os_unix.c. Ticket #3821. (CVS 6542) (check-in: 18fef3fc user: shane tags: trunk)
18:42
Updated misc. test scripts for Windows testing with gcc/cygwin; (CVS 6541) (check-in: 1e2c7159 user: shane tags: trunk)
18:41
Remove some incorrect async tests; (CVS 6540) (check-in: 03af25b3 user: shane tags: trunk)
14:58
Move the asynchronous IO code from src/test_async.c to ext/async/. Refactor it to be a standalone module and to support windows. (CVS 6539) (check-in: e71fb0fb user: danielk1977 tags: trunk)
13:22
Rework the column-cache mechanism to be more robust (and more correct). The column-alias cache is currently disabled, (CVS 6538) (check-in: dd4d67a6 user: drh tags: trunk)
2009-04-22
17:15
Eliminate the OP_VRowid opcode. The regular OP_Rowid now work for both regular and virtual tables. (CVS 6537) (check-in: ecbef450 user: drh tags: trunk)
15:32
Change the OP_Rowid opcode so that a deferred OP_Seek is pending, it simply pulls the rowid from the deferred seek target and does not actually move the cursor or do a seek. Other where.c cleanups. (CVS 6536) (check-in: 1c508a99 user: drh tags: trunk)
02:15
Remove the rowhash object from the code. Rowset now fills its role. (CVS 6535) (check-in: e963bed0 user: drh tags: trunk)
00:47
Extend the Rowset object to contain all the capabilities of Rowhash in addition to its legacy capabilities. Use Rowset to replace Rowhash. In addition to requiring less code, This removes the 2^32 result row limitation, uses less memory, and gives better bounds on worst-case performance. The Rowhash implementation has yet to be removed. (CVS 6534) (check-in: b101cf70 user: drh tags: trunk)
2009-04-21
18:20
Move RowHashBlock.nUsed to RowHash.nUsed. Fix a typo in a comment in test_async.c. (CVS 6533) (check-in: 799d31d9 user: danielk1977 tags: trunk)
17:23
Fix a segfault that followed a malloc failure introduced by (6527). (CVS 6532) (check-in: 08e71b11 user: danielk1977 tags: trunk)
17:13
Adjust the rowhash.test module so that it recovers gracefully in the rare event of a rowid collision. (CVS 6531) (check-in: 72e16809 user: drh tags: trunk)
16:15
Allocate the initial RowHash object using lookaside. (CVS 6530) (check-in: 9b30ab71 user: drh tags: trunk)
15:05
New comments and minor refactoring of rowhash.c. (CVS 6529) (check-in: b8cb4f3e user: drh tags: trunk)
12:02
Remove a redundant test from sqlite3_shutdown(). (CVS 6528) (check-in: 6f481ceb user: drh tags: trunk)
09:02
Attempt to optimize virtual table queries with 'OR' expressions in the WHERE clause. (CVS 6527) (check-in: f61e4cd9 user: danielk1977 tags: trunk)
2009-04-20
17:43
Change the journal_mode pragma so that it always returns the current journal mode, even on a failed attempt to change the journal mode. Allow the journal mode to be changed as long as there is not a pending transaction. Ticket #3811. (CVS 6526) (check-in: 419e320a user: drh tags: trunk)
13:32
Add new tests to show that journal_mode=OFF works with locking_mode=EXCLUSIVE as long as the journal_mode is set prior to the first transaction. Ticket #3811. (CVS 6525) (check-in: e62ac26f user: drh tags: trunk)
12:31
Clarify the documentation to make it clear that sqlite3_interrupt() does not effect new SQL statements that are started after the running statement count reaches zero. Ticket #3815. (CVS 6524) (check-in: 3182e8bf user: drh tags: trunk)
12:07
Do not use deprecated interfaces internally when compiling with SQLITE_OMIT_DEPRECATED. Ticket #3813. (CVS 6523) (check-in: 7f17956d user: drh tags: trunk)
11:34
Speed improvements by avoiding unnecessary calls to fstat() and ftruncate(). (CVS 6522) (check-in: 5b7e3a41 user: drh tags: trunk)
2009-04-19
20:51
Update comments and remove unused code in btree.c. No functional changes. (CVS 6521) (check-in: bd860184 user: drh tags: trunk)
12:23
Make extra calls to sqlite3_shutdown() be harmless no-ops. (CVS 6520) (check-in: d8082295 user: drh tags: trunk)
2009-04-17
16:54
Revise the implementation of sqlite3_initialize() slightly in order to make it more easily testable. The functionality should be unchanged. (CVS 6519) (check-in: bb1a390a user: drh tags: trunk)
15:18
Get the behavior of SQLITE_HAVE_ISNAN right. It was reversed in check-in (6517). Ticket #3809. (CVS 6518) (check-in: 97c6ea23 user: drh tags: trunk)
11:57
Add the SQLITE_HAVE_ISNAN compile-time option which, if present, causes SQLite to use the math library isnan() function rather than its own homebrew implementation of isnan(). (CVS 6517) (check-in: 54d23521 user: drh tags: trunk)
11:56
Check-in (6514) did not completely remove the obsolete test, resulting in a segfault. This check-in finishes the job. Ticket #3802. (CVS 6516) (check-in: c29b37ea user: drh tags: trunk)
2009-04-16
17:45
Add NEVER and ALWAYS tags to conditionals in analyze.c that always false or true. (CVS 6515) (check-in: fbbc80ea user: drh tags: trunk)
16:32
Remove obsolete test from bindxfer.tcl. Ticket #3802. (CVS 6514) (check-in: b1b09617 user: drh tags: trunk)
16:30
Changes to alter.c to enable full branch coverage testing. (CVS 6513) (check-in: 6a91ab08 user: drh tags: trunk)
12:58
Make sure the 'unixepoch' converter in the date and time functions rounds to the nearest millisecond rather than truncating downward to the next smaller millisecond. Ticket #3808. (CVS 6512) (check-in: e6e036b3 user: drh tags: trunk)
00:24
In a 3-fold compound SELECT make sure early code generation of the SELECTs to the right do not dereference non-existant columns in SELECTs on the left. (CVS 6511) (check-in: 414f3408 user: drh tags: trunk)
2009-04-15
15:16
Fix the group_concat() function so that it inserts the separator string even if the initial content strings are empty. Ticket #3806. (CVS 6510) (check-in: b83fbf15 user: drh tags: trunk)
14:36
Fix access violation on WinCE platforms. Ticket #3804. (CVS 6509) (check-in: e203ad40 user: shane tags: trunk)
13:39
Mark an branch in alter.c as always false. Only run the assert() on the sqlite3_aggregate_count() function in func.c if the SQLITE_OMIT_DEPRECATED compile-time option is off. (CVS 6508) (check-in: c0bba77a user: drh tags: trunk)
13:07
Disable the temptrigger.test test script when shared cache is disabled. Ticket #3801. (CVS 6507) (check-in: feedbce8 user: drh tags: trunk)
2009-04-14
18:44
nMax can be zero and subtracting 1 from an unsigned zero produces undesirable results (CVS 6506) (check-in: a117d82d user: aswift tags: trunk)
12:58
Change the sqlite3_bind_value() implementation to use a default branch on the type switch so that there are no untested jumps in the switch. (CVS 6505) (check-in: d0a8bd6a user: drh tags: trunk)
12:43
Reimplement the sqlite3_bind_value() interface so that it works when the value being bound comes from a different database connection. (CVS 6504) (check-in: 3db0c798 user: drh tags: trunk)
2009-04-13
14:43
Enhancements to virtual table documentation. Comment changes only. No changes to code. (CVS 6503) (check-in: b0b2b283 user: drh tags: trunk)
09:29
Version 3.6.13 (CVS 6502) (check-in: 982cc7f4 user: drh tags: trunk, release)
09:09
Rerun autoconf in preparation for 3.6.13. (CVS 6501) (check-in: f683e222 user: drh tags: trunk)
08:14
updated Makefile.vxwSH4 and renamed it to Makefile.vxworks, should now be able to support SH4 and PPC targets. (CVS 6500) (check-in: e4a370c7 user: chw tags: trunk)
2009-04-11
19:09
Fix malloc5.test so it work on both 64-bit and 32-bit systems. The ::tcl_platform(wordSize) variable has to be used to adjust some memory sizes. (CVS 6499) (check-in: ea20f78e user: drh tags: trunk)
16:27
Fix an obscure problem with recovery from I/O errors while rolling back. (CVS 6498) (check-in: 24ff4861 user: drh tags: trunk)
16:27
Add a comments and an assert() to the virtual table implementation. No functional changes. (CVS 6497) (check-in: ac5d0c0a user: drh tags: trunk)
16:06
Fix a case where a corrupt database could cause an assert() to fail. (CVS 6496) (check-in: 2c560e05 user: danielk1977 tags: trunk)
14:46
Allocate a little extra scratch space for the memsubsys1 tests. The extra space is needed in some configurations. (CVS 6495) (check-in: 54844192 user: drh tags: trunk)
11:38
Increase the hard upper bound on the number of pcache pages in test_pcache when the test harness is compiled for in-memory temp tables. Some of the test cases need to extra memory to avoid unplanned out of memory errors. (CVS 6494) (check-in: 7f2d6a0b user: drh tags: trunk)
10:25
Replace invocation of (really_finish_test) from async.test with (finish_test). Otherwise a tcl exception may be thrown when running permutations. (CVS 6493) (check-in: e6465e9d user: danielk1977 tags: trunk)
09:51
In sqlite3PagerMovepage(), avoid holding a reference to page number X when calling sqlite3PcacheRekey() to move another page to page number X. (CVS 6492) (check-in: 4447c94f user: danielk1977 tags: trunk)
2009-04-10
23:11
Remove more unused branches from vdbeapi.c. (CVS 6491) (check-in: 447e9595 user: drh tags: trunk)
20:55
In the async test, make sure procedures do not get renamed over top of one another. (CVS 6490) (check-in: b6430cc4 user: drh tags: trunk)
20:32
Remove unused branches from the vdbeapi.c module. (CVS 6489) (check-in: 7ae0fc7e user: drh tags: trunk)
18:41
Increase the error tolerance when verifying the approximate size of a pseudo-random database in backup_ioerr.test. Otherwise the test could fail depending on the PRNG seed. (CVS 6488) (check-in: deda5ab3 user: danielk1977 tags: trunk)
18:32
Do not run io.test as part of the inmemory_journal permutation. io.test uses the tcl API to test for journal files in the file-system (which of course never exist when running with in-memory journals). (CVS 6487) (check-in: 493f03bd user: danielk1977 tags: trunk)
18:21
Re-enable the alt_pcache tests in permutations.test so that they run automatically during a full regression. Fix async.test so that it works with the permutation.test pcacheNN test modules. (CVS 6486) (check-in: 310192cc user: drh tags: trunk)
15:42
Fix MSVC compiler warning in vdbeaux.c. (CVS 6485) (check-in: d619465e user: shane tags: trunk)
15:38
Disable the select1-15 tests when locking_mode is EXCLUSIVE. Ticket #3771. (CVS 6484) (check-in: 88cefbb4 user: drh tags: trunk)
15:02
Changes to jrnlmode.test to account for in-memory temp databases. (CVS 6483) (check-in: c31d4359 user: danielk1977 tags: trunk)
14:28
Simplifications and additional comments on the sqlite3_get_table() implementation. Changes to facilitate full branch test coverage. (CVS 6482) (check-in: 57e3e6b3 user: drh tags: trunk)
12:55
Changes to ensure that when running in shared-cache mode with a non-threadsafe build, the correct busy-handler callback is always invoked. (CVS 6481) (check-in: 683e4bd7 user: danielk1977 tags: trunk)
09:47
Always set BtShared.db when entering the BtShared mutex. Ticket #3793. (CVS 6480) (check-in: ed6620ba user: danielk1977 tags: trunk)
00:56
Force 8-byte alignment of sqlite3_value objects in the sqlite3VdbeUnpackRecord() primitive. Ticket #3777. (CVS 6479) (check-in: 2cc68272 user: drh tags: trunk)
2009-04-09
21:02
Increase the version number to 3.6.13 in preparation for the next release. (CVS 6478) (check-in: 9a09a474 user: drh tags: trunk)
14:27
Provide dummy DWORD arguments to output parameters of GetDiskFreeSpace(A|W), NULL causes access violations on Windows NT 4.0 (CVS 6477) (check-in: 5350a658 user: chw tags: trunk)
14:02
Remove misuse detection from the deprecated sqlite3_transfer_bindings() interface. The code was hard to test and was simply taking up space. (CVS 6476) (check-in: 4cd82910 user: drh tags: trunk)
01:23
Enhance sqlite3_shutdown() so that it automatically invokes sqlite3_reset_auto_extension(). This is a harmless no-op if applications are already calling sqlite3_reset_auto_extension() prior to sqlite3_shutdown(). And it prevents possible memory corruption if they do not. So it works either way. Most of the changes are to the test cases. (CVS 6475) (check-in: 0c41f7cf user: drh tags: trunk)
2009-04-08
23:05
Simplify the implementation of the columnName() function in vdbeapi.c. This is a code cleanup only - no behavior changes. (CVS 6474) (check-in: 0628f586 user: drh tags: trunk)
23:04
Add an assert() to the implementation of count(*) that checks the correct operation of the sqlite3_aggregate_count() function. (CVS 6473) (check-in: f322be38 user: drh tags: trunk)
16:10
Reconfigure the default case for the printf switch in order to improve branch coverage. (CVS 6472) (check-in: 3cc79162 user: drh tags: trunk)
15:45
Remove a pair unnecessary conditions from printf.c. The "db" parameter is now required for sqlite3MPrintf(). (CVS 6471) (check-in: 6fe8b5d7 user: drh tags: trunk)
13:51
Minor refactoring of the expression-compaction logic for clarity of presentation. New comments added. The EXPRDUP_DISTINCTSPAN flag is removed as obsolete. (CVS 6470) (check-in: 44ded2ea user: drh tags: trunk)
12:21
Do not attempt to walk a TokenOnly or SpanOnly expression tree node. Ticket #3791. (CVS 6469) (check-in: 8362d883 user: drh tags: trunk)
11:49
Add a comment to printf.c - no changes to code. (CVS 6468) (check-in: ee5a4a0e user: drh tags: trunk)
2009-04-07
22:06
Fix the sqlite3_unlock_notify() interface so that when the callback is NULL it simply cancels any outstanding callbacks. (CVS 6467) (check-in: 9ccfcb76 user: drh tags: trunk)
22:05
Remove two unused tests from the integrity_check pragma logic. (CVS 6466) (check-in: 22999d31 user: drh tags: trunk)
14:38
Fix an incorrect assert in btree.c. (CVS 6465) (check-in: 2c1f5983 user: danielk1977 tags: trunk)
14:14
Fix compilation and testing when SQLITE_OMIT_TRIGGER is defined. Ticket #3786. (CVS 6464) (check-in: 277dace4 user: danielk1977 tags: trunk)
13:48
Only enable WHERE-tracing when both TEST and DEBUG are enabled. (CVS 6463) (check-in: 55b93649 user: drh tags: trunk)
11:21
Change "... myfunction() { ... }" to "... myfunction(void) { ... }" in a few pla ces. Ticket #3783. (CVS 6462) (check-in: 6f79e6ae user: danielk1977 tags: trunk)
09:16
Have OP_IdxRowid handle the case where the index entry it is reading from is deleted. (CVS 6461) (check-in: cdad29b5 user: danielk1977 tags: trunk)
05:35
Compile fixes and improvements for vxwork: fixed deadlock in semClose, detect if fcntl is usable, fall back to named semaphores if not. (CVS 6460) (check-in: efd0682b user: chw tags: trunk)
00:49
Remove an unused test for EXPLAIN-mode in the PRAGMA processing. (CVS 6459) (check-in: 909683b3 user: drh tags: trunk)
00:43
Always enable WHERE-tracing on a test build. Oops - accidentally included a debugging change to pragma.c in this check-in. The real fix for the pragma problem is in the following checking. (CVS 6458) (check-in: 567cf90b user: drh tags: trunk)
00:35
It is OK for a unix file descriptor to be zero. It just can't be negative. Adjust an assert accordingly. Ticket #3781. (CVS 6457) (check-in: 47aa7eb0 user: drh tags: trunk)
2009-04-06
17:50
Test cases and minor code changes to increase coverage of btree.c. (CVS 6456) (check-in: def3a016 user: danielk1977 tags: trunk)
15:55
Updates and clarification to the documentation of the sqlite3_temp_directory global variable. No changes to code. (CVS 6455) (check-in: aea99c57 user: drh tags: trunk)
14:16
Allow "default" to be a keyword used by PRAGMA statements. (CVS 6454) (check-in: ed99d2d9 user: drh tags: trunk)
12:26
Make sure the reverse_unordered_selects pragma works even on unindexed tables that are queried without a WHERE clause (CVS 6453) (check-in: d8c6b28a user: drh tags: trunk)