SQLite
Timeline
Not logged in

108 timeline items tagged with "trunk" occurring on or after release.

2014-09-20
00:35
[59e2c9df02] Leaf: Fix the usage of the _GNU_SOURCE and _BSD_SOURCE macros in the main internal header file, sqliteInt.h. Set HAVE_STRCHRNUL to 1 by default on Linux only. (user: drh, tags: trunk)
2014-09-19
22:44
[544664cadf] Simplify two conditionals and add testcase() macros to the affinity transform logic in the comparison operators. (user: drh, tags: trunk)
22:30
[3b21cf2b28] Recognize the invariant that a Mem object cannot be MEM_Dyn and have a non-zero szMalloc at the same time. Enforce this with assert()s and exploit it in the sqlite3VdbeMemClearAndResize() routine for a performance increase. (user: drh, tags: trunk)
22:01
[e996ca32cb] Tighten the conditions under which applyNumericAffinity() be called and add assert() statements to prove that it is never called otherwise. (user: drh, tags: trunk)
20:13
[3f3ca76aea] Fix the affinity on inserts into the ANALYZE tables. Change the affinity characters to be upper case, to make the P5 parameter of comparison operators easier to read. (user: drh, tags: trunk)
19:43
[3ab20ba14f] Do not attempt to extend the temp file if VFS version 3 is not supported and hence memory mapped I/O is unavailable. (user: drh, tags: trunk)
19:00
[3db78d6100] Make the "nolock" VFS on unix a version-3 VFS so that the sorter can use memory-mapped I/O. (user: drh, tags: trunk)
16:56
[6199760d13] Remove a local variable from the OP_Column implementation, resulting in a modest size reduction and a performance increase. (user: drh, tags: trunk)
16:13
[24cd32d681] Small size reduction and performance increase for releaseMemArray(). (user: drh, tags: trunk)
16:02
[9b42c3da6b] Updates to comments. No code changes. (user: drh, tags: trunk)
15:28
[36b613ccf0] The OP_Column opcode runs faster and is smaller by manually in-lining the code that persists string values in the output register. (user: drh, tags: trunk)
04:42
[987a7a2119] Add the sqlite3VdbeMemClearAndResize() function. Fix a sorting-index prefilter problem. (user: drh, tags: trunk)
2014-09-18
21:25
[9c09ac353d] Add the Mem.szMalloc element to the Mem object and use it to keep track of the size of the Mem.zMalloc allocation. (user: drh, tags: trunk)
18:55
[55879932116d] Correct typos in comments. No changes to code. (user: mistachkin, tags: trunk)
17:52
[4c8c89d7e6] Merge the Mem.r value into the MemValue union as Mem.u.r. Hence, a Mem can now store an integer or a real but not both at the same time. Strings are still stored in a separate element Mem.z, for now. (user: drh, tags: trunk)
16:28
[d7afdcbac2] Performance improvement for affinity transformations on comparison operators. (user: drh, tags: trunk)
14:36
[4ef4c9a7c8] Since numeric affinity is the most common case, check it first. Interchange the NONE and TEXT affinity codes for easier checking of no affinity. (user: drh, tags: trunk)
09:59
[3bd7c1b2fa] Modify an assert() within sqlite3PagerWalFramesize(), a function only ever used by zipvfs, to account for recent zipvfs changes. (user: dan, tags: trunk)
02:20
[5192f964b2] Fix harmless warnings on 32-bit MSVC builds. (user: drh, tags: trunk)
01:50
[ef1aa10b7f] Make sure of the strchrnul() library function on platforms where it is available. (user: drh, tags: trunk)
01:29
[1de558bcb1] Merge micro-optimizations into trunk after fixing the build on MSVC. Performance now shows 7.58% faster than the 3.8.6 release on x64 with gcc 4.8.1 and -Os. (user: drh, tags: trunk)
2014-09-16
13:30
[8fb90da77c] Changes to sqlite3VdbeRecordUnpack() to make it slightly smaller and faster. (user: drh, tags: trunk)
03:24
[20ed2321b0] Performance improvement to the sqlite3MemCompare() routine by factoring out sqlite3BlobCompare(). (user: drh, tags: trunk)
2014-09-15
16:53
[4060efb646] Fix tool/showwal.c so that it handles WAL files that contain 64KiB pages. (user: dan, tags: trunk)
16:50
[dedaa6fb3d] Avoid attempting to call the xFetch() method of an sqlite3_io_methods object with a version number less than 3. (user: dan, tags: trunk)
14:59
[69a6456077] Remove the EXPENSIVE_ASSERTS in pcache.c having to do with the pSynced field of the Pcache object, as they are incorrect, as revealed by recent pcache enhancements. (user: drh, tags: trunk)
14:46
[0bdf1a086b] Do not flatten aggregate subqueries that contain min() or max() functions so that if the min()/max() are discarded by the outer query, they still function and cause non-aggregate expression to be evaluated on the minimal or maximal row. (user: drh, tags: trunk)
11:14
[4ff0eb96bc] Adjust comments to show that subquery flattening restriction (10) was removed from the code back in 2005. This is a comment change only. (user: drh, tags: trunk)
2014-09-12
20:30
[b332a84d51] Small performance improvement to the dirty list handling in the pager. (user: drh, tags: trunk)
17:41
[320556233e] Simplify the way the column cache is managed around OP_Move instructions. (user: drh, tags: trunk)
04:28
[2f69a1fa6a] Fix a problem with parser memory allocation on 32-bit systems. (user: drh, tags: trunk)
2014-09-11
23:34
[34292b084e] Fix an issue with sqlite3_bind_text64() with the SQLITE_UTF16 encoding parameter. Remove some unreachable code from the text64() and blob64() implementation. (user: drh, tags: trunk)
18:44
[7e4978c003] Add new APIs that take 64-bit length parameters: sqlite3_malloc64(), sqlite3_realloc64(), sqlite3_bind_blob64(), sqlite3_bind_text64(), sqlite3_result_blob64(), and sqlite3_result_text64(). Add the sqlite3_msize() interface. Internal memory allocation routines now use 64-bit unsigned length parameters for safety. Fix the sqlite3_get_table() to use sqlite3_realloc64() to avoid a integer overflow problem. (user: drh, tags: trunk)
17:27
[65884d4f81] Add the SQLITE_USER_AUTHENTICATION extension to the trunk. This extension is disabled by default. Special compilation procedures are need to enable it. (user: drh, tags: trunk)
2014-09-06
17:06
[ad7063aa1a] Fixes to os_unix.c to support database (and other) files larger than 2GiB on Android. (user: dan, tags: trunk)
16:39
[e62aab5e92] Fix typos in comments. No code changes. (user: peter.d.reid, tags: trunk)
03:38
[4d4fb197dc] Do not record a page-size change if the attempt to change the page size failed due to an OOM error. (user: drh, tags: trunk)
03:16
[27e3ca3e0f] Add the sqlite3_memdebug_title_count global variable, used during debugging to count the number of invocations of test_memdebug_settitle. By examining this variable in the debugger after a segfault, one can then set a breakpoint on test_memdebug_settitle that will fire just before the problem. (user: drh, tags: trunk)
02:00
[a758465e3c] Fix a couple of typos in comments. No changes to code. (user: mistachkin, tags: trunk)
01:35
[73954f93c4] Query planner heuristic update: When doing a full table scan on a table that has an equality constraint on an unindexed column, do not allow the estimated number of output rows to be greater than half the total number of rows in the table. (user: drh, tags: trunk)
2014-09-05
05:58
[733119067757814609a] Fix harmless compiler warning. (user: mistachkin, tags: trunk)
2014-09-01
23:06
[9779c7a9eb] Update comments in the ANALYZE command that describe how the Stat4Accum objecct is passed around within the VDBE. No changes to functional code. (user: drh, tags: trunk)
22:34
[4cae93f8ae] Avoid a confusing (though correct) argument to the sqlite3_result_blob() function in the implementation of ANALYZE. (user: drh, tags: trunk)
19:29
[be0a037244] For sqlite3_win32_is_nt(), assume WinRT is NT-based and revise #ifdef ordering to prefer the ANSI version of GetVersionEx, when available. (user: mistachkin, tags: trunk)
18:21
[672e7387b1] Tweak the documentation for SQLITE_LIMIT_WORKER_THREADS. No changes to executable code. (user: drh, tags: trunk)
17:36
[b1c0f0bc1b] Add support for using separate worker threads to speed large sorts. The SQLITE_MAX_WORKER_THREADS and SQLITE_DEFAULT_WORKER_THREADS compile-time options and the SQLITE_LIMIT_WORKER_THREADS argument to sqlite3_limit() and the "PRAGMA threads=N" pragma are added. (user: drh, tags: trunk)
13:37
[b0f6b91f36] Attempt to make the xDelete method of the unix VFS more robust on VxWorks. (user: drh, tags: trunk)
13:29
[839c7996ee] Micro-optimizations in sqlite3BtreeNext() and sqlite3BtreePrevious(). (user: drh, tags: trunk)
01:16
[3ef3246120] Fix harmless compiler warnings for MSVC. (user: mistachkin, tags: trunk)
2014-08-30
15:49
[f61db04be4] In the command-line shell, added options --lookaside, --pagecache, and --scratch used to configure auxiliary memories. (user: drh, tags: trunk)
2014-08-29
14:20
[2a74129a21] Note a fault after all, rather a testing mistake. Move this change back to trunk. Was: Avoid an unnecessary OP_Move operation for expression subqueries. (user: drh, tags: trunk)
2014-08-28
19:38
[fdd478bb11] Improved WHERETRACE messages for the estimated output row reductions from range scans. (user: drh, tags: trunk)
17:30
[a9daf3ac44] Fix a problem causing an inaccurate stat4-based estimate for the number of rows visited by a range scan. (user: drh, tags: trunk)
13:42
[c931ca2b77] 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. (user: drh, tags: trunk)
2014-08-27
23:18
[bdb6e4978d] Refactor the sqlite3PcacheFetch() routine into three separate routines, which are significantly faster overall and about 100 bytes smaller in size as well. (user: drh, tags: trunk)
17:53
[029a6dc744] Add a VDBE synopsis comment for clarification. (user: mistachkin, tags: trunk)
17:48
[d8b1c43361] Add a missing ticket number to a comment in index7.test. (user: dan, tags: trunk)
17:37
[fcebca166f] 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]. (user: dan, tags: trunk)
14:14
[6c1ee3e388] 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. (user: drh, tags: trunk)
03:28
[1624916c6e] 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. (user: drh, tags: trunk)
00:50
[f94cacc393] Performance enhancement in sqlite3VdbeMemNulTerminate(). (user: drh, tags: trunk)
2014-08-26
15:06
[f1f94a971e] 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. (user: drh, tags: trunk)
2014-08-25
22:37
[af364cce9d] Add an assert() and five testcase() macros to the OP_Cast opcode implementation to help verify that it is fully tested. (user: drh, tags: trunk)
21:11
[1ad70ec550] Minor changes to the CAST logic to make it more testable. (user: drh, tags: trunk)
20:21
[42505e5a81] Test cases added for using unary "+" and CAST operators on the RHS of range constraints and verifying that STAT3/4 can use those constraints. (user: drh, tags: trunk)
20:11
[91d8a8d0b7] 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. (user: drh, tags: trunk)
18:29
[e06dc6f0c3] 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. (user: dan, tags: trunk)
11:33
[54164ce47c] Remove the pager_lookup() function since it is redundant with sqlite3PagerLookup(). (user: drh, tags: trunk)
11:20
[3ca5846da7] Change the name of the VdbeMemRelease() macro to VdbeMemReleaseExtern() to more accurately reflect what it does. Performance enhancement to the sqlite3VdbeMemRelease() function. (user: drh, tags: trunk)
2014-08-24
02:53
[0c7e1b875a] The sqlite3VdbeChangeEncoding() routine goes about 3x faster if the sqlite3VdbeMemTranslate() subroutine is not inlined. (user: drh, tags: trunk)
01:32
[c63311e2f3] Patch the sqlite3PagerWrite() method in the Pager to run a bit faster. (user: drh, tags: trunk)
2014-08-23
23:15
[0371cc3bb0] Faster implementation of pcache1Fetch() (user: drh, tags: trunk)
20:25
[bd41d394d4] Faster implementation of the sqlite3ApiExit() routine. (user: drh, tags: trunk)
19:42
[6da6f46d0c] Another memory allocator performance optimization. (user: drh, tags: trunk)
19:08
[45abd5c0ba] Fix a variable-declaration after code problem in btree.c. Harmless in GCC and CLANG but unacceptable for MSVC. (user: drh, tags: trunk)
19:04
[f83daa16f6] Changes to sqlite3ScratchMalloc() that make the entire memory allocation interface a little faster and about 100 bytes smaller. (user: drh, tags: trunk)
18:17
[802148f311] Make the implementation of the sqlite3_aggregate_context() interface faster for second an subsequent invocations. This helps all aggregate functions to perform better. (user: drh, tags: trunk)
17:41
[0c0a603950] Improved performance in the type handling of arithmetic operators in the VDBE. (user: drh, tags: trunk)
17:21
[25f2246be4] Performance optimization in the applyAffinity() logic inside the VDBE. (user: drh, tags: trunk)
2014-08-22
23:33
[ce123b5c59] 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. (user: drh, tags: trunk)
22:26
[3eb0843903] Factor the saveAllCursors() routine of btree.c into two separate routines, for a noticable performance improvement. (user: drh, tags: trunk)
21:58
[8914530644f] Performance enhancements in the b-tree mutex logic. (user: drh, tags: trunk)
20:35
[6bcf1af6a4] Combine the pcacheAddToDirtyList() and pcacheRemoveFromDirtyList() routines into a single pcacheManageDirtyList() routine. The resulting binary code is slightly faster and a few bytes smaller. (user: drh, tags: trunk)
18:48
[a929be5519] Performance enhancement in sqlite3PutVarint(). (user: drh, tags: trunk)
18:00
[cf561d1f0b] Split the sqlite3Error() routine into sqlite3Error() and sqlite3ErrorWithMsg(), for a slight size reduction and performance increase. (user: drh, tags: trunk)
15:40
[f7f2160db0] Performance improvement in the printf() logic by avoiding unnecessary stack pointer movement. (user: drh, tags: trunk)
15:19
[ebc10e46c1] Improve the performance and reduce the size of the sqlite3VdbeSerialGet() routine by avoiding the use of stack. (user: drh, tags: trunk)
13:22
[750bb0a096] Change a while-loop into a do-loop in sqlite3VdbeSerialPut() for a small size reduction and performance improvement. (user: drh, tags: trunk)
11:11
[369c480cda] Enhance the spellfix extension with the ability to specify a rowid when inserting new rows. (user: drh, tags: trunk)
2014-08-21
20:26
[14b0f561fe] Simplify the interface to the symbol table, saving 600 bytes of code space. (user: drh, tags: trunk)
14:10
[7029b3404d] 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]. (user: drh, tags: trunk)
2014-08-20
23:42
[91594aae07] Increase the version number to 3.8.7 (user: drh, tags: trunk)
23:38
[bc985caa78] 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. (user: drh, tags: trunk)
18:43
[49f44d355f] A small performance improvement in freeSpace() by special-casing the relatively common case of an empty freelist. (user: drh, tags: trunk)
17:56
[fe4fd014b4] Reimplement the freeSpace() routine in btree.c so that it runs faster. (user: drh, tags: trunk)
14:37
[7e63089a19] Refactor local variable names in the freeSpace() routine of btree.c for improved understandability. (user: drh, tags: trunk)
13:35
[121308fa86] Size reduction and performance improvements in btree.c and the allocateSpace() routine. Also fix an assert() in freeSpace(). (user: drh, tags: trunk)
13:25
[eea0661798] Add SQLITE_API macros in front of interface routines in the test_intarray.c extension. (user: drh, tags: trunk)
10:42
[6c66beae97] Fix a typo in the showdb usage message. (user: dan, tags: trunk)
00:54
[73637d12e3] Minor performance improvement and size reduction for the btree-page space allocator. (user: drh, tags: trunk)
2014-08-19
23:04
[d280157da0] Modify the memsubsys1-3.1.4 test so that it does not fail arbitrarily due to variations in the behavior of system malloc(). (user: drh, tags: trunk)
20:41
[44d5bd4cc3] A better fix for the sqlite3_trace() problem. Ticket [11d5aa455e0d98f3c1e6a] (user: drh, tags: trunk)
20:27
[0d4d3df4bc] Make sure the sqlite3_trace() callback is invoked, even if the prepared statement was marked "expired" before it ever entered sqlite3_step(). Ticket [11d5aa455e0d98f3c1e6a08]. (user: drh, tags: trunk)
19:28
[d09d63c077] Improvements to output formatting with the ".trace" command in the command-line shell. (user: drh, tags: trunk)
09:15
[f10a611126] Minor changes to do with the Tcl tea extension package autoconf system. (user: dan, tags: trunk)
2014-08-18
13:45
[11a70e1ae7] Refactor the names of state objects in the command-line shell implementation.. (user: drh, tags: trunk)
2014-08-15
16:13
[28a379fcd4] Fix compiler warnings on WinCE. (user: drh, tags: trunk)
11:46
[9491ba7d73] Version 3.8.6 (user: drh, tags: trunk, release, version-3.8.6)