Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
100 ancestors of 13686035dd1cf67a
2014-05-03
| ||
12:00 | Add two new static mutexes, SQLITE_MUTEX_STATIC_APP1 and _APP2, for use by the application program. First intended use is in test programs for the memory allocation logic where one does not want to allocating a _FAST or _RECURSIVE mutex since that would involve using the memory allocation system under test. (check-in: 13686035dd user: drh tags: threads) | |
11:22 | Add the SQLITE_DEFAULT_WORKER_THREADS compile-time option. Fix a NULL-pointer dereference that can occur following OOM. (check-in: e0dea89b3e user: drh tags: threads) | |
2014-05-02
| ||
19:12 | Fix typo in Windows makefile. Make sure the WaitForSingleObjectEx system call is always available. (check-in: d7ed529fa2 user: mistachkin tags: threads) | |
18:46 | Do not run the vdbeRecordCompareDebug() assert if pKeyInfo->db is NULL since in that case there would be no way to check for a memory allocation failure. (check-in: 63ed2d6acb user: drh tags: threads) | |
18:05 | Merge orderby-planning with this branch. (check-in: d9549de317 user: dan tags: threads) | |
17:33 | Simplify assert() statements used to verify correct operation of record comparison routines. (check-in: 3300d62dcb user: drh tags: orderby-planning) | |
17:12 | Fix some broken asserts in btree.c and vdbeaux.c that may fail following an OOM error. (check-in: e15f47064b user: dan tags: threads) | |
16:22 | Failure to extend a temp file for use with mmap() in vdbesort.c is benign. (check-in: d4d396387d user: drh tags: orderby-planning) | |
16:03 | Remove a faulty assert() from vdbesort.c. (check-in: d95d68aa1d user: dan tags: threads) | |
15:25 | Fix a faulty assert() statement. (check-in: 9196ce4073 user: drh tags: orderby-planning) | |
13:09 | Merge latest trunk enhancements and fixes into the orderby-planning branch. (check-in: 84862d3a09 user: drh tags: orderby-planning) | |
00:09 | Add a comment explaining why WhereLoop cost adjustments are omitted for skip-scan loops. (check-in: 3bc43594aa user: drh tags: trunk) | |
2014-05-01
| ||
20:26 | Fix an obscure problem to do with temp register allocation that could occur if more than one simple SELECT within a compound SELECT uses a partial sort. (check-in: 427409ae10 user: dan tags: trunk) | |
20:24 | Add #ifdefs for test coverage. Add a testcase(). (check-in: be2702ce35 user: drh tags: trunk) | |
10:19 | Update a test case in wal2.test that explicitly corrupts a checksum in the wal file to account for the fact that the first byte of said checksum may initially be 0xFF. (check-in: 2b935bdea1 user: dan tags: trunk) | |
2014-04-30
| ||
18:11 | Fix a problem in calculating the costs of "OR" scans. (check-in: 9bbca48b42 user: dan tags: trunk) | |
15:22 | Modify the way the costs of various query plans are estimated. If the user supplies a likelihood() value (or equivalent) on an indexed WHERE constraint, use it to estimate the number of index rows visited. (check-in: 90e3667647 user: dan tags: trunk) | |
15:00 | Add text to the header comment of whereLoopAddBtree() describing how the costs of various b-tree loops are estimated. (Closed-Leaf check-in: 05e6e16cb2 user: dan tags: experimental-costs) | |
14:53 | Update a couple of test cases to account for the fact that this branch prefers an index scan and partial sort over a full-table scan and full external sort. (check-in: 9b975bf33c user: dan tags: experimental-costs) | |
14:47 | Fix a couple of out-of-date comments in where.c. (check-in: eefeda32d5 user: dan tags: experimental-costs) | |
14:22 | Improved rendering of LogEst values corresponding to real values near 0.0 in the tool/logest.c utility program. (check-in: 32910c8c59 user: drh tags: experimental-costs) | |
13:19 | Fix long-standing typos in comments. (check-in: b9f91317c3 user: drh tags: experimental-costs) | |
2014-04-29
| ||
19:01 | Test that the default values used when sqlite_stat1 data is not available are calculated correctly. Fixes for the same. (check-in: e2d42f909d user: dan tags: experimental-costs) | |
16:46 | Merge trunk changes into this branch. (check-in: d74299f037 user: dan tags: experimental-costs) | |
16:10 | Ignore likelihood() values on indexed IPK lookups. (check-in: 5bb7757a7b user: dan tags: experimental-costs) | |
12:01 | Fix a test case so that it updates sqlite_stat1 consistently. (check-in: 2dc5a0b555 user: dan tags: experimental-costs) | |
2014-04-28
| ||
20:11 | Do not reduce the number of rows scanned at all for "IS NOT NULL" constraints. Fix a bug in calculating the number of rows visited by scans of partial indicies. (check-in: a8ae93f0cf user: dan tags: experimental-costs) | |
19:34 | The trunk assumes that an open range constraint on an indexed term (col>?) term matches 1/4 of the indexed rows, and that a closed constraint (col BETWEEN ? AND ?) matches 1/64. Change this branch to do the same. (check-in: 4047ac75e2 user: dan tags: experimental-costs) | |
17:56 | Add the sqlite3_rtree_query_callback() API to the RTree virtual table. (Cherrypick from the sessions branch.) (check-in: af2cbe64ad user: drh tags: trunk) | |
17:51 | Add the sqlite3_rtree_query_callback() API to the RTree virtual table. (check-in: 3dca280935 user: drh tags: sessions) | |
15:11 | Update unordered.test to take into account for the fact that SQLite now prefers a full-table scan over a non-covering index scan that visits a large percentage of the table rows. (check-in: 20f468dfbc user: dan tags: experimental-costs) | |
12:08 | Add an extra column to a table in analyze9.test to give the planner a little more reason to select an index. (check-in: 1b95544f84 user: dan tags: experimental-costs) | |
10:00 | Update test script analyze3.test to account for the fact that SQLite now prefers a full-table scan over a non-covering index scan that visits a large percentage of the table rows. (check-in: 35f46a55d8 user: dan tags: experimental-costs) | |
09:35 | Modify internal function whereLoopAdjustCost() so that it does not prefer a skip-scan over a regular index scan even if the regular scan uses a subset of the WHERE terms used by the skip-scan. (check-in: 88a5758dcc user: dan tags: experimental-costs) | |
08:49 | Fix an error in estimating of the number of rows visited by a range scan. (check-in: d491de62fc user: dan tags: experimental-costs) | |
2014-04-26
| ||
20:21 | Fix an sqlite3_stmt_status() problem caused by recent changs on this branch. (check-in: dee2040924 user: dan tags: experimental-costs) | |
19:23 | Update requirements marks to fix typos in the requirements text. No changes to code. (check-in: f5a2636581 user: drh tags: trunk) | |
17:52 | Allow the xfer optimization to proceed if the DEFAULT on the very first column of the two tables is different. This is a refinement of the fix for ticket [f67b41381a]. (check-in: 349f483499 user: drh tags: trunk) | |
14:07 | Avoid transfering records between tables unless the default values for all columns are the same. Fix for [f67b41381a]. (check-in: f8c4c495e6 user: dan tags: trunk) | |
2014-04-25
| ||
20:22 | If the user provides likelihood() data for a WHERE clause term used as part of an index key, have the planner use it when calculating the expected number of rows visited by the loop. (check-in: c51efaa5d2 user: dan tags: experimental-costs) | |
17:37 | Add test cases to ensure correct operation of joins with a virtual table that include DISTINCT and ORDER BY clauses. Verification for ticket [388d01d4bb8f9]. (check-in: 5ada136f43 user: drh tags: trunk) | |
15:01 | Store values loaded from the stat1 table as logarithmic values in memory. (check-in: 1bd74c49dd user: dan tags: experimental-costs) | |
14:42 | Make sure ORDER BY clauses on joins that involve virtual tables and that have a DISTINCT clause work correctly. This is a candidate fix for ticket [388d01d4bb8f9]. Test cases for that ticket will be checked in separately. (check-in: 1711381226 user: drh tags: trunk) | |
12:35 | When VDBE_PROFILE is enabled, ignore negative opcode times, which sometimes occur, perhaps due to context swaps. (check-in: 4e88042f9d user: drh tags: trunk) | |
2014-04-24
| ||
20:04 | Changes to the way the planner calculates the costs of various table and index scans. Some test cases still failing. (check-in: c5a6ec0a88 user: dan tags: experimental-costs) | |
16:25 | Improved header comment on the vdbesort.c module. No changes to code. (check-in: bf09ce24d0 user: drh tags: orderby-planning) | |
15:06 | Reopen the orderby-planning branch and merge in the latest trunk enhancements and fixes. (check-in: 6077ddcd93 user: drh tags: orderby-planning) | |
12:28 | Improvements to comments. Store some extra information in SqliteThread that is useful for debugging. (check-in: 9fb5e21208 user: drh tags: threads) | |
2014-04-23
| ||
12:57 | Merge all recent trunk changes into the threads branch. (check-in: e2c9f71a45 user: drh tags: threads) | |
2014-04-21
| ||
13:36 | Comment tweaks on the test case for the [b75a9ca6b0] bug fix. (check-in: 65d2544af9 user: drh tags: trunk) | |
13:21 | 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]. (check-in: de9a490f59 user: dan tags: trunk) | |
2014-04-18
| ||
22:20 | 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. (check-in: 9a5d38c79d user: drh tags: trunk) | |
13:57 | Add to speedtest1.c the --threads option for setting the SQLITE_CONFIG_WORKER_THREADS configuration. (check-in: 5fce40c44a user: drh tags: threads) | |
13:40 | Fix harmless compiler warnings. (check-in: f8f72ecb90 user: drh tags: threads) | |
12:38 | Merge recent trunk changes into the threads branch. (check-in: 8729aa3e3e user: drh tags: threads) | |
00:49 | 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. (check-in: 2c5363873a user: drh tags: trunk) | |
00:06 | 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. (check-in: 9c6961967a user: drh tags: trunk) | |
2014-04-17
| ||
08:57 | Fix build problems in vdbesort.c. Add further comments and changes to make things easier to understand. (check-in: 12b190db1d user: dan tags: threads) | |
2014-04-16
| ||
19:04 | Clarify the purpose of the nField argument passed to sqlite3VdbeSorterInit(). (check-in: c0c8cff17b user: dan tags: threads) | |
17:41 | Change the name of vdbeIncrInit2 to vdbePmaReaderIncrInit. Add a header comment to the same function. (check-in: 6622d87675 user: dan tags: threads) | |
16:43 | 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. (check-in: 69026ec7dc user: dan tags: threads) | |
2014-04-15
| ||
20:52 | Fix some problems to do with OOM conditions in vdbesort.c. Some problems remain. (check-in: 2f94f9ce9b user: dan tags: threads) | |
19:52 | Fix further code and documentation issues in vdbesort.c. (check-in: d03f5b8622 user: dan tags: threads) | |
2014-04-14
| ||
19:48 | Make sure the undocumented sqlite_rename_parent() function does not crash even if it is invoked with NULL arguments. Ticket [264b970c4379fd4b94] (check-in: c6fa8d0d82 user: drh tags: trunk) | |
19:23 | 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. (check-in: cb0ab20c48 user: dan tags: threads) | |
18:41 | Improve performance in single-threaded mode by having the final merge pass keys directly to the VDBE, instead of going via a final PMA. (Closed-Leaf check-in: 02610cd9b7 user: dan tags: threads-experimental) | |
08:45 | Minor fixes so that builds with SQLITE_MAX_WORKER_THREADS=0 work. (check-in: e400bbbf26 user: dan tags: threads-experimental) | |
07:30 | Improve use of multiple threads in sqlite3VdbeSorterRewind(). (check-in: e1bdc4b810 user: dan tags: threads-experimental) | |
2014-04-13
| ||
19:28 | Remove the unused second argument from sqlite3ExprCachePop(). Add an ALWAYS() on an always-true conditional in sqlite3VdbeResolveLabel(). (check-in: ab23abf392 user: drh tags: trunk) | |
19:15 | Make sure column cache elements are cleared correctly when jumping over code for key generation in a partial index. Fix for ticket [2ea3e9fe6379fc3f6]. (check-in: 3122b83640 user: drh tags: trunk) | |
2014-04-12
| ||
19:34 | Fix many issues with new code. (check-in: 62c406a042 user: dan tags: threads-experimental) | |
2014-04-11
| ||
19:43 | Avoid having the sorter merge too many PMAs at a time when incrementally merging data following a SorterRewind(). (check-in: 98bf0307b1 user: dan tags: threads-experimental) | |
2014-04-10
| ||
02:24 | Modify the OR-clause handling so that it can safely deal with OR-clause with 17 or more terms. Fix for ticket [10fb063b1179be53ea0b53bb]. (check-in: a67b5312f6 user: drh tags: trunk) | |
2014-04-09
| ||
20:04 | Experimental multi-threaded sorting changes to allow the sorter to begin returning items to the VDBE before all data is sorted. (check-in: f9d5e09afa user: dan tags: threads-experimental) | |
2014-04-04
| ||
22:44 | Fix harmless compiler warnings. (check-in: e54dded201 user: drh tags: threads) | |
21:40 | Fix typo in a Windows threading support routine. (check-in: 5e3dfa27c7 user: mistachkin tags: threads) | |
18:49 | Performance improvements when reading large blobs, especially if SQLITE_DIRECT_OVERFLOW_READ is defined. (check-in: 2312eb6a9e user: drh tags: trunk) | |
18:37 | Merge the latest trunk changes into the threads branch. (check-in: 39ac79cffe user: drh tags: threads) | |
18:20 | 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. (check-in: 683dd379a2 user: drh tags: trunk) | |
14:12 | Ensure the "PRAGMA journal_mode=WAL" works coming from any other journal_mode with ATTACH-ed databases. (check-in: e54330b431 user: drh tags: trunk) | |
07:52 | Add test file sort3.test, which should have been part of commit [9d3351b8d7]. (check-in: dceed2c803 user: dan tags: threads) | |
02:13 | 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. (check-in: 217814bc4b user: drh tags: threads) | |
2014-04-03
| ||
16:42 | Merge all recent changes from trunk. (check-in: a0910079ad user: drh tags: threads) | |
16:29 | 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 [98825a79ce1456]. Problem introduced by check-in [1e64dd782a126f48d78]. (check-in: d5513dfa23 user: drh tags: trunk) | |
16:25 | Fix an integer overflow problem in the sorter. (check-in: 9d3351b8d7 user: dan tags: threads) | |
16:16 | 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 [98825a79ce1456]. Problem introduced by check-in [1e64dd782a126f48d78]. (check-in: ec6a06246e user: drh tags: branch-3.8.4) | |
14:31 | Fix a typo in the "Synopsis:" comment for the OP_VFilter opcode. (check-in: 48ecdd4aff user: drh tags: trunk) | |
14:29 | Fix minor errors causing compilation to fail with SQLITE_MAX_WORKER_THREADS set to a value greater than zero. (check-in: 0561272abf user: dan tags: threads) | |
02:54 | Refactor local object and method names in vdbesort.c so that their names more closely reflect their actual use. (check-in: d284e30eb1 user: drh tags: threads) | |
00:32 | In the command-line shell, run set writable_schema before running the ".clone" command. (check-in: 9d2ae6342c user: drh tags: trunk) | |
2014-04-02
| ||
18:58 | 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. (check-in: eef60f1bf5 user: drh tags: threads) | |
15:15 | Fix some problems with OOM handling in vdbesort.c. (check-in: 47e702bd83 user: dan tags: threads) | |
14:38 | Change the name of the SorterThread object to "SortSubtask" to avoid confusion with the SQLiteThread object. (check-in: 4ee2d910fb user: drh tags: threads) | |
2014-04-01
| ||
18:41 | 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. (check-in: 821d1ac450 user: dan tags: threads) | |
15:38 | 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. (check-in: 643c86a056 user: dan tags: threads) | |
10:19 | Fix a problem with OOM handling in the sorter code. (check-in: 59cd5229e2 user: dan tags: threads) | |
01:24 | Remove an unnecessary conditional, replacing it with an assert(). Improvements to comments. (Closed-Leaf check-in: 834bf1c367 user: drh tags: overflow-pgno-cache) | |
2014-03-31
| ||
23:57 | Fix a compiler warning when SQLITE_DIRECT_OVERFLOW_READ is defined. Minor performance enhancement and size reduction. (check-in: 96385dc460 user: drh tags: overflow-pgno-cache) | |
22:03 | Merge in the latest changes and fixes from trunk. (check-in: f6211540c9 user: drh tags: overflow-pgno-cache) | |
20:05 | Remove an unnecessary conditional. (Closed-Leaf check-in: 7473c4dfc1 user: drh tags: query-plan-experiments) | |
19:57 | Add the SQLITE_MAX_WORKER_THREADS compile time option. And the SQLITE_CONFIG_WORKER_THREADS sqlite3_config() switch. (check-in: 2774710df8 user: dan tags: threads) | |