SQLite

Timeline
Login

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

122 check-ins using file src/where.c version 7d09f4c1

2011-09-15
23:58
Materialize subqueries using a subroutine and invoke that subroutine prior to each use of the materialization. Fix for ticket [002caede898aee4] (check-in: 4b8357ee user: drh tags: tkt-002caede898)
19:39
Adding test case for ticket [002caede898] (check-in: 62dfc51a user: drh tags: tkt-002caede898)
00:40
Cleanup/fix error handling when no arguments are supplied to the SQLite analyzer. (check-in: 3fc566ac user: mistachkin tags: trunk)
2011-09-14
19:41
Merge latest changes from the trunk into the sessions branch. (check-in: c00e45ed user: dan tags: sessions)
19:05
Merge in the latest changes from trunk. (check-in: 2456b4d0 user: drh tags: apple-osx)
18:19
Remove 'const' from a variable that might actually be written when an OOM error occurs. Also, fix a couple MSVC/Win32 compiler warnings. (check-in: 3035dc1c user: mistachkin tags: trunk)
13:41
Remove unused parameters from internal routines in vdbesort.c. This is an additional simplification made possible by recent optimizations. (check-in: a1f3aeeb user: drh tags: trunk)
13:23
Remove code from vdbesort.c that was made unreachable by the recent sqlite3VdbeRecordUnpack() optimizations. (check-in: 607aba6c user: drh tags: trunk)
2011-09-13
19:08
Allocate the correct size for the output buffer in fts3DoclistOrMerge(). Fix for [56be976859]. (check-in: 07788c0f user: dan tags: trunk)
2011-09-11
10:14
Cleanup pdb/ilk files generated by the MSVC makefile. (check-in: a9db247b user: mistachkin tags: trunk)
2011-09-05
20:16
Fix a minor performance regression in btreeMoveto(). (check-in: d0712dfb user: dan tags: trunk)
14:20
Refactor the sqlite3VdbeRecordUnpack() interface to better accommodate the vdbesort.c module. (check-in: f115b230 user: dan tags: trunk)
2011-09-04
01:27
Fix a compiler warning about an unused parameter in the merge-sort code. (check-in: 6b657ae7 user: drh tags: trunk)
01:11
Improve the testability of the merge-sort logic. (check-in: b5179baf user: drh tags: trunk)
2011-09-03
17:07
Performance improvements to the external merge-sorter. Keep content on an in-memory linked lists rather than an ephemeral table prior to spilling to disk. Use the external merge-sorter to implement ORDER BY and GROUP BY in addition to CREATE INDEX. (check-in: 4c43e8b2 user: drh tags: trunk)
16:42
Simplification and performance tweaks in vdbeSorterMerge(). (Closed-Leaf check-in: 99e34bdc user: drh tags: merge-sort)
14:36
Reduce the number of VdbeRecordUnpack() calls made in vdbesort.c. (check-in: 666c2c3c user: dan tags: merge-sort)
00:17
The build works again with -DSQLITE_OMIT_MERGE_SORT. The merge-sorter now avoids spilling to disk (letting the in-memory linked list grow without bound) if PRAGMA temp_store=3. (check-in: 68e26c44 user: drh tags: merge-sort)
2011-09-02
21:42
Remove some dead code. Fix a faulty assert(). Improve some variable names. (check-in: a9a64592 user: drh tags: merge-sort)
18:03
Combine two malloc calls in vdbesort.c. (check-in: cf48ad83 user: dan tags: merge-sort)
15:41
Reduce the number of malloc() calls made when creating an index on more than 2 columns. (check-in: 065b0c98 user: dan tags: merge-sort)
15:08
Remove unused local variable. (check-in: 61bda876 user: mistachkin tags: trunk)
11:45
If all data being sorted fits in memory, avoid writing any data out to temporary files in vdbesort.c. (check-in: 71075673 user: dan tags: merge-sort)
10:31
Instead of a temporary b-tree, use a linked-list and merge-sort to sort records in main memory in vdbesort.c. (check-in: 7769fb98 user: dan tags: merge-sort)
2011-09-01
16:01
Use OP_SorterOpen instead of OP_OpenEphemeral to implement GROUP BY. (check-in: ebf819aa user: drh tags: merge-sort)
15:32
Experimental code-generator changes to utilize new opcodes for sorting. (check-in: bab2e560 user: drh tags: merge-sort)
2011-08-31
23:57
Avoid using uninitialized variables after failures in the merge sort code. (check-in: 2869ed28 user: drh tags: trunk)
21:01
Formerly, we enabled fdatasync() on linux only. But now we learn that fdatasync() is not supported on Android. So we disable fdatasync() on Linux too. It can be reenabled at compile-time for those who really need it. (check-in: 70b5b309 user: drh tags: trunk)
20:47
Add the SQLITE_MAX_SCHEMA_RETRY compile-time option to the set of options understood by "PRAGMA compile_options;" and by the "sqlite_compileoption_used()" function. (check-in: 1b124af4 user: drh tags: trunk)
19:40
The server1.test script should only run if mutexes are functional. Fix to the #ifdef change of check-in [9e6a4c1473]. (check-in: 64898485 user: drh tags: trunk)
18:35
Always include the unixShm.id field, even when not debugging. (check-in: 07803476 user: drh tags: trunk)
18:04
Only create the sqlite3OSTrace global variable if compiling with SQLITE_TEST. (check-in: 9e6a4c14 user: drh tags: trunk)
17:46
Backslash escaping is not working right in tostr.awk on the latest ubuntu. The easiest fix is to simply not use any backslashes in the spaceanal.tcl script. (check-in: df550066 user: drh tags: trunk)
13:27
Add checks to make sure cells in corrupt database files do not overflow a page when doing autovacuum. Problem detected by valgrind. (check-in: d0b347b4 user: drh tags: trunk)
2011-08-30
19:52
Enable the thread test logic to work with the SQLITE_HAS_CODEC compile-time option. (check-in: 20ddfb47 user: drh tags: trunk)
01:29
Change the build process so that it does not require the unix "sort" command. This avoids confusion between ms-sort and mingw-sort on windows systems. (check-in: f1bd5bba user: drh tags: trunk)
01:23
Make sure SQLITE_FCNTL_SIZE_HINT a no-op if the chunk size is not greater than zero. (check-in: 88b763e8 user: mistachkin tags: trunk)
00:58
Fix a total unimportant file descriptor leak in lemon. This is to silence warning messages. (check-in: e95cf2c5 user: drh tags: trunk)
00:53
Fix a buffer overrun in test logic. No impact on the core SQLite. (check-in: 49cd60e3 user: drh tags: trunk)
2011-08-29
18:24
Fix a broken assert() statement in select.c. (check-in: ad78ef2b user: dan tags: trunk)
11:56
Back out [05c9832e5f6eb] since it was causing a performance regression with no obvious benefit. (check-in: 639cc85a user: drh tags: trunk)
03:08
Merge performance enhancements into trunk. (check-in: 5a00d24b user: drh tags: trunk)
02:49
About a 1% overall performance improvement by using a macro to avoid no-op calls to sqlite3MemReleaseExternal(). (Closed-Leaf check-in: ff71d20a user: drh tags: experimental)
02:16
Small performance improvement to OP_Column. (check-in: b6b73a74 user: drh tags: experimental)
2011-08-28
02:15
About a 3% improvement in the performance of OP_Column. (check-in: edff9d4a user: drh tags: experimental)
00:19
Correctly display P4_ADVANCE values on opcode traces. Mark an always-taken branch in OP_Column as such. (check-in: 087dc960 user: drh tags: experimental)
2011-08-27
18:48
Experimental changes to improve the performance of OP_Next. (check-in: 1a249845 user: dan tags: experimental)
2011-08-26
20:55
Fix several harmless compiler warnings and a documentation bug. (check-in: 5454d0fe user: drh tags: trunk)
19:20
Merge the latest trunk changes into the sessions branch. (check-in: eb036d6f user: drh tags: sessions)
19:18
Merge the latest trunk changes into the apple-osx branch. (check-in: 55af8003 user: drh tags: apple-osx)
11:25
Update compiler error message regarding the choice of memory allocator defines. (check-in: 1dada515 user: mistachkin tags: trunk)
11:18
Merge Win32 native heap support into trunk. (check-in: 5238a749 user: mistachkin tags: trunk)
05:40
In the MSVC makefile, allow symbols to be enabled without NDEBUG defined. Also, for the win32lock test, make sure the database is closed prior to shutdown. (Closed-Leaf check-in: 5ed7633d user: mistachkin tags: winNativeHeap)
01:45
Disable checking the winMemData structure signature when compiled with NDEBUG. (check-in: 50edc2f9 user: mistachkin tags: winNativeHeap)
01:32
Allow the Win32 native heap flags to be overridden at compile-time. (check-in: 1c2ecec8 user: mistachkin tags: winNativeHeap)
00:34
Create a new pager type, PAGER_SORTER, for use in the external merge sort. Such pagers are always held in memory but do report when they are under memory pressure by calling pagerStress. (check-in: c71d7320 user: drh tags: trunk)
2011-08-25
20:18
Reorder some of the branches in backup.c in order to make the code easier to test. (check-in: 2c443d47 user: drh tags: trunk)
19:28
Replace an assert() that a condition may not occur in backup.c with code to handle that condition, which can occur. (check-in: 472c74b3 user: dan tags: trunk)
18:54
Fix harmless compiler warnings in test code. No changes to the core. (check-in: 16f83fec user: drh tags: trunk)
18:01
Disable external merge source when SQLITE_TEMP_STORE==3. Add documentation to the OP_OpenSorter opcode. (check-in: 5a690486 user: drh tags: trunk)
13:46
Fix the SQLITE_DISABLE_DIRSYNC compile time option. (check-in: 6deb3ea1 user: dan tags: trunk)
04:09
Add comments for the various debug levels. When debugging, disable optimizations. Prevent the win32lock tests from spinning forever. (check-in: 40185923 user: mistachkin tags: winNativeHeap)
03:38
Fix an file separator character issue with test_quota.c that was causing it to fail on windows. (check-in: ddb8d3e8 user: drh tags: trunk)
02:02
In the MSVC makefile, support several levels of debugging, each one building on the previous. Also, add comment about the SQLITE_WIN32_MALLOC_VALIDATE macro. (check-in: 4257e9b7 user: mistachkin tags: winNativeHeap)
01:58
Cherrypick the [d4f6437f8d] change so that SQLITE_FCNTL_SIZE_HINT is always honored and never undone by memory pressure on windows. (check-in: 67ff8d27 user: drh tags: trunk)
01:42
Add the sqlite3_quota_file() interface to test_quota.c. (check-in: 2b7fe8e5 user: drh tags: trunk)
01:16
Make sure that SQLITE_FCNTL_SIZE_HINT on Windows does not shrink the file. (check-in: d4f6437f user: mistachkin tags: winNativeHeap)
00:14
Add the SQLITE_EXTRA_INIT macro. (check-in: a3220f36 user: drh tags: trunk)
2011-08-24
17:42
Add error logging to native Win32 heap support. (check-in: 7fca5a28 user: mistachkin tags: winNativeHeap)
16:13
Experimental work to allow SQLite to use the native Win32 heap API. (check-in: bf3d0ab5 user: mistachkin tags: winNativeHeap)
15:18
Updates to the sqlite3_mem_methods documentation. (check-in: 988998fe user: drh tags: trunk)
15:12
Fix some harmless compiler warnings. (check-in: 46f5a68b user: drh tags: trunk)
01:25
Changes to test_quota.c to make quota groups persistent even after files are closed. Files remain a part of the quota group until they are deleted. (check-in: 04111ce9 user: drh tags: trunk)
2011-08-23
23:41
Simplifications to the SQLITE_PAGECACHE_BLOCKALLOC logic. Reduce the number of difficult-to-reach branches. (check-in: d5d835fe user: drh tags: trunk)
20:11
If the application-defined openDirectory() function returns SQLITE_CANTOPEN, then silently ignore the error. This allows the chromium sandbox to disallow opening of directories without causing errors. (check-in: 880b5115 user: drh tags: trunk)
19:46
Change the way the "crash" VFS (test6.c) handles SQLITE_FCNTL_SIZE_HINT. (check-in: 40dd8a60 user: dan tags: trunk)
18:06
Merge latest trunk changes into the apple-osx branch. (check-in: c5f7977b user: dan tags: apple-osx)
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. (check-in: fac8bc8f user: dan tags: trunk)
13:27
Ifdef out routines in pcache1.c that are used only when SQLITE_PAGECACHE_BLOCKALLOC is defined. (check-in: 0da292da user: drh tags: trunk)
12:50
Merge the PAGECACHE_BLOCKALLOC changes into trunk. (check-in: 768c1846 user: drh tags: trunk)
11:47
When copying a rollback mode database over a WAL database using the backup API, leave the destination database in WAL mode (instead of switching it to rollback mode). Fix for [af95b8c609]. (check-in: 35e6ac18 user: dan tags: trunk)
05:10
Change to test instrumentation of os_unix.c: Regard IO errors that occur within SQLITE_FCNTL_SIZE_HINT requests as benign. (This check-in was intended for trunk and went onto the branch accidentally.) (Closed-Leaf check-in: ca47da2a user: dan tags: pager-blockalloc)
00:01
Remove a branch that is always true. (check-in: a6568192 user: drh tags: trunk)
2011-08-22
20:33
Remove an unreachable branch in the FK code. (check-in: 6c227cc8 user: drh tags: trunk)
14:55
Modify test cases so that veryquick.test passes with PAGECACHE_BLOCKALLOC defined. (check-in: c6100070 user: dan tags: pager-blockalloc)
09:54
Fix for [b1d3a2e531]. (check-in: 3f3acee4 user: dan tags: trunk)
2011-08-19
18:15
Experimental change: If SQLITE_PAGECACHE_BLOCKALLOC is defined, instead of allocating pages one at a time, allocate blocks of between 15 and 63 pages in a single allocation. (check-in: 63597097 user: dan tags: pager-blockalloc)
14:54
When retrying a write() after an EINTR error on unix, be sure to also rerun the previous lseek(). Ticket [e59bdf6116036a] (check-in: 21452f3a user: drh tags: trunk)
2011-08-18
17:47
Ensure that the Tcl "db onecolumn" command returns an empty string if the SELECT statement returns zero rows. (check-in: 928bcaf0 user: dan tags: trunk)
2011-08-17
07:46
Properly process x64 DLL exports, which do not contain a leading underscore, in the MSVC makefile. (check-in: d5936324 user: mistachkin tags: trunk)
02:19
Add vdbesort.c to the MSVC makefile. (check-in: 8eaa2cd3 user: mistachkin tags: trunk)
00:40
Use OP_Sort rather than OP_Rewind in order to sort the content of a new index on the CREATE INDEX statement. Add an ALWAYS() to the merge sort logic to document an unreachable branch. (check-in: f01766f4 user: drh tags: trunk)
2011-08-15
19:44
Updated comments on the multiplexor extension. No changes to code. (check-in: 0f42ef69 user: drh tags: trunk)
15:37
Fix an assert() in the merge-sort logic to account for I/O errors. (check-in: c1daa809 user: drh tags: trunk)
15:27
New makefile target "sqlite3-debug.c" builds an amalgamation that include appropriate "#line" macros relating the code back to the original source files. (check-in: 26f2da24 user: drh tags: trunk)
14:41
When opening a temporary file to use in a merge-sort, pass SQLITE_OPEN_TEMP_JOURNAL instead of SQLITE_OPEN_TEMP_DB. This is a better fit, as merge-sort files are written and read sequentially like journal files. (check-in: bd04756b user: dan tags: trunk)
2011-08-13
10:47
Fix the header comment on the implementation of the file_control_sizehint_test TCL command in test1.c. (check-in: 30919808 user: drh tags: trunk)
2011-08-12
16:47
Merge the experimental changes to use a merge-sort when creating an index into the trunk. (check-in: 346a453d user: dan tags: trunk)
16:34
Update Makefile.in and configure to account for new source file vdbesort.c. (Closed-Leaf check-in: 69e4b41d user: dan tags: experimental)
16:30
Merge latest trunk changes into experimental branch. (check-in: 7e515055 user: dan tags: experimental)
2011-08-10
01:52
Make the openDirectory routine in os_unix.c overrideable so that it can be turned into a harmless no-op for the chromium sandbox. (check-in: 6b236069 user: drh tags: trunk)
2011-08-09
18:14
Add command-line utilities "offsets.c" and "extract.c" for use in low-level analyzsis of database files. (check-in: dfa22ed4 user: drh tags: trunk)
2011-08-08
23:48
In os_unix.c, do not open the directory containing the database file when the database file is opened. Instead, wait until time to fsync() the directory. And do not report an error if the open fails, since some systems (Ex: AIX and a chromium sandbox) are unable to open and fsync directories. (check-in: 713b1b7d user: drh tags: trunk)
23:18
Allow the unlink() system call to be overridden in os_unix.c. (check-in: 8d1b5c3a user: drh tags: trunk)
2011-08-07
01:31
Remove relevant elements from the sqlite_stat2 table when doing a DROP INDEX or DROP TABLE. (check-in: 3c8f97ae user: drh tags: trunk)
2011-08-06
01:22
Fix a compiler warning when STAT2 is off. More test cases. Fix legacy tests to deal with the new STAT2 logic. (check-in: 7e914aa9 user: drh tags: query-planner-tweaks)
2011-08-05
22:31
Bug fixes to the sample-count logic for STAT2. A few test cases added. (check-in: e93c248c user: drh tags: query-planner-tweaks)
21:13
Add a column to the sqlite_stat2 table that contains the number of entries with exactly the same key as the sample. We do not yet do anything with this extra value. Some tests in analyze2.test are failing. (check-in: eb434228 user: drh tags: query-planner-tweaks)
2011-08-03
22:06
Merge the winopen-retry-logic branch into trunk. The biggest change here is to test scripts, which should now use such as copy_file and delete_file from tester.tcl rather than the raw file commands of TCL. (check-in: b90c28be user: drh tags: trunk)
21:46
Merge the latest trunk changes into the sessions branch. (check-in: c5709036 user: drh tags: sessions)
16:40
Update the OP_Move opcode to shift the pScopyFrom pointer of aliases when compiled with SQLITE_DEBUG. Ticket [d63523637517386191]. (check-in: a2135ad1 user: drh tags: trunk)
2011-08-02
23:45
Add explanatory comment to the win32lock-2.2 test case. (Closed-Leaf check-in: 4cb17881 user: mistachkin tags: winopen-retry-logic)
23:34
Correct subtle timing issues in the win32lock test cases and in the lock_win32_file Tcl command. Also, eliminate superfluous MSVC compiler warnings. (check-in: 7baf0294 user: mistachkin tags: winopen-retry-logic)
20:19
Fix missing info exists check for win32lock-2.2 (the one previously applied to win32lock-1.2). (check-in: 8a52698e user: mistachkin tags: winopen-retry-logic)
20:14
Exclude the 8_3_names.test script from the inmemory_journal permutation. (check-in: 78fc94c8 user: drh tags: trunk)
20:03
Replace the missed 'file copy' in malloc_common.tcl with copy_file. (check-in: cd20b4ef user: mistachkin tags: winopen-retry-logic)
20:01
Merge in the permutation changes from trunk. (check-in: b30a5e30 user: drh tags: winopen-retry-logic)
19:59
Also exclude backcompat.test from inmemory_journal since inmemory_journal is not compatible with WAL mode. (check-in: 861a5b62 user: drh tags: trunk)
19:42
Merge the latest trunk changes into the winopen-retry-logic branch. (check-in: 8bef97a0 user: drh tags: winopen-retry-logic)
19:30
Omit backcompat.test from the journaltest permutation because it uses WAL mode which is incompatible with journaltest. (check-in: 2bbf3150 user: drh tags: trunk)
18:25
Merge all the latest trunk changes into the apple-osx branch. (check-in: 77376b33 user: drh tags: apple-osx)
01:57
Make sure IS NOT NULL constraints work on virtual tables. Fix for ticket [6c14288a473ceff]. (check-in: a55f4ab9 user: drh tags: trunk)