Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
200 most recent check-ins using file Makefile.in version 5eb79e334a
2017-07-21
| ||
03:23 | Add new interfaces sqlite3_result_pointer(), and sqlite3_value_pointer() and use them to transfer the eponymous FTS3 column pointer to the snippet() and offsets() routines. This is a cherry-pick of [f0f492245e95], which is in turn inspired by check-in [72de49f2]. (Leaf check-in: a66a5b397b user: drh tags: branch-3.8.6) | |
2015-05-21
| ||
17:24 | Prevent a virtual table from being destroyed while it is in use. Also: replace Vdbe.inVtabMethod with sqlite3.nVDestroy. Simplify the EXPLAIN output for P4.pVtab to only show the sqlite3_vtab pointer. Cherrypick of [cbeb9a1aed8c]. (check-in: b3bb660af9 user: dan tags: branch-3.8.6) | |
17:21 | Avoid ever writing before the start of an allocated buffer in the DIRECT_OVERFLOW_READ code. Fix for [e3a290961a6]. Cherrypick of [c3c15d20c691]. (check-in: 31b13eb528 user: dan tags: branch-3.8.6) | |
2015-05-20
| ||
20:50 | Fix a problem in test file e_reindex.test. Cherrypick of [5b3de9390f2f]. (check-in: 80633682d7 user: dan tags: branch-3.8.6) | |
20:34 | Fix a problem causing the fts3 integrity-check to fail if run inside a transaction. Cherrypick of [3b925189a75e]. (check-in: 7d7d633c71 user: dan tags: branch-3.8.6) | |
20:30 | Ensure that tables names are dequoted exactly once by the trigger and FK logic. Cherrypick of [59e92bd9521f] and [9d887b92f808]. (check-in: bd357739d7 user: dan tags: branch-3.8.6) | |
20:27 | Fix an obscure problem with "INSERT INTO tbl(cols) SELECT" statements where the SELECT is a compound with an ORDER BY and "cols" is a strict subset of tbl's columns. Cherrypick of [718d5d0eab04]. (check-in: 3cd2b77221 user: dan tags: branch-3.8.6) | |
20:24 | Fix a potential NULL pointer deference on a corrupt database schema. Cherrypick of [dc61b292d8ea]. (check-in: 7f3943fb01 user: dan tags: branch-3.8.6) | |
20:21 | Fix a bug caused by cherrypicking from a branch that assumes sqlite3_stricmp() can handle NULL arguments. (check-in: 2c649cdf7e user: dan tags: branch-3.8.6) | |
19:57 | When parsing the schema, ignore any SQL that does not begin with "CREATE". Cherrypick of [d3c00d61581c]. (check-in: 0da229b81a user: dan tags: branch-3.8.6) | |
19:53 | Detect and report oversized records constructed from multiple zeroblobs. Cherrypick of [9e139afd9211]. (check-in: 4a08f6b8bb user: dan tags: branch-3.8.6) | |
19:50 | Do not allow virtual table constructors to be called recursively. Cherrypick of [0a72726da215] (check-in: 023a29baf0 user: dan tags: branch-3.8.6) | |
19:48 | Avoid signed integer overflow when converting oversized in-line integer widths and precisions in printf(). Cherrypick of [c494171f77dc], [5ce4e7d7651e], [95625ef3adc3] and [8e4ac2ce2441]. (check-in: b330c7ff6f user: dan tags: branch-3.8.6) | |
19:44 | Ensure that comparison operators do not mess up the MEM_Dyn flag on registers when reverting affinity changes. Cherrypick of [02e3c88fbf6a]. (check-in: 4125477e63 user: dan tags: branch-3.8.6) | |
19:34 | Fix a problem causing collation sequence names to be dequoted multiple times under some circumstances. Cherrypick of [eddc05e7bb31]. (check-in: fc1a4f293c user: dan tags: branch-3.8.6) | |
19:32 | Silently ignore any attempt to add a prefix index for prefixes zero bytes in size to an fts3/4 table. Or any prefix index size so large that it overflows a 32-bit signed integer. Cherrypick of [ad4b19d2ac0889a2]. (check-in: ff7be4db84 user: dan tags: branch-3.8.6) | |
2014-10-22
| ||
14:22 | Version 3.8.6.1 (check-in: 1581c30c38 user: drh tags: release, version-3.8.6.1, branch-3.8.6) | |
03:00 | Update the version number to 3.8.6.1 (check-in: cad7f8d697 user: drh tags: branch-3.8.6) | |
02:43 | Call fsync() right after ftruncate() when in journal_mode=TRUNCATE and when synchronous=FULL in order to ensure that transactions are durable across a power loss that happens moments after the commit. Proposed fix for https://bugzilla.mozilla.org/show_bug.cgi?id=1072773. This is a cherry-pick of [3e922208b68563] (check-in: 674848070e user: drh tags: branch-3.8.6) | |
2014-09-01
| ||
13:37 | Attempt to make the xDelete method of the unix VFS more robust on VxWorks. (check-in: b0f6b91f36 user: drh tags: trunk) | |
13:29 | Micro-optimizations in sqlite3BtreeNext() and sqlite3BtreePrevious(). (check-in: 839c7996ee user: drh tags: trunk) | |
01:16 | Fix harmless compiler warnings for MSVC. (check-in: 3ef3246120 user: mistachkin tags: trunk) | |
01:15 | Merge updates from trunk. (check-in: 51f33cf129 user: mistachkin tags: asciiMode) | |
2014-08-30
| ||
15:49 | In the command-line shell, added options --lookaside, --pagecache, and --scratch used to configure auxiliary memories. (check-in: f61db04be4 user: drh tags: trunk) | |
2014-08-29
| ||
14:20 | Not a fault after all, rather a testing mistake. Move this change back to trunk. Was: Avoid an unnecessary OP_Move operation for expression subqueries. (check-in: 2a74129a21 user: drh tags: trunk) | |
12:29 | Contains a fault. Was: Avoid an unnecessary OP_Move operation for expression subqueries. (Closed-Leaf check-in: 462f42af52 user: drh tags: mistake) | |
11:24 | Add the sqlite3VdbeChangeDest() routine that can be used to eliminate OP_Move opcodes. (Closed-Leaf check-in: 8c57bcc327 user: drh tags: experimental) | |
2014-08-28
| ||
19:38 | Improved WHERETRACE messages for the estimated output row reductions from range scans. (check-in: fdd478bb11 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: a9daf3ac44 user: drh tags: trunk) | |
17:20 | Add a testcase() macro to help verfity the row estimation logic. (Closed-Leaf check-in: 6ba609522e 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: 052d89b554 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: c931ca2b77 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: bdb6e4978d user: drh tags: trunk) | |
17:53 | Add a VDBE synopsis comment for clarification. (check-in: 029a6dc744 user: mistachkin tags: trunk) | |
17:48 | Add a missing ticket number to a comment in index7.test. (check-in: d8b1c43361 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: fcebca166f 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: 6c1ee3e388 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: 1624916c6e user: drh tags: trunk) | |
00:50 | Performance enhancement in sqlite3VdbeMemNulTerminate(). (check-in: f94cacc393 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: f1f94a971e 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: af364cce9d user: drh tags: trunk) | |
21:11 | Minor changes to the CAST logic to make it more testable. (check-in: 1ad70ec550 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: 42505e5a81 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: 91d8a8d0b7 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: e06dc6f0c3 user: dan tags: trunk) | |
11:33 | Remove the pager_lookup() function since it is redundant with sqlite3PagerLookup(). (check-in: 54164ce47c 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: 3ca5846da7 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: 0c7e1b875a user: drh tags: trunk) | |
01:32 | Patch the sqlite3PagerWrite() method in the Pager to run a bit faster. (check-in: c63311e2f3 user: drh tags: trunk) | |
2014-08-23
| ||
23:15 | Faster implementation of pcache1Fetch() (check-in: 0371cc3bb0 user: drh tags: trunk) | |
20:25 | Faster implementation of the sqlite3ApiExit() routine. (check-in: bd41d394d4 user: drh tags: trunk) | |
19:42 | Another memory allocator performance optimization. (check-in: 6da6f46d0c 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: 45abd5c0ba 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: f83daa16f6 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: 802148f311 user: drh tags: trunk) | |
17:41 | Improved performance in the type handling of arithmetic operators in the VDBE. (check-in: 0c0a603950 user: drh tags: trunk) | |
17:21 | Performance optimization in the applyAffinity() logic inside the VDBE. (check-in: 25f2246be4 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: ce123b5c59 user: drh tags: trunk) | |
22:26 | Factor the saveAllCursors() routine of btree.c into two separate routines, for a noticable performance improvement. (check-in: 3eb0843903 user: drh tags: trunk) | |
21:58 | Performance enhancements in the b-tree mutex logic. (check-in: 8914530644 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: 6bcf1af6a4 user: drh tags: trunk) | |
19:12 | Revise #ifdef ordering to prefer the ANSI version of GetVersionEx, when available. (Closed-Leaf check-in: 9fe0f0754c user: mistachkin tags: winrt) | |
18:48 | Performance enhancement in sqlite3PutVarint(). (check-in: a929be5519 user: drh tags: trunk) | |
18:00 | Split the sqlite3Error() routine into sqlite3Error() and sqlite3ErrorWithMsg(), for a slight size reduction and performance increase. (check-in: cf561d1f0b user: drh tags: trunk) | |
15:40 | Performance improvement in the printf() logic by avoiding unnecessary stack pointer movement. (check-in: f7f2160db0 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: ebc10e46c1 user: drh tags: trunk) | |
14:56 | Handle the 4-byte integer case in the stackless routine. (Closed-Leaf check-in: 3f55484e81 user: drh tags: experimental) | |
14:34 | Get the sqlite3VdbeSerialGet() routine to run faster by avoiding the use of local variables. (check-in: 8267d82174 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: 750bb0a096 user: drh tags: trunk) | |
11:11 | Enhance the spellfix extension with the ability to specify a rowid when inserting new rows. (check-in: 369c480cda user: drh tags: trunk) | |
2014-08-21
| ||
20:26 | Simplify the interface to the symbol table, saving 600 bytes of code space. (check-in: 14b0f561fe user: drh tags: trunk) | |
19:11 | For sqlite3_win32_is_nt(), assume WinRT is NT-based. (check-in: 2f59e71fbf user: mistachkin tags: winrt) | |
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: 7029b3404d user: drh tags: trunk) | |
2014-08-20
| ||
23:42 | Increase the version number to 3.8.7 (check-in: 91594aae07 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: bc985caa78 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: 49f44d355f user: drh tags: trunk) | |
17:56 | Reimplement the freeSpace() routine in btree.c so that it runs faster. (check-in: fe4fd014b4 user: drh tags: trunk) | |
14:37 | Refactor local variable names in the freeSpace() routine of btree.c for improved understandability. (check-in: 7e63089a19 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: 121308fa86 user: drh tags: trunk) | |
13:25 | Add SQLITE_API macros in front of interface routines in the test_intarray.c extension. (check-in: eea0661798 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: fe51d3aa0c user: drh tags: btree-speedup) | |
11:56 | Further size reduction and performance improvement in btree.c:allocateSpace(). (check-in: 1cb1cd6493 user: drh tags: btree-speedup) | |
10:42 | Fix a typo in the showdb usage message. (check-in: 6c66beae97 user: dan tags: trunk) | |
00:54 | Minor performance improvement and size reduction for the btree-page space allocator. (check-in: 73637d12e3 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: d280157da0 user: drh tags: trunk) | |
20:41 | A better fix for the sqlite3_trace() problem. Ticket [11d5aa455e0d98f3c1e6a] (check-in: 44d5bd4cc3 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: 0d4d3df4bc user: drh tags: trunk) | |
19:28 | Improvements to output formatting with the ".trace" command in the command-line shell. (check-in: d09d63c077 user: drh tags: trunk) | |
09:15 | Minor changes to do with the Tcl tea extension package autoconf system. (check-in: f10a611126 user: dan tags: trunk) | |
2014-08-18
| ||
13:45 | Refactor the names of state objects in the command-line shell implementation.. (check-in: 11a70e1ae7 user: drh tags: trunk) | |
2014-08-15
| ||
16:13 | Fix compiler warnings on WinCE. (check-in: 28a379fcd4 user: drh tags: trunk) | |
11:46 | Version 3.8.6 (check-in: 9491ba7d73 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: 3f45b8192d user: dan tags: trunk) | |
18:31 | Fix compiler warnings on WinCE. (Closed-Leaf check-in: cc910b8e0c user: mistachkin tags: winCeWarn) | |
13:06 | Fix typos in comments used to help generate documentation. No changes to code. (check-in: 13a2d90a28 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: f5cce9db10 user: mistachkin tags: trunk) | |
2014-08-13
| ||
11:39 | Minor change to unixDelete for VxWorks with a DOS filesystem. (check-in: f01d42cc8b user: drh tags: trunk) | |
2014-08-12
| ||
20:13 | Fix where9.test so that it works with the "no_optimization" permutation. (check-in: d46adf9d8f user: dan tags: trunk) | |
16:13 | Fix compilation issue in the Win32 VFS when manually defining SQLITE_WIN32_NO_ANSI. (check-in: 6715991296 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: 35c4546163 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: a1baf3a7b1 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: 4c29182722 user: dan tags: trunk) | |
13:32 | Remove support for Win9x. (Leaf check-in: 169fc47e16 user: drh tags: drop-win9x-support) | |
12:19 | Fix typos in the VxWorks code of os_unix.c. (check-in: 19682e8fdc user: drh tags: trunk) | |
09:36 | Add a test to ensure that the problem fixed by [a179e41e40] does not recur. (check-in: 31356f2cae user: dan tags: trunk) | |
01:23 | Fix an assert() statement in the SELECT code generator that was incorrect following an OOM error. (check-in: a179e41e40 user: drh tags: trunk) | |
2014-08-11
| ||
17:51 | Modify GetVersionEx Win32 VFS fix for use with the test suite. (check-in: fd2221768b user: mistachkin tags: trunk) | |
17:41 | Further clarification and typo fixes for the previous comment change. (check-in: 87ef9e2f29 user: drh tags: trunk) | |
17:40 | Clarify the comment explaining the meaning of the SQLITE_WIN32_GETVERSIONEX macro in the Windows VFS. (check-in: 69714287db user: drh tags: trunk) | |
17:38 | Fix for #ifdef issue with GetVersionEx in the Win32 VFS. (check-in: 1a0d466dd4 user: mistachkin tags: trunk) | |
17:37 | Add a few more requirements tests. (check-in: b5652439d5 user: drh tags: trunk) | |
15:54 | Updates to evidence marks and requirements. No changes to code. (check-in: 62d38308b5 user: drh tags: trunk) | |
14:21 | Fix harmless compiler warnings. (check-in: 52b03f045e user: drh tags: trunk) | |
13:53 | Changes that will perhaps enable SQLite to work better on VxWorks. (check-in: de27c742c0 user: drh tags: trunk) | |
2014-08-08
| ||
18:26 | Update requirements marks. No changes to code. (check-in: 7556bd9aa5 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: bdaa694737 user: drh tags: trunk) | |
17:25 | Fix a buffer overrun in the previous commit. (Closed-Leaf check-in: 43c59c8543 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: 299b957027 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: 36b7c5cefc 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: 54f1df7b63 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: 2af630c572 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: b5e8fd575a user: drh tags: query-planner-fix) | |
20:25 | Remove the extraneous debugging printf() from the previous check-in. (check-in: 8f04d2c008 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: ec5d84ba69 user: drh tags: query-planner-fix) | |
2014-08-06
| ||
18:50 | A couple more harmless compiler warnings eliminated. (check-in: bcf6d775f9 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: a2a60307ea 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: 1202e9771f user: drh tags: trunk) | |
11:58 | Fix an obsolete comment in the func.c source file. No changes to code. (check-in: 5c6bb57d90 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: ab1a751e13 user: drh tags: trunk) | |
03:06 | In the Win32 VFS, work around InterlockedCompareExchange() being a macro on some platforms (e.g. x64). (check-in: 7be244ce12 user: mistachkin tags: trunk) | |
01:08 | Fix typos in the opcode documentation. Comment changes only. No changes to code. (check-in: 717245d487 user: drh tags: trunk) | |
00:29 | A simpler fix for ticket [3a88d85f36704eebe1] - one that uses less code. The error message is not quite as good, but as this error has apparently not previously occurred in over 8 years of heavy use, that is not seen as a serious problem. (check-in: 0ad1ed8ef0 user: drh tags: trunk) | |
2014-08-05
| ||
21:31 | Ensure that aggregate functions are not used when evaluating a default value for a table column. Candidate fix for ticket [3a88d85f36704eebe134f7]. (check-in: 29ba812825 user: drh tags: trunk) | |
19:16 | Add the ability to evaluate IN operators as a sequence of comparisons as an alternative to the long-standing algorithm of building a lookup table. Use the new implementation in circumstances where it is likely to be faster, such as when the RHS of the IN changes between successive evaluations. (check-in: 9528682168 user: drh tags: trunk) | |
11:04 | Rename the internal Schema.flags field to Schema.schemaFlags. (check-in: 5ae80b3c8f user: drh tags: trunk) | |
00:53 | Improved VdbeCoverage() macros. A few minor simplifications to generated VDBE code. (Closed-Leaf check-in: 01f60027ad user: drh tags: IN-operator-improvements) | |
2014-08-04
| ||
21:26 | Part of the change in the previous check-in was incorrect and can result in an incorrect UPDATE for WITHOUT ROWID tables. This check-in fixes the problem. (check-in: ee5f6eae57 user: drh tags: IN-operator-improvements) | |
18:50 | Further enhancements to IN-operator processing. (check-in: 7fdf26da1d user: drh tags: IN-operator-improvements) | |
16:39 | Refinements to the enhanced IN-operator logic. (check-in: 92ba282146 user: drh tags: IN-operator-improvements) | |
15:12 | Changed my mind: This opcode name changes mere creates unnecessary diff marks between older and newer versions without significantly improving readability. Was: Rename the IsNull opcode to IfNull and rename the NotNull opcode to IfNotNull. (Closed-Leaf check-in: 2f724cbac9 user: drh tags: deadend) | |
2014-08-02
| ||
21:03 | Enhancements to the code generator for the IN operator that result in much faster queries in some cases, for example when the RHS of the IN operator changes for each row of a large table scan. (check-in: 436e884215 user: drh tags: IN-operator-improvements) | |
20:44 | Remove (newly) incorrect preprocessor check to fix build on WinRT. (check-in: ba78265429 user: mistachkin tags: trunk) | |
2014-08-01
| ||
21:12 | A better comment on the generated code for the NULL-in-RHS-of-IN detection logic. (check-in: 9bc1c730a3 user: drh tags: trunk) | |
21:00 | Improved detection and handling of NULL values on the RHS of a IN operator. (check-in: 468e730036 user: drh tags: trunk) | |
18:00 | Remove an unnecessary OP_Null in the IN-operator logic. Attempt to clarify comments explaining the IN-operator code, though it is not clear that the comments are correct even yet - more work to be done. (check-in: c11e55fabb user: drh tags: trunk) | |
15:51 | Clean up the IN operator code generation logic to make it easier to reason about. In the process, improve code generation to omit some unused OP_Null operations. (check-in: 7c6fbcfe6e user: drh tags: trunk) | |
15:34 | The idea of coding IN operator with a short list on the RHS as an OR expression turns out to be helpful. If the list is of length 1 or 2, the OR expression is very slightly faster, but the ephemeral table approach is clearly better for all list lengths greater than 2. Better to keep the code simple. (Closed-Leaf check-in: e13175d357 user: drh tags: IN-operator-improvements) | |
14:46 | Begin making changes to the IN operator in an attempt to make it run faster and to make the code easier to understand. (check-in: ee0fd6aaf9 user: drh tags: IN-operator-improvements) | |
01:40 | Enhance the PRAGMA integrity_check command to detect UNIQUE and NOT NULL constraint violations. (check-in: 9abcf2698c user: drh tags: trunk) | |
2014-07-31
| ||
22:59 | Refactoring: Change "pIndex->onError!=OE_None" to use a macro: "IsUniqueIndex(pIndex)". Easier to understand that way. (check-in: e75b26ee35 user: drh tags: trunk) | |
20:16 | Omit a pointless OP_Null when processing a value-list RHS of an IN operator where the LHS is a rowid. (check-in: 1361450a9d user: drh tags: trunk) | |
18:54 | Optimizations to the OS sub-type checking in the Win32 VFS. (check-in: 1e5489faff user: mistachkin tags: trunk) | |
18:14 | Add a missing call to "test_sqlite3_log" to multiplex.test. (check-in: 0708f9df23 user: dan tags: trunk) | |
17:35 | Fix a leaked database handle in pager2.test. (check-in: 47457b0488 user: dan tags: trunk) | |
15:44 | Deactivate the DISTINCT in a SELECT on the right-hand side of an IN operator, since it should not make any difference in the output but dues consume extra memory and CPU time. (check-in: f4cb53651b user: drh tags: trunk) | |
2014-07-30
| ||
23:11 | Re-integrate the recent changes from the 'winMutex' branch back into the Win32 mutex subsystem. (check-in: 5360ecb0b8 user: mistachkin tags: trunk) | |
21:10 | Add three new static mutexes for use by the application. This is a partial import of changes from the threads branch. (check-in: 3aad01960f user: drh tags: trunk) | |
15:43 | Add the "eForce" parameter to the sqlite3_multiplex_shutdown() entry point in test_multiplex.c. Shutdown is forced if true. Shutdown is not done if there are pending database connections and eForce is false, but an error log entry is made instead. (check-in: c7303d0139 user: drh tags: trunk) | |
13:56 | Ensure that the correct number of columns in a UNIQUE index are checked for uniqueness, regardless of whether or not the original table has a ROWID or if the columns are NOT NULL, etc. Ticket [9a6daf340df99ba93c]. (check-in: 6b785e92f2 user: drh tags: trunk) | |
2014-07-29
| ||
19:54 | Enhancements and updates to the Win32 mutex subsystem. (check-in: ca9868cdae user: mistachkin tags: trunk) | |
18:03 | Merge updates from trunk. (Closed-Leaf check-in: 08c9a4ea63 user: mistachkin tags: winMutex) | |
14:09 | Add the SQLITE_TESTCTRL_ISINIT file control. (check-in: 8b651d4d6c user: drh tags: trunk) | |
11:54 | Have calls to the xFilter() method of rtree virtual tables ensure that cursor is initialized before proceeding. Fix for [d2889096e7bdeac]. (check-in: 8cc41b0bf3 user: dan tags: trunk) | |
05:49 | Enhancements and updates to the Win32 mutex subsystem. (check-in: 18984c3210 user: mistachkin tags: winMutex) | |
2014-07-26
| ||
20:12 | Remove an unreachable branch from the sqlite3_value_numeric_type() interface. (check-in: 5350229b52 user: drh tags: trunk) | |
16:47 | Avoid unnecessary no-op calls to applyNumericAffinity() for a small performance improvement. (check-in: 413d728797 user: drh tags: trunk) | |
2014-07-25
| ||
21:35 | Try to fix harmless compiler warnings reported by Fortify. (check-in: e0fa6fdc14 user: drh tags: trunk) | |
18:37 | Improved comments on VDBE opcodes, for better documentation. No code or logic changes. (check-in: 2d32e4876e user: drh tags: trunk) | |
18:01 | Add constraints (enforced only when SQLITE_DEBUG is enabled) on the use of OP_Next and OP_Prev. (check-in: 2230c74f1e user: drh tags: trunk) | |
2014-07-24
| ||
23:23 | Improve the performance of the ANALYZE command by taking advantage of UNIQUE constraints on indices. (check-in: 114dcf3367 user: drh tags: trunk) | |
22:51 | Correct help text and make consistent use of snprintf. (check-in: 9c424a5c50 user: mistachkin tags: asciiMode) | |
22:41 | Fix a bug in the whereRangeSkipScanEst() procedure (added by check-in [d09ca6d5efad3e4cfa]) where it fails to consider the possibility of a ROWID column when computing the affinity of a table column. (check-in: 6aea2258dd user: drh tags: trunk) | |
22:33 | Update a shell test case. (check-in: b84008cb96 user: mistachkin tags: asciiMode) | |
22:20 | Fix typo in comment and update help text. (check-in: 289092bb64 user: mistachkin tags: asciiMode) | |
22:13 | Merge updates from trunk. (check-in: 8dc0cdf652 user: mistachkin tags: asciiMode) | |
20:25 | Avoid trying to allocation zero bytes when analyzing a unique non-null index. (Closed-Leaf check-in: 85e2badeeb user: drh tags: faster-analyze) | |
19:54 | Avoid change tests when analyzing single-column unique indexes after getting past the initial NULL entries. (check-in: 4690e99c07 user: drh tags: faster-analyze) | |
12:39 | Add the readfile(FILENAME) and writefile(FILENAME,CONTENT) SQL functions to the command-line shell. (check-in: fb1048cb2b user: drh tags: trunk) | |
12:19 | Add support for hexadecimal integer literals in the parser. (check-in: f8f79f2878 user: drh tags: trunk) | |
12:09 | In the command-line shell, in CSV output mode, terminate rows with CRNL but do not expand NL characters in data into CRNL. Provide the extra -newline command-line option and the extra argument to .separator to designate an alternative newline character sequence for CSV output. (check-in: 16c8ce10e1 user: drh tags: trunk) | |
2014-07-23
| ||
23:57 | Add experimental "costmult" logic. Only enabled when compiled with -DSQLITE_ENABLE_COSTMULT. (check-in: 729ece4088 user: drh tags: trunk) | |
19:37 | Ugh. Consecutive UNIQUE index entries are only distinct if the index is on NOT NULL columns. So the previous version was not quite right. This check-in fixes the problem. (check-in: 30033f9650 user: drh tags: faster-analyze) | |
19:04 | Enhancements to the hex literal tests. (Closed-Leaf check-in: a3cc027fa7 user: mistachkin tags: hex-literal) | |
18:36 | Improve the performance of the ANALYZE command by taking advantage of the fact that every row of a UNIQUE index is distinct. (check-in: 3e1e79e133 user: drh tags: faster-analyze) | |
15:51 | Updated documentation on sqlite3_temp_directory. No changes to code. (check-in: e6225a7bf7 user: drh tags: trunk) | |
14:52 | Remove a surplus function prototype. #ifdef code that is not used when hex integers are omitted at compile time. (check-in: a5b383e077 user: drh tags: hex-literal) | |
13:40 | Change the hex literal processing so that only the SQL parser understands hex literals. Casting and coercing string literals into numeric values does not understand hexadecimal integers. This preserves backwards compatibility. Also: Throw an error on any hex literal that is too big to fit into 64 bits. (check-in: 6c6f0de59b user: drh tags: hex-literal) | |
02:07 | Casting hex literals directly from string to float always results in a positive number. (check-in: 4b86ccdf4f user: drh tags: hex-literal) | |
01:59 | Reformatting a few test cases for clarity. (check-in: 7e1bbacb11 user: drh tags: hex-literal) | |
01:56 | Test cases for hex literals. (check-in: 19054339c4 user: drh tags: hex-literal) | |
01:26 | Add support for parsing C-style hexadecimal literals. (check-in: 34a1f38b7a user: drh tags: hex-literal) | |
2014-07-22
| ||
22:46 | When running ANALYZE, it is not necessary to check the right-most key column for changes since that column will always change if none of the previous columns have. (check-in: 48f40861db user: drh tags: trunk) | |
20:02 | Add the OP_ReopenIdx opcode that works like OP_OpenRead except that it becomes a no-op if the cursor is already open on the same index. Update the OR-optimization logic to make use of OP_ReopenIdx in order to avoid unnecessary cursor open requests sent to the B-Tree layer. (check-in: 77f412caf0 user: drh tags: trunk) | |
19:14 | The optimization of check-in [b67a6e33f2] does not work (it generates incorrect VDBE code) if an OR term is AND-ed with a constant expression. So back that optimization out and add a test case to make sure it does not get added back in. (check-in: eed754fe93 user: drh tags: trunk) | |
16:00 | Fix the index name for the shadow tables in the spellfix1 extension so that multiple instances of the spellfix1 virtual table can each have their own index. (check-in: 438c348a40 user: drh tags: trunk) | |
15:33 | Correction: The maximum SQLITE_MAX_ATTACHED value to avoid overflowing a signed 8-bit integer is 125, not 127. (check-in: 48e3780295 user: drh tags: trunk) | |
14:58 | Enhance the sqlite_stat1.stat parsing to allow additional text parameters at the end. Unrecognized parameters are silently ignored. (check-in: ca2a5a2c77 user: drh tags: trunk) | |
14:42 | Expire prepared statements after running ANALYZE. (check-in: b083a961f8 user: drh tags: trunk) | |
12:05 | Enhance the comment on whereLoopAddBtree(). No changes to code. (check-in: b22dd165da user: drh tags: trunk) | |
00:40 | For the OR-optimization, avoid generating OP_OpenRead opcodes that reopen exactly the same index. (check-in: b67a6e33f2 user: drh tags: trunk) | |