/ Timeline
Login

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

100 ancestors of [fdd478bb]

2014-08-28
19:38
Improved WHERETRACE messages for the estimated output row reductions from range scans. check-in: fdd478bb user: drh tags: trunk
17:30
Fix a problem causing an inaccurate stat4-based estimate for the number of rows visited by a range scan. check-in: a9daf3ac user: drh tags: trunk
17:20
Add a testcase() macro to help verfity the row estimation logic. Closed-Leaf check-in: 6ba60952 user: drh tags: stat4-experimental
16:01
Fix a problem causing an inaccurate stat4-based estimate for the number of rows visited by a range scan. check-in: 052d89b5 user: dan tags: stat4-experimental
13:42
Fix a formatting error ("%d" needed in place of "%g") on a WHERETRACE macro inside of the query planner. This fix applies to debugging logic only. check-in: c931ca2b user: drh tags: trunk
2014-08-27
23:18
Refactor the sqlite3PcacheFetch() routine into three separate routines, which are significantly faster overall and about 100 bytes smaller in size as well. check-in: bdb6e497 user: drh tags: trunk
17:53
Add a VDBE synopsis comment for clarification. check-in: 029a6dc7 user: mistachkin tags: trunk
17:48
Add a missing ticket number to a comment in index7.test. check-in: d8b1c433 user: dan tags: trunk
17:37
When determining whether or not a partial index is usable, do not assume that the cursor number assigned to each table in the query is the same as its index in the FROM clause. Fix for ticket [98d973b8f5]. check-in: fcebca16 user: dan tags: trunk
14:14
In the sqlite3_context object, keep a pointer to the result value rather than storing the result value in the sqlite3_context object and using memcpy() to move the value back into its register after the function returns. This runs faster and saves over 500 bytes of code space. check-in: 6c1ee3e3 user: drh tags: trunk
03:28
Factor out the exception paths from sqlite3ValueToText() into a separate function so that the main routine is much faster for the common case of no required type or encoding conversions. check-in: 1624916c user: drh tags: trunk
00:50
Performance enhancement in sqlite3VdbeMemNulTerminate(). check-in: f94cacc3 user: drh tags: trunk
2014-08-26
15:06
Change the page cache so that a new sqlite3_pcache object is allocated as soon as the page cache is opened, not delayed until the first fetch request. This give a noticable performance boost. The interface between pager and the page cache has changed slightly, which might break ZIPVFS. check-in: f1f94a97 user: drh tags: trunk
2014-08-25
22:37
Add an assert() and five testcase() macros to the OP_Cast opcode implementation to help verify that it is fully tested. check-in: af364cce user: drh tags: trunk
21:11
Minor changes to the CAST logic to make it more testable. check-in: 1ad70ec5 user: drh tags: trunk
20:21
Test cases added for using unary "+" and CAST operators on the RHS of range constraints and verifying that STAT3/4 can use those constraints. check-in: 42505e5a user: drh tags: trunk
20:11
Allow CAST expressions and unary "+" operators to be used in the DEFAULT argument of an ALTER TABLE ADD COLUMN and to be understand on the RHS of range constraints interpreted by STAT3/4. This involves a rewrite of the implementation of the CAST operator. check-in: 91d8a8d0 user: drh tags: trunk
18:29
In cases where stat4 data is available but cannot be used because the rhs of a range constraint is too complex a expression, fall back to using the default estimates for number of rows scanned. check-in: e06dc6f0 user: dan tags: trunk
11:33
Remove the pager_lookup() function since it is redundant with sqlite3PagerLookup(). check-in: 54164ce4 user: drh tags: trunk
11:20
Change the name of the VdbeMemRelease() macro to VdbeMemReleaseExtern() to more accurately reflect what it does. Performance enhancement to the sqlite3VdbeMemRelease() function. check-in: 3ca5846d user: drh tags: trunk
2014-08-24
02:53
The sqlite3VdbeChangeEncoding() routine goes about 3x faster if the sqlite3VdbeMemTranslate() subroutine is not inlined. check-in: 0c7e1b87 user: drh tags: trunk
01:32
Patch the sqlite3PagerWrite() method in the Pager to run a bit faster. check-in: c63311e2 user: drh tags: trunk
2014-08-23
23:15
Faster implementation of pcache1Fetch() check-in: 0371cc3b user: drh tags: trunk
20:25
Faster implementation of the sqlite3ApiExit() routine. check-in: bd41d394 user: drh tags: trunk
19:42
Another memory allocator performance optimization. check-in: 6da6f46d user: drh tags: trunk
19:08
Fix a variable-declaration after code problem in btree.c. Harmless in GCC and CLANG but unacceptable for MSVC. check-in: 45abd5c0 user: drh tags: trunk
19:04
Changes to sqlite3ScratchMalloc() that make the entire memory allocation interface a little faster and about 100 bytes smaller. check-in: f83daa16 user: drh tags: trunk
18:17
Make the implementation of the sqlite3_aggregate_context() interface faster for second an subsequent invocations. This helps all aggregate functions to perform better. check-in: 802148f3 user: drh tags: trunk
17:41
Improved performance in the type handling of arithmetic operators in the VDBE. check-in: 0c0a6039 user: drh tags: trunk
17:21
Performance optimization in the applyAffinity() logic inside the VDBE. check-in: 25f2246b user: drh tags: trunk
2014-08-22
23:33
Another performance tweak: Split the sqlite3BtreeCursorHasMoved() routine into two with the second routine named sqlite3BtreeCursorRestore(). The first now only reports whether or not the cursor has moved and the second tries to restore the cursor. This allows the sqlite3VdbeCursorMoveto() routine to be refactored to avoid stack pointer movements, for a noticable performance gain. check-in: ce123b5c user: drh tags: trunk
22:26
Factor the saveAllCursors() routine of btree.c into two separate routines, for a noticable performance improvement. check-in: 3eb08439 user: drh tags: trunk
21:58
Performance enhancements in the b-tree mutex logic. check-in: 89145306 user: drh tags: trunk
20:35
Combine the pcacheAddToDirtyList() and pcacheRemoveFromDirtyList() routines into a single pcacheManageDirtyList() routine. The resulting binary code is slightly faster and a few bytes smaller. check-in: 6bcf1af6 user: drh tags: trunk
18:48
Performance enhancement in sqlite3PutVarint(). check-in: a929be55 user: drh tags: trunk
18:00
Split the sqlite3Error() routine into sqlite3Error() and sqlite3ErrorWithMsg(), for a slight size reduction and performance increase. check-in: cf561d1f user: drh tags: trunk
15:40
Performance improvement in the printf() logic by avoiding unnecessary stack pointer movement. check-in: f7f2160d user: drh tags: trunk
15:19
Improve the performance and reduce the size of the sqlite3VdbeSerialGet() routine by avoiding the use of stack. check-in: ebc10e46 user: drh tags: trunk
14:56
Handle the 4-byte integer case in the stackless routine. Closed-Leaf check-in: 3f55484e user: drh tags: experimental
14:34
Get the sqlite3VdbeSerialGet() routine to run faster by avoiding the use of local variables. check-in: 8267d821 user: drh tags: experimental
13:22
Change a while-loop into a do-loop in sqlite3VdbeSerialPut() for a small size reduction and performance improvement. check-in: 750bb0a0 user: drh tags: trunk
11:11
Enhance the spellfix extension with the ability to specify a rowid when inserting new rows. check-in: 369c480c user: drh tags: trunk
2014-08-21
20:26
Simplify the interface to the symbol table, saving 600 bytes of code space. check-in: 14b0f561 user: drh tags: trunk
14:10
Fix a faulty assert() statement. Add comments to clarify the behavior of the sqlite3OpenTableAndIndices() routine in insert.c. Add test cases to verify that the assert() statement is not firing inappropriately. Ticket [369d57fb8e5ccdff06f1]. check-in: 7029b340 user: drh tags: trunk
2014-08-20
23:42
Increase the version number to 3.8.7 check-in: 91594aae user: drh tags: trunk
23:38
Enhancements to skip-scan such that it is operable when a middle column of an index is skipped while the left-most column is constrained in the WHERE clause. check-in: bc985caa user: drh tags: trunk
18:43
A small performance improvement in freeSpace() by special-casing the relatively common case of an empty freelist. check-in: 49f44d35 user: drh tags: trunk
17:56
Reimplement the freeSpace() routine in btree.c so that it runs faster. check-in: fe4fd014 user: drh tags: trunk
14:37
Refactor local variable names in the freeSpace() routine of btree.c for improved understandability. check-in: 7e63089a user: drh tags: trunk
13:35
Size reduction and performance improvements in btree.c and the allocateSpace() routine. Also fix an assert() in freeSpace(). check-in: 121308fa user: drh tags: trunk
13:25
Add SQLITE_API macros in front of interface routines in the test_intarray.c extension. check-in: eea06617 user: drh tags: trunk
13:17
Change an assert() added by the previous commit into a testcase(). Fix a separate assert() in btree.c:freeSpace(). Closed-Leaf check-in: fe51d3aa user: drh tags: btree-speedup
11:56
Further size reduction and performance improvement in btree.c:allocateSpace(). check-in: 1cb1cd64 user: drh tags: btree-speedup
10:42
Fix a typo in the showdb usage message. check-in: 6c66beae user: dan tags: trunk
00:54
Minor performance improvement and size reduction for the btree-page space allocator. check-in: 73637d12 user: drh tags: trunk
2014-08-19
23:04
Modify the memsubsys1-3.1.4 test so that it does not fail arbitrarily due to variations in the behavior of system malloc(). check-in: d280157d user: drh tags: trunk
20:41
A better fix for the sqlite3_trace() problem. Ticket [11d5aa455e0d98f3c1e6a] check-in: 44d5bd4c user: drh tags: trunk
20:27
Make sure the sqlite3_trace() callback is invoked, even if the prepared statement was marked "expired" before it ever entered sqlite3_step(). Ticket [11d5aa455e0d98f3c1e6a08]. check-in: 0d4d3df4 user: drh tags: trunk
19:28
Improvements to output formatting with the ".trace" command in the command-line shell. check-in: d09d63c0 user: drh tags: trunk
09:15
Minor changes to do with the Tcl tea extension package autoconf system. check-in: f10a6111 user: dan tags: trunk
2014-08-18
13:45
Refactor the names of state objects in the command-line shell implementation.. check-in: 11a70e1a user: drh tags: trunk
2014-08-15
16:13
Fix compiler warnings on WinCE. check-in: 28a379fc user: drh tags: trunk
11:46
Version 3.8.6 check-in: 9491ba7d user: drh tags: trunk, release, version-3.8.6
2014-08-14
19:53
Fix an assert that can fail if the database file is corrupted. check-in: 3f45b819 user: dan tags: trunk
18:31
Fix compiler warnings on WinCE. Closed-Leaf check-in: cc910b8e user: mistachkin tags: winCeWarn
13:06
Fix typos in comments used to help generate documentation. No changes to code. check-in: 13a2d90a user: drh tags: trunk
02:59
Add icon to the Windows shell executable. This is a resource change only, no changes to code. check-in: f5cce9db user: mistachkin tags: trunk
2014-08-13
11:39
Minor change to unixDelete for VxWorks with a DOS filesystem. check-in: f01d42cc user: drh tags: trunk
2014-08-12
20:13
Fix where9.test so that it works with the "no_optimization" permutation. check-in: d46adf9d user: dan tags: trunk
16:13
Fix compilation issue in the Win32 VFS when manually defining SQLITE_WIN32_NO_ANSI. check-in: 67159912 user: mistachkin tags: trunk
14:29
Improve the comments associated with SQLITE_TEST_REALLOC_STRESS and add an extra assert() to prove an assumption. check-in: 35c45461 user: drh tags: trunk
14:06
Run a test with TEST_REALLOC_STRESS and OMIT_LOOKASIDE defined as part of releasetest.tcl on Linux/x86-64. check-in: a1baf3a7 user: dan tags: trunk
13:38
If SQLITE_TEST_REALLOC_STRESS is defined, extend the op-code array used by virtual-machine programs by one element at a time, instead of doubling its size with each realloc(). check-in: 4c291827 user: dan tags: trunk
12:19
Fix typos in the VxWorks code of os_unix.c. check-in: 19682e8f user: drh tags: trunk
09:36
Add a test to ensure that the problem fixed by [a179e41e40] does not recur. check-in: 31356f2c user: dan tags: trunk
01:23
Fix an assert() statement in the SELECT code generator that was incorrect following an OOM error. check-in: a179e41e user: drh tags: trunk
2014-08-11
17:51
Modify GetVersionEx Win32 VFS fix for use with the test suite. check-in: fd222176 user: mistachkin tags: trunk
17:41
Further clarification and typo fixes for the previous comment change. check-in: 87ef9e2f user: drh tags: trunk
17:40
Clarify the comment explaining the meaning of the SQLITE_WIN32_GETVERSIONEX macro in the Windows VFS. check-in: 69714287 user: drh tags: trunk
17:38
Fix for #ifdef issue with GetVersionEx in the Win32 VFS. check-in: 1a0d466d user: mistachkin tags: trunk
17:37
Add a few more requirements tests. check-in: b5652439 user: drh tags: trunk
15:54
Updates to evidence marks and requirements. No changes to code. check-in: 62d38308 user: drh tags: trunk
14:21
Fix harmless compiler warnings. check-in: 52b03f04 user: drh tags: trunk
13:53
Changes that will perhaps enable SQLite to work better on VxWorks. check-in: de27c742 user: drh tags: trunk
2014-08-08
18:26
Update requirements marks. No changes to code. check-in: 7556bd9a user: drh tags: trunk
17:49
Improvements to the way the query planner handles sorting costs, so that very large sorting costs do not overwhelm the loop costs. check-in: bdaa6947 user: drh tags: trunk
17:25
Fix a buffer overrun in the previous commit. Closed-Leaf check-in: 43c59c85 user: dan tags: query-planner-fix
16:52
Because SQLite internally calculates query plan costs using a logarithmic scale, very large estimated sorting costs can cause all other estimated costs to be rounded down to zero. In these cases break ties between plans with the same total cost by comparing the costs with sorting excluded. This is an alternative fix for the problem addressed by [2af630c572]. check-in: 299b9570 user: dan tags: query-planner-fix
15:38
The SQLITE_IOERR_BLOCKED extended error code is not longer used, so remove assert() statements and documentation for that error code. Also make other documentation improvements. check-in: 36b7c5ce user: drh tags: trunk
12:51
Reworking the documentation on integer result codes. This is a comment and documentation change only. There are no changes to code. check-in: 54f1df7b user: drh tags: trunk
2014-08-07
20:42
When the estimated sorting cost overwhelms the estimated lookup cost, ensure that lookup costs are still taken into account when selecting a lookup algorithm. check-in: 2af630c5 user: drh tags: trunk
20:37
Clarify the computation of compatible isOrdered by in the plan solver of the query planner. Closed-Leaf check-in: b5e8fd57 user: drh tags: query-planner-fix
20:25
Remove the extraneous debugging printf() from the previous check-in. check-in: 8f04d2c0 user: drh tags: query-planner-fix
16:50
Oops! This check-in was on trunk. But it contains a debugging printf(). Original comment: When the estimated cost to do a sort overwhelms the estimated cost to do individual table lookups, make sure that the table lookup costs are still taken into consideration when selecting the lookup algorithm. check-in: ec5d84ba user: drh tags: query-planner-fix
2014-08-06
18:50
A couple more harmless compiler warnings eliminated. check-in: bcf6d775 user: drh tags: trunk
17:49
Fix two more harmless compiler warnings. Make sure the fts3_unicode2.c file is in sync with mkunicode.tcl. check-in: a2a60307 user: drh tags: trunk
14:36
Fix harmless compiler warnings. In the command-line shell, report if the ".system" command returns a non-zero result. check-in: 1202e977 user: drh tags: trunk
11:58
Fix an obsolete comment in the func.c source file. No changes to code. check-in: 5c6bb57d user: drh tags: trunk
11:57
On the windows VFS, do not try to make InterlockedCompareExchange an overloadable function, since sometimes it is a macro. check-in: ab1a751e user: drh tags: trunk
03:06
In the Win32 VFS, work around InterlockedCompareExchange() being a macro on some platforms (e.g. x64). check-in: 7be244ce user: mistachkin tags: trunk
01:08
Fix typos in the opcode documentation. Comment changes only. No changes to code. check-in: 717245d4 user: drh tags: trunk