SQLite
Timeline
Not logged in

200 most recent checkins using file magic.txt version f2b23a6bde8f1c6e

2014-04-24
16:25
[bf09ce24d0] Leaf: Improved header comment on the vdbesort.c module. No changes to code. (user: drh, tags: orderby-planning)
15:06
[6077ddcd93] Reopen the orderby-planning branch and merge in the latest trunk enhancements and fixes. (user: drh, tags: orderby-planning)
12:28
[9fb5e21208] Leaf: Improvements to comments. Store some extra information in SqliteThread that is useful for debugging. (user: drh, tags: threads)
2014-04-23
12:57
[e2c9f71a45] Merge all recent trunk changes into the threads branch. (user: drh, tags: threads)
12:00
[2029a396dc] Leaf: Enhancements to the date and time functions so that they optionally support a 5-digit year. Not sure we want to include this in trunk. Saved in a branch for future reference. (user: drh, tags: five-digit-year)
2014-04-22
19:42
[ffceacf619] Leaf: Change from using the win32-none VFS to just a query parameter. (user: drh, tags: win32-none)
19:34
[be292d5597] Add some OSTRACE calls for consistency. (user: mistachkin, tags: win32-none)
19:30
[03e3c5a8b1] Add the win32-none VFS which omits rollback-journal locking. (user: drh, tags: win32-none)
2014-04-21
18:13
[eba95ead49] Leaf: Fix the generation of sqlite3_rtree_query_info.iRowid and add test cases to verify that it is fixed. (user: drh, tags: rtree-enhancements)
18:00
[3bf97c811a] Leaf: Preliminary changes to support building VSIX packages for Windows 8.0 and Windows Phone 8.0 using Visual Studio 2013. (user: mistachkin, tags: vsixWinPhone81)
15:53
[4394693882c] Be sure to initialize the sqlite3_rtree_query_info.iRowid field for the leaves of the R-Tree when doing a query callback search. (user: drh, tags: rtree-enhancements)
15:21
[d708f159ab] Fix an off-by-one error in setting the "iLevel" field of the sqlite3_rtree_query_info structure passed into the RTree query callback. (user: drh, tags: rtree-enhancements)
13:36
[65d2544af9] Leaf: Comment tweaks on the test case for the [b75a9ca6b0] bug fix. (user: drh, tags: trunk)
13:21
[de9a490f59] Avoid discarding an ORDER BY clause in the case where an identical GROUP BY clauses uses an index to group, but not sort, the rows. Fix for [b75a9ca6b0]. (user: dan, tags: trunk)
2014-04-18
22:20
[9a5d38c79d] Clean up the proper-subset cost adjustment logic to make it more compact and easier to read and so that full branch test coverage is more easily obtained. (user: drh, tags: trunk)
13:57
[5fce40c44a] Add to speedtest1.c the --threads option for setting the SQLITE_CONFIG_WORKER_THREADS configuration. (user: drh, tags: threads)
13:40
[f8f72ecb90] Fix harmless compiler warnings. (user: drh, tags: threads)
12:38
[8729aa3e3e] Merge recent trunk changes into the threads branch. (user: drh, tags: threads)
01:37
[6f3e94f4b1] Further improvements to the RTREE_DECODE_COORD() method, to take advantage of known processor byte orders when available. This makes the code 3% faster, according to valgrind. Also add test cases to make sure the on-disk representation is correct. (user: drh, tags: rtree-enhancements)
01:14
[d9eef5b03c] Merge the latest changes from sessions. (user: drh, tags: rtree-enhancements)
01:10
[95e77efe07] Leaf: Merge recent trunk changes into sessions. (user: drh, tags: sessions)
00:49
[2c5363873a] Add the SQLITE_RUNTIME_BYTEORDER compile-time option to force SQLite to check the processor byte-order at run-time. Add additional compile-time byte order checks for ARM, PPC, and SPARC. (user: drh, tags: trunk)
00:08
[a1b2f28ba8] Preliminary changes to support building VSIX packages for Windows Phone 8.1. (user: mistachkin, tags: vsixWinPhone81)
00:06
[9c6961967a] Add the SQLITE_TESTCTRL_BYTEORDER test control to interrogate SQLite's notion of the processor byte order and whether the byte order is known at compile-time or determined at run-time. (user: drh, tags: trunk)
2014-04-17
23:23
[444084fd62] Performance optimization on byte-swapping in R-Tree. (user: drh, tags: rtree-enhancements)
15:34
[71692aa97c] More test cases with very long priority queues. (user: drh, tags: rtree-enhancements)
14:52
[1ccaaed6b5] Test cases and bug fixes for the sqlite3_rtree_query_callback() mechanism. (user: drh, tags: rtree-enhancements)
13:15
[32a1387017] Refactor the constraint checking logic in RTree. The new-style constraint callbacks created by sqlite3_rtree_query_callback() are now hooked up from end to end, though still untested. (user: drh, tags: rtree-enhancements)
08:57
[12b190db1d] Fix build problems in vdbesort.c. Add further comments and changes to make things easier to understand. (user: dan, tags: threads)
2014-04-16
21:02
[5d20ff9ec8] Performance optimization on nodeGetCell() in R-Tree. (user: drh, tags: rtree-enhancements)
19:04
[c0c8cff17b] Clarify the purpose of the nField argument passed to sqlite3VdbeSorterInit(). (user: dan, tags: threads)
17:41
[6622d87675] Change the name of vdbeIncrInit2 to vdbePmaReaderIncrInit. Add a header comment to the same function. (user: dan, tags: threads)
17:23
[f26936f71a] Convert the RTree module query mechanism over to using a priority queue for walking the RTree. (user: drh, tags: rtree-enhancements)
17:15
[f864baccd3] Closed-Leaf: TCL tests now all pass. (user: drh, tags: rtree-queue)
16:43
[69026ec7dc] Rework the way trees of MergeEngine objects are built in vdbesort.c to make it easier to follow. Fix memory leaks that could follow an OOM or IO error. Add various comments to explain functions in vdbesort.c. (user: dan, tags: threads)
14:45
[5b0e6ba4a5] Fix a bug in rowid=? query handling. More problems remain. (user: drh, tags: rtree-queue)
13:00
[a439ddd629] Bug fixes to the priority-queue implementation for R-Trees. Improved tracing capability. Some queries work now, but still many problems. (user: drh, tags: rtree-queue)
2014-04-15
21:06
[53688a25c2] Initial attempt at getting R-Tree queries to work using a priority queue. This check-in compiles, but R-Trees do not work well. And there are debugging printf()s left in the code. This is an incremental check-in. (user: drh, tags: rtree-queue)
20:52
[2f94f9ce9b] Fix some problems to do with OOM conditions in vdbesort.c. Some problems remain. (user: dan, tags: threads)
19:52
[d03f5b8622] Fix further code and documentation issues in vdbesort.c. (user: dan, tags: threads)
2014-04-14
19:48
[c6fa8d0d82] Make sure the undocumented sqlite_rename_parent() function does not crash even if it is invoked with NULL arguments. Ticket [264b970c4379fd4b94] (user: drh, tags: trunk)
19:23
[cb0ab20c48] Allow the sorter to begin returning data to the VDBE as soon as it is available, instead of waiting until all keys have been sorted. (user: dan, tags: threads)
18:41
[02610cd9b7] Leaf: Improve performance in single-threaded mode by having the final merge pass keys directly to the VDBE, instead of going via a final PMA. (user: dan, tags: threads-experimental)
14:43
[ade5b986e8] Fix comments on the rtreenode() and rtreedepth() test function in the R-Tree module. (user: drh, tags: rtree-enhancements)
12:18
[3ba5f295c7] Remove over 300 lines of unused code, code that implemented the older Guttman insertion algorithms that are no longer used. (user: drh, tags: rtree-enhancements)
08:45
[e400bbbf26] Minor fixes so that builds with SQLITE_MAX_WORKER_THREADS=0 work. (user: dan, tags: threads-experimental)
07:30
[e1bdc4b810] Improve use of multiple threads in sqlite3VdbeSorterRewind(). (user: dan, tags: threads-experimental)
2014-04-13
19:28
[ab23abf392] Remove the unused second argument from sqlite3ExprCachePop(). Add an ALWAYS() on an always-true conditional in sqlite3VdbeResolveLabel(). (user: drh, tags: trunk)
19:15
[3122b83640] Make sure column cache elements are cleared correctly when jumping over code for key generation in a partial index. Fix for ticket [2ea3e9fe6379fc3f6]. (user: drh, tags: trunk)
16:10
[ca7357e66c] Continuing work on the new custom query mechanism for r-tree. (user: drh, tags: rtree-enhancements)
2014-04-12
19:34
[62c406a042] Fix many issues with new code. (user: dan, tags: threads-experimental)
17:44
[66c858f205] Continuing clean-up of the R-Tree module in preparation for cutting in the new generalized query mechanism. (user: drh, tags: rtree-enhancements)
2014-04-11
23:14
[0b70275972] Add the new interfaces to rtree, though they do not yet work. Add the "show_speedtest1_rtree.tcl" script for showing the test data used for the R-Tree tests of speedtest1. Change speedtest1 to generate better R-Tree test data. (user: drh, tags: rtree-enhancements)
19:43
[98bf0307b1] Avoid having the sorter merge too many PMAs at a time when incrementally merging data following a SorterRewind(). (user: dan, tags: threads-experimental)
17:41
[9d485c4207] Add the --verify option to speedtest1. Add verification test cases to the "rtree" testset and a case that uses a custom geometry callback. (user: drh, tags: rtree-enhancements)
16:14
[20a73ec0b2] Update comments in the R-Tree module in preparation for some big changes. Add an "rtree" performance test to speedtest1. (user: drh, tags: rtree-enhancements)
2014-04-10
02:24
[a67b5312f6] Modify the OR-clause handling so that it can safely deal with OR-clause with 17 or more terms. Fix for ticket [10fb063b1179be53ea0b53bb]. (user: drh, tags: trunk)
2014-04-09
20:04
[f9d5e09afa] Experimental multi-threaded sorting changes to allow the sorter to begin returning items to the VDBE before all data is sorted. (user: dan, tags: threads-experimental)
2014-04-07
18:44
[cbfc0f6d49] Closed-Leaf: Experimental multi-threaded sorting changes to begin merging PMAs before SorterRewind() is called. (user: dan, tags: abandoned)
2014-04-04
22:44
[e54dded201] Fix harmless compiler warnings. (user: drh, tags: threads)
21:40
[5e3dfa27c7] Fix typo in a Windows threading support routine. (user: mistachkin, tags: threads)
18:49
[2312eb6a9e] Performance improvements when reading large blobs, especially if SQLITE_DIRECT_OVERFLOW_READ is defined. (user: drh, tags: trunk)
18:37
[39ac79cffe] Merge the latest trunk changes into the threads branch. (user: drh, tags: threads)
18:20
[683dd379a2] Merge changes to the query planner that strive to ensure that any index usage that is a proper subset of some other index usage always has a slightly higher cost. (user: drh, tags: trunk)
14:12
[e54330b431] Ensure the "PRAGMA journal_mode=WAL" works coming from any other journal_mode with ATTACH-ed databases. (user: drh, tags: trunk)
07:52
[dceed2c803] Add test file sort3.test, which should have been part of commit 9d3351b8d7. (user: dan, tags: threads)
02:13
[217814bc4b] Change vdbeSorterExtendFile() so that it makes a best effort to create the PMA file of the desired size, but does not return an error if unable. (user: drh, tags: threads)
2014-04-03
16:53
[a611fa96c4] Leaf: Version 3.8.4.3 (user: drh, tags: release, branch-3.8.4, version-3.8.4.3)
16:42
[a0910079ad] Merge all recent changes from trunk. (user: drh, tags: threads)
16:35
[9515c8344a] Merge all recent changes from trunk, including the fix for the OP_SCopy-vs-OP_Copy problem. (user: drh, tags: sessions)
16:29
[d5513dfa23] Use OP_Copy instead of OP_SCopy when moving results out of a subquery, to prevent the subquery results from changing out from under the outer query. Fix for ticket 1e64dd782a126f48d78. (user: drh, tags: trunk)
16:25
[9d3351b8d7] Fix an integer overflow problem in the sorter. (user: dan, tags: threads)
16:18
[f05a49b6e0] Increase the version number to 3.8.4.3 (user: drh, tags: branch-3.8.4)
16:16
[ec6a06246e] Use OP_Copy instead of OP_SCopy when moving results out of a subquery, to prevent the subquery results from changing out from under the outer query. Fix for ticket 1e64dd782a126f48d78. (user: drh, tags: branch-3.8.4)
14:31
[48ecdd4aff] Fix a typo in the "Synopsis:" comment for the OP_VFilter opcode. (user: drh, tags: trunk)
14:29
[0561272abf] Fix minor errors causing compilation to fail with SQLITE_MAX_WORKER_THREADS set to a value greater than zero. (user: dan, tags: threads)
02:54
[d284e30eb1] Refactor local object and method names in vdbesort.c so that their names more closely reflect their actual use. (user: drh, tags: threads)
00:32
[9d2ae6342c] In the command-line shell, run set writable_schema before running the ".clone" command. (user: drh, tags: trunk)
2014-04-02
18:58
[eef60f1bf5] Add a big introductory comment to vdbesort.c explaining its operation at a high level. Also adjust some symbolic names and fix other comment issues in that file. (user: drh, tags: threads)
15:15
[47e702bd83] Fix some problems with OOM handling in vdbesort.c. (user: dan, tags: threads)
14:38
[4ee2d910fb] Change the name of the SorterThread object to "SortSubtask" to avoid confusion with the SQLiteThread object. (user: drh, tags: threads)
2014-04-01
18:41
[821d1ac450] When sorting data for a CREATE INDEX statement in single-threaded mode, assume that keys are delivered to the sorter in primary key order. Also fix various comments that had fallen out of date. (user: dan, tags: threads)
15:38
[643c86a056] Even if compile time option SQLITE_MAX_WORKER_THREADS is set to one or greater, set the default number of worker threads to zero. Distribute data more evenly between threads in sqlite3VdbeSorterWrite() to improve performance when sorting large amounts of data. Add new test file sort2.test. (user: dan, tags: threads)
10:19
[59cd5229e2] Fix a problem with OOM handling in the sorter code. (user: dan, tags: threads)
01:24
[834bf1c367] Closed-Leaf: Remove an unnecessary conditional, replacing it with an assert(). Improvements to comments. (user: drh, tags: overflow-pgno-cache)
2014-03-31
23:57
[96385dc460] Fix a compiler warning when SQLITE_DIRECT_OVERFLOW_READ is defined. Minor performance enhancement and size reduction. (user: drh, tags: overflow-pgno-cache)
22:03
[f6211540c9] Merge in the latest changes and fixes from trunk. (user: drh, tags: overflow-pgno-cache)
20:05
[7473c4dfc1] Closed-Leaf: Remove an unnecessary conditional. (user: drh, tags: query-plan-experiments)
19:57
[2774710df8] Add the SQLITE_MAX_WORKER_THREADS compile time option. And the SQLITE_CONFIG_WORKER_THREADS sqlite3_config() switch. (user: dan, tags: threads)
19:49
[b7830d232b] Also make sure an index that is a proper subset of some other index has a higher cost than that other index. Add test cases. (user: drh, tags: query-plan-experiments)
18:24
[ea8b091004] Make sure that an index that covers a proper superset of the WHERE clause terms of some other index has a lower cost than the other index. (user: drh, tags: query-plan-experiments)
13:42
[b3296267fb] Avoid a (harmless) buffer overread that is possible on an OOM when MEMSYS5 is engaged. (user: drh, tags: trunk)
2014-03-29
21:16
[8f869ca7a6] Experiments in picking better query plans, especially when the usage of one index is a subset of another. (user: drh, tags: query-plan-experiments)
19:48
[83a105c864] Closed-Leaf: Changes to make the multi-threaded sorter sort stably. (user: dan, tags: threads-closed)
10:01
[18d1b402f2] Fix a broken assert() in vdbesort.c. (user: dan, tags: threads)
09:34
[a683c05f62] Fix a problem in vdbesort.c causing spurious SQLITE_NOMEM errors when using memsys3 or memsys5. (user: dan, tags: threads)
06:27
[fc4d04e6b0] Add the optimization to avoid some unnecessary calls to sqlite3VdbeRecordUnpack() added to the trunk by 707ea170b3. (user: dan, tags: threads)
2014-03-28
19:47
[58f7ca2930] Fix a compiler warning and an after-OOM memory leak. (user: drh, tags: orderby-planning)
19:18
[4c7fb54234] Merge latest changes from orderby-planning branch. (user: dan, tags: threads)
18:35
[3047a25f1c] Merge the latest changes from trunk. (user: drh, tags: orderby-planning)
14:41
[27deb6e49b] Disable the wal64k.test script for non-unix systems since it depends on unix-only features. (user: drh, tags: trunk)
12:56
[a4e47150f3] Fix a harmless compiler warning. (user: drh, tags: trunk)
03:12
[7fa85eaaaf] Enhance the sqlite3VdbeRecordCompare() routines so that if they encounter database corruption, they will set the UnpackedRecord.isCorrupt field and return 0. The sqlite3BtreeMovetoUnpacked() routine detects this and returns SQLITE_CORRUPT, causing the corruption to be reported back to the top-level. (user: drh, tags: trunk)
2014-03-27
19:25
[81987c8ceb] Instead of allocating a single large buffer at the beginning of each sort operation, start with a small buffer and extend it using realloc() as required. (user: dan, tags: orderby-planning)
18:36
[9b4d7226bc] Minor cleanup of the code in the query planner that computes the costs estimates for the various plans. There are no changes to the costs at this time. But the code is slightly more readable now and that might facilitate future enhancements. (user: drh, tags: trunk)
17:23
[f4ac1bf28c] Use xFetch() to access temporary files in vdbesort.c. Use a single large allocation instead of many small allocations when accumulating records in vdbesort.c. This is an interim commit - it allocates a buffer the size of the page-cache every time data is sorted. (user: dan, tags: orderby-planning)
14:05
[b4bd2a062c] Enhance the logest.c utility with new operators: "dup", "inv", "log", and "nlogn". Provide help on an invalid input. (user: drh, tags: trunk)
00:09
[0b35346c32] Merge the latest trunk changes and the fix for the crash on a corrupt database. (user: drh, tags: orderby-planning)
2014-03-26
19:45
[8cb2b02baa] Merge from trunk the fix for the crash on a corrupt database. (user: drh, tags: threads)
19:43
[fc8ca1a87e] Merge in fixes (including the corrupt-database crash fix) and performance enhancements from trunk. (user: drh, tags: sessions)
18:51
[02ea166372] Version 3.8.4.2 (user: drh, tags: release, branch-3.8.4, version-3.8.4.2)
16:25
[59978a2e42] Increase the version number to 3.8.4.2. (user: drh, tags: branch-3.8.4)
16:22
[db2935473e] Fix a potential buffer overread that could have occurred when searching a corrupt database file. (user: drh, tags: branch-3.8.4)
15:14
[f585f5d7a0] Add an extra test case for the potential buffer overread patched by 28ddecff04. (user: dan, tags: trunk)
15:05
[2b28e8d582] Add a test case to verify that the previous change avoids excess buffer overread in sqlite3VdbeRecordCompare(). (user: drh, tags: trunk)
14:51
[28ddecff04] Earlier detection of corruption in sqlite3VdbeRecordCompare() in order to avoid a potential buffer overread. (user: drh, tags: trunk)
12:02
[851abdb8fd] Add an assert() and a comment to clarify the operation of the vdbeRecordCompareInt() routine. (user: drh, tags: trunk)
2014-03-25
20:28
[7922809ee0] Adjust the repeat counts on several tests in speedtest1 so that the relative time spent on the test is roughly the same regardless of --size. (user: drh, tags: trunk)
18:29
[e005f2d6dd] Merge enhancements and fixes from trunk. (user: drh, tags: orderby-planning)
17:45
[9ab7ffd592] Add another performance test case to speedtest1. This case is another ORDER BY test but this time without LIMIT. (user: drh, tags: trunk)
17:07
[d3e640afe6] Fix a problem in the code added by 707ea170b3 causing vdbesort.c to sort unstably. (user: dan, tags: orderby-planning)
15:04
[c3ae369783] Remove the sequence values from sorter records used by ORDER BY as well. (user: dan, tags: orderby-planning)
14:54
[588122641e] Add an ORDER BY test case to speedtest1.c (user: drh, tags: trunk)
14:12
[1cab83577c] Enable four sorting threads by default in the command-line shell. (user: drh, tags: threads)
13:17
[b415dfb6cb] Merge all fixes and enhancements from trunk. (user: drh, tags: threads)
11:00
[e6798871ce] Detect when a VdbeCursor is still pointing at a valid row but that row has moved, and invalidated the return from prior sqlite3BtreeDataFetch() or sqlite3BtreeKeyFetch() calls. (user: drh, tags: trunk)
2014-03-24
20:19
[3f90abddc3] Omit the sequence value from sorter records used by GROUP BY queries that cannot use an index. (user: dan, tags: orderby-planning)
18:08
[4f472accf0] Avoid unnecessary moving of content between registers during an ORDER BY. (user: drh, tags: orderby-planning)
16:30
[4d7551ce46] Remove unused variables Parse.nColCache and Parse.iColCache. (user: dan, tags: trunk)
15:00
[221f8f9447] Fix arithmetic operators so that they do not change the affinity of their input operands. Ticket [a8a0d2996a]. (user: drh, tags: trunk)
12:33
[0b95b7a874] Closed-Leaf: Cancel column-cache entries that are involved in a comparison operator since the comparison might have forced an affinity change. Originally proposed as a fix for ticket [a8a0d2996a], but later determined to be incorrect. (user: drh, tags: tkt-a8a0d2996a)
11:23
[db7d62c8d5] Avoid attempting to mmap memory from an offset that is not a multiple of the system page size on systems with page sizes larger than 32KB. (user: dan, tags: trunk)
09:34
[5d506743f5] Remove an unnecessary temporary register allocation. (user: dan, tags: orderby-planning)
02:20
[e6c59d2331] Remove a pointless OP_Once operation in ORDER BY clauses with LIMIT. (user: drh, tags: orderby-planning)
01:43
[e7188fad87] Further enhancements to generated VDBE code for ORDER BY. (user: drh, tags: orderby-planning)
2014-03-23
18:47
[faf7f9caf5] merge fixes from trunk (user: drh, tags: orderby-planning)
17:45
[d696cdedac] Use only a single OP_MakeRecord instead of two when constructing entries to go onto a sorter. (user: drh, tags: orderby-planning)
16:29
[641408a139] Avoid a possible use of an uninitialized variable following an I/O or OOM error. (user: drh, tags: trunk)
2014-03-22
02:19
[9b2838f23e] Clear the sort-order flags on the KeyInfo object associated with the OP_Compare/OP_Jump of the block-sort logic, in order to make the OP_Jump fully testable. (user: drh, tags: trunk)
01:52
[9760879d08] Increase the version number to 3.8.5. (user: drh, tags: trunk)
00:27
[c36f74611c] Fix the ORDER BY optimization logic so that it will do a block-sort on a partial DESC ORDER BY. This enhancement uncovered a memory leak in pushUntoSorter() which is also fixed. (user: drh, tags: trunk)
2014-03-21
20:58
[fa06a6fed9] Add the ability to use indices for the first few terms of an ORDER BY clause, then sort in batches to handle the later terms. (user: drh, tags: trunk)
19:56
[45d8cc678d] Change the names of SRT_DistTable and SRT_Table used by CTE to more meaningful SRT_DistFifo and SRT_Fifo, respectively. Simplify the IgnorableOrderby() macro in the process. (user: drh, tags: trunk)
19:27
[1f413aca00] Avoid leaking memory in an obscure case where the flattener adds an ORDER BY clause to the recursive part of a recursive query. (user: dan, tags: trunk)
18:45
[71e9ae72c2] Merge the OFFSET-on-query-without-FROM fix from trunk. (user: drh, tags: orderby-planning)
18:16
[179ef81648] Fix the OFFSET clause so that it works correctly on queries that lack a FROM clause. Ticket [07d6a0453d4ed8]. (user: drh, tags: trunk)
15:24
[e70cfa28aa] New test case for block-sorting. (user: drh, tags: orderby-planning)
2014-03-20
20:56
[eca35871c3] Merge trunk fixes for "x IN (?)" handling. (user: drh, tags: orderby-planning)
19:04
[d5a1530bdc] Remove a testcase() that is now always true due to the "x IN (?)" optimization. Add an ALWAYS() around a conditional in the parser that cannot be false. (user: drh, tags: trunk)
18:56
[d8e1f75ddf] Only use the direct-overflow-read optimization if all data from the overflow page in question is being read. (user: dan, tags: overflow-pgno-cache)
18:45
[01944c53f5] Fix the EXPLAIN indenter in the command-line shell to correctly handle NextIfOpen and PrevIfOpen opcodes. (user: drh, tags: trunk)
17:03
[2ea4a9f75f] The "x IN (?)" optimization in check-ins 2ff3b25f40 and e68b427afb is incorrect, as demonstrated by the in4-5.1 test case in this check-in. The "COLLATE binary" that was being added to the RHS of IN was overriding the implicit collating sequence of the LHS. This change defines the EP_Generic expression node property that blocks all affinity or collating sequence information in the expression subtree and adds that property to the expression taken from RHS of the IN operator. (user: drh, tags: trunk)
15:14
[b1435f26b0] Fix harmless compiler warnings. (user: drh, tags: trunk)
14:56
[2ff3b25f40] Previous check-in is not quite correct. "x IN (?)" is not exactly the same as "x==?" do to collation and affinity issues. The correct converstion should be to "x==(+? COLLATE binary)". The current check-in fixes this problem and provides test cases. Ticket [e39d032577df69] (user: drh, tags: trunk)
13:26
[e68b427afb] Convert expressions of the form "X IN (?)" with exactly one value on the RHS of the IN into equality tests: "X=?". Add test cases to verify that statements work correctly on this corner case. Fix for ticket [e39d032577df6942]. (user: drh, tags: trunk)
12:36
[eae6dfbe55] Closed-Leaf: One possible fix for the [e39d032577d] problem it to replace the failing assert() with a testcase() as shown here. (user: drh, tags: tkt-e39d0325)
12:17
[ca31408131] Fix an unnecessarily obtuse use of a bitmask flag. (user: drh, tags: trunk)
09:42
[e3d2be3ba4] Closed-Leaf: Add a test to ensure os_unix.c works with 64KiB OS pages. (user: dan, tags: shm-mapping-fix)
08:59
[6f3a5c24d2] Add an experimental fix to avoid attempting to mmap memory from an offset that is not a multiple of the system page size on systems with page sizes larger than 32KB. (user: dan, tags: shm-mapping-fix)
2014-03-19
23:42
[e4bfffb988] Merge the vdbesort.c optimization from trunk. (user: drh, tags: orderby-planning)
23:24
[01afbf97c0] Fix query planner weights associated with choosing block-sorting. Fix block sorting of tables with collating functions. Fix various test cases. All "veryquick" tests are now passing, though more tests need to be added. (user: drh, tags: orderby-planning)
20:01
[707ea170b3] Avoid some unnecessary calls to sqlite3VdbeRecordUnpack() that were being made when merging data from two or more temp files together in vdbesort.c (user: dan, tags: trunk)
17:41
[7ce2daafd3] Make it possible for block-sort to use the OP_SorterOpen sorter in addition to a generic OP_OpenEphemeral. (user: drh, tags: orderby-planning)
16:56
[62f3a22050] Fix a problem in the block-sort logic that can arise if the VDBE opcode array is resized while the block-sort logic is being coded. "make test" now runs to completion, though there are still 17 failures. (user: drh, tags: orderby-planning)
15:17
[463d921b51] Avoid reusing temporary registers in co-routines when doing block-sorting. (user: drh, tags: orderby-planning)
14:30
[b186d8d15a] Make sure the where.c query planner never reports that the number of ORDER BY terms that are satisfied by indices is negative. (user: drh, tags: orderby-planning)
14:10
[59742dd4c5] First attempt at getting block-sort to work. This is an incremental check-in. There are many problems still to be worked out. (user: drh, tags: orderby-planning)
2014-03-18
20:33
[e258df236b] Make the partial-ORDER-BY information in the query planner available to the SELECT code generator. Still doesn't make a difference in the generated code. (user: drh, tags: orderby-planning)
18:59
[59d49b7fc4] Adjust the query planner to keep track of the number of ORDER BY terms satisfied. Still doesn't do anything with this information. Some tests fail after this check-in, but all failures are believed to be benign. The failures will be addressed at a later stage. (user: drh, tags: orderby-planning)
15:30
[b150902579] Experiments with the optimization of ORDER BY and GROUP BY clauses. (user: drh, tags: orderby-planning)
2014-03-17
15:43
[ff0b5c851b] Add an experimental multi-threaded capability to vdbesorter.c. (user: dan, tags: threads)
15:06
[ecd9d3f945] Clean up some obsolete "register" declarations in printf.c. (user: drh, tags: trunk)
14:24
[eb071eb58c] Performance enhancements and size reduction for sqlite3VXPrintf() (user: drh, tags: trunk)
2014-03-14
11:46
[1277932b7e] Fix a harmless compiler warning that crops up with SQLITE_MAX_MMAP_SIZE=0. (user: drh, tags: trunk)
2014-03-13
15:41
[d17231b63d] Merge latest trunk changes into this branch. (user: dan, tags: threads)
2014-03-12
19:38
[6504aa47a8] Fix an obscure bug causing sqlite3_close() to fail if there are virtual tables on the disconnect list when it is called. (user: dan, tags: trunk)
19:20
[c67a52c356] Changes to FTS to ensure that it does not access the database from within the xConnect method. (user: dan, tags: trunk)
12:44
[7ce03c1b55] Prevent the rtree module from reading sqlite_stat1 data from the wrong database. (user: dan, tags: trunk)
10:03
[42c9d8fc5f] Bump the version number to 3.8.4.1., to conform with trunk. (user: drh, tags: sessions)
2014-03-11
23:44
[f500e87d6e] Remove a stray C99-style comment. (user: drh, tags: overflow-pgno-cache)
23:40
[968fec44d7] Combine the various boolean fields of the BtCursor object into a single bit-vector. This allows setting or clearing more than one boolean at a time and makes the overflow-pgno-cache branch faster than trunk on speedtest1. (user: drh, tags: overflow-pgno-cache)
20:33
[da59198505] Enable the b-tree cursor object's overflow page-number cache, which is normally enabled only for incr-blob cursors, for all cursors. (user: dan, tags: overflow-pgno-cache)
15:27
[018d317b12] Version 3.8.4.1 (user: drh, tags: trunk, release, version-3.8.4.1)
15:25
[33f5694fa4] Update version number to 3.8.4.1 (user: drh, tags: trunk)
14:44
[04caffcef3] Closed-Leaf: Forgot to change the VERSION file. (user: drh, tags: mistake)
09:19
[5527e23636] Add a test to see what happens if an rtree constructor encounters an SQLITE_BUSY error. No changes to code. (user: dan, tags: trunk)
01:48
[917c410808] Version 3.8.4 for sessions (plus two minor fixes). (user: drh, tags: sessions)
2014-03-10
20:12
[0769eebd02] Adjustments to the cost computation for the skip-scan query plan, to take into account the fact that a seek has to occur on each skip. (user: drh, tags: trunk)
18:03
[0a5318bc27] Attempt to work around MSVC's treatment of __LINE__ as a non-constant value in "Edit and Continue" mode by avoiding the use of __LINE__ when SQLITE_VDBE_COVERAGE is not defined. (user: drh, tags: trunk)
12:20
[530a1ee7dc] Version 3.8.4 (user: drh, tags: trunk, release, version-3.8.4)
2014-03-08
19:07
[ba39df9d4f] Fix a bug causing "SELECT char()" to return SQLITE_NOMEM. (user: dan, tags: trunk)
2014-03-07
14:57
[e5b17a9d07] Improved comment on the pager.c PERSIST rollback journal delete logic inside of hasHotJournal(). No changes to code. (user: drh, tags: trunk)
14:36
[bb6a75f4bb] Merge the fix for the journal_mode=PERSIST error recovery delay bug. (user: drh, tags: sessions)
03:31
[1c318ef3b7] Revise change from the previous check-in to clarify the situation when handling open journal files, regardless of journal mode. (user: mistachkin, tags: trunk)
02:29
[fdc651e2ec] Avoid calling sqlite3OsDelete() on a file that is open, since this causes Windows to run *very* slowly. Comes up on error recovery in journal_mode=PERSIST. (user: mistachkin, tags: trunk)
2014-03-06
18:16
[c0d54b4e41] Do not run corruptH.test in mmap mode. (user: dan, tags: trunk)
15:01
[d389e20ab0] Fix a harmless compiler warning in the sessions test harness. (user: drh, tags: sessions)
14:53
[bc0e661033] Enhance the test harness for the sessions interface so that it does not use SQLite operations that can encounter an OOM error in places where it is unable to report an OOM error back up to the test script. (user: drh, tags: sessions)
13:48
[1ed463d918] Merge the latest 3.8.4 tweaks from trunk. (user: drh, tags: sessions)
13:38
[0a4200f95c] Improved EXPLAIN indentation of a loop in the ANALYZE logic for STAT4. Mark the not-found jump of a seek operation in that loop as never taken. (user: drh, tags: trunk)