Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
200 descendants and 200 ancestors of f4ac1bf28c4ba395
2014-09-18
| ||
09:59 | Modify an assert() within sqlite3PagerWalFramesize(), a function only ever used by zipvfs, to account for recent zipvfs changes. (check-in: 3bd7c1b2fa user: dan tags: trunk) | |
02:20 | Fix harmless warnings on 32-bit MSVC builds. (check-in: 5192f964b2 user: drh tags: trunk) | |
01:50 | Make sure of the strchrnul() library function on platforms where it is available. (check-in: ef1aa10b7f user: drh tags: trunk) | |
01:29 | 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. (check-in: 1de558bcb1 user: drh tags: trunk) | |
01:21 | Fix compiler warnings and change the nullMem structure initializer into a format that MSVC can understand. (Closed-Leaf check-in: 163bfae858 user: drh tags: micro-optimizations) | |
2014-09-17
| ||
23:37 | Performance improvement and slight size reduction to the comparison operators in the VDBE. (check-in: 14052a7d08 user: drh tags: micro-optimizations) | |
19:05 | Fix an unintialized variable problem in sqlite3ota.c. (check-in: 0126860751 user: dan tags: ota-update) | |
16:41 | In the Mem object, stop requiring that Mem.xDel be NULL when the MEM_Dyn bit is clear. Also reduce the amount of initialization of Mem objects. All for a small size reduction and performance increase. (check-in: fdddb477c8 user: drh tags: micro-optimizations) | |
15:20 | Add tests and fixes for "PRAGMA ota_mode". (check-in: 39df35c4ac user: dan tags: ota-update) | |
14:52 | Improved interface to the Mem object handling. Small size reduction and performance increase. (check-in: 4e43784432 user: drh tags: micro-optimizations) | |
2014-09-16
| ||
21:54 | Continuing cleanup of memory register memory allocation handling. (check-in: 2598aedc5d user: drh tags: micro-optimizations) | |
20:05 | Make sure registers are cleared properly prior to being used to store the result of an OP_Column operator. (check-in: 78fb8838d8 user: drh tags: micro-optimizations) | |
20:02 | Clarify the effects of the pager_ota_mode pragma. Add tests and fixes for the same. (check-in: decaccc37c user: dan tags: ota-update) | |
18:22 | Simplification of the OP_Column logic for the case of rows with overflow. (check-in: f73678038d user: drh tags: micro-optimizations) | |
14:55 | Remove an unused parameter from sqlite3VdbeIdxRowid(). This is cosmetic only as the C-compiler optimizers were already omitting this parameter on amalgamation builds. (check-in: a10a6bba49 user: drh tags: micro-optimizations) | |
14:37 | Reduce the number of arguments to RecordCompare functions from 4 to 3, resulting in a small performance increase. (check-in: 8239c35aed user: drh tags: micro-optimizations) | |
14:16 | Reorder the elements of the Mem object for a small size reduction and performance improvement. Moved into a branch because MSVC is unable to handle named structure initializer on nullMem. (check-in: 0be3019ed7 user: drh tags: micro-optimizations) | |
13:30 | Changes to sqlite3VdbeRecordUnpack() to make it slightly smaller and faster. (check-in: 8fb90da77c user: drh tags: trunk) | |
03:24 | Performance improvement to the sqlite3MemCompare() routine by factoring out sqlite3BlobCompare(). (check-in: 20ed2321b0 user: drh tags: trunk) | |
2014-09-15
| ||
19:34 | Remove the experimental sqlite3_transaction_save() and restore() APIs. (check-in: 48d201cd8b user: dan tags: ota-update) | |
16:57 | Merge latest trunk fixes into this branch. (check-in: 5efafef51d user: dan tags: ota-update) | |
16:53 | Fix tool/showwal.c so that it handles WAL files that contain 64KiB pages. (check-in: 4060efb646 user: dan tags: trunk) | |
16:50 | Avoid attempting to call the xFetch() method of an sqlite3_io_methods object with a version number less than 3. (check-in: dedaa6fb3d user: dan tags: trunk) | |
15:34 | Merge latest trunk changes with this branch. (check-in: 55b8011d5b user: dan tags: ota-update) | |
15:22 | Have sqlite3ota.c use grave accents instead of double-quotes to enclose identifiers in generated SQL. To avoid having the SQL engine substitute a literal string if a column reference cannot be resolved. (check-in: 79f2418429 user: dan tags: ota-update) | |
14:59 | 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. (check-in: 69a6456077 user: drh tags: trunk) | |
14:54 | Ensure the correct collation sequences are used when sorting data in sqlite3ota.c. (check-in: 473a72d700 user: dan tags: ota-update) | |
14:46 | 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. (check-in: 0bdf1a086b user: drh tags: trunk) | |
12:18 | Have the sqlite3_index_writer() VMs check that the final values of records inserted into indexes on rowid tables are integers. (check-in: cca376bff3 user: dan tags: ota-update) | |
11:14 | Adjust comments to show that subquery flattening restriction (10) was removed from the code back in 2005. This is a comment change only. (check-in: 4ff0eb96bc user: drh tags: trunk) | |
10:44 | Add OP_Affinity opcodes to the VMs generated by sqlite3_index_writer(). (check-in: b9b38cb8e2 user: dan tags: ota-update) | |
2014-09-12
| ||
20:30 | Small performance improvement to the dirty list handling in the pager. (check-in: b332a84d51 user: drh tags: trunk) | |
17:41 | Simplify the way the column cache is managed around OP_Move instructions. (check-in: 320556233e user: drh tags: trunk) | |
04:28 | Fix a problem with parser memory allocation on 32-bit systems. (check-in: 2f69a1fa6a user: drh tags: trunk) | |
2014-09-11
| ||
23:34 | Fix an issue with sqlite3_bind_text64() with the SQLITE_UTF16 encoding parameter. Remove some unreachable code from the text64() and blob64() implementation. (check-in: 34292b084e user: drh tags: trunk) | |
18:44 | 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. (check-in: 7e4978c003 user: drh tags: trunk) | |
17:27 | Add the SQLITE_USER_AUTHENTICATION extension to the trunk. This extension is disabled by default. Special compilation procedures are need to enable it. (check-in: 65884d4f81 user: drh tags: trunk) | |
17:14 | Clean up some #includes in the extension API implementation. (Closed-Leaf check-in: b149ef5c63 user: drh tags: user-auth) | |
16:36 | Suppress the potential schema error that occurs when a non-user-auth SQLite library tries to parse the sqlite_user table definition in a user-auth database. (check-in: cda33c1ef3 user: drh tags: user-auth) | |
16:19 | Enhance the sqlite3_user_add() interface to initialize the user authentication logic. Add test cases for the extra argument on the end of the authorizer callback. (check-in: 842c6da8f1 user: drh tags: user-auth) | |
15:25 | All interfaces working and tested. (check-in: 96ea5c0b3c user: drh tags: user-auth) | |
14:56 | Get the sqlite3_user_delete() interface working. (check-in: 974a9c6558 user: drh tags: user-auth) | |
14:40 | Fix the sqlite3_user_change() interface so that it does allow a non-admin user to change their own password. (check-in: 52d440c7e1 user: drh tags: user-auth) | |
14:01 | Move user authentication blocking from sqlite3_prepare() over to the table lock generator, thus allowing SQL statements (like "PRAGMA locking_mode") that do not touch database content to run prior to authentication. (check-in: 70121e7cf8 user: drh tags: user-auth) | |
13:44 | Add support for the extra parameter on the sqlite3_set_authorizer() callback and support for failing an ATTACH with an authentication-required database using bad credentials. The extension is now feature complete, but much testing and bug-fixing remains. (check-in: 596e728b0e user: drh tags: user-auth) | |
00:27 | Reorder parameters on the sqlite3_user_*() interfaces for consistency. Add the first TCL test cases. (check-in: 2f6d8f32ee user: drh tags: user-auth) | |
2014-09-10
| ||
22:46 | Complete the implementation of the various APIs. Fix several problems. This is another incremental check-in that does not completely work. (check-in: 4eaaa7fa87 user: drh tags: user-auth) | |
19:01 | Add the ".user" shell command and implement the sqlite3_user_add() routine. Incremental check-in. The code compiles but does not work. (check-in: a0455f9deb user: drh tags: user-auth) | |
17:34 | Further ideas on user authentication. Not yet working code. (check-in: c8171ecd0d user: drh tags: user-auth) | |
2014-09-09
| ||
20:30 | Change the name of the _texte64() interfaces to just _test64(), without the "e". (Closed-Leaf check-in: 6ab76c5fed user: drh tags: 64-bit-lengths) | |
18:41 | Add new interfaces to the loadable extension mechanism. (check-in: 18d80cbc59 user: drh tags: 64-bit-lengths) | |
17:27 | Add new APIs that take 64-bit length parameters: sqlite3_malloc64(), sqlite3_realloc64(), sqlite3_bind_blob64(), sqlite3_bind_texte64(), sqlite3_result_blob64(), and sqlite3_result_texte64(). Internal memory allocation routines also now use 64-bit unsigned length parameters for safety. Also add the sqlite3_msize() interface. Fix the sqlite3_get_table() to use sqlite3_realloc64() to avoid a integer overflow problem. (check-in: 94954850cf user: drh tags: 64-bit-lengths) | |
14:47 | Non-working preliminary implementation attempts on user authentication. (check-in: 8440f093ba user: drh tags: user-auth) | |
2014-09-08
| ||
17:50 | Add support for update statements to sqlite3ota.c. (check-in: e109b27e4d user: dan tags: ota-update) | |
15:04 | Merge support for large files on Android from trunk. (check-in: c2885c6bb2 user: drh tags: sessions) | |
2014-09-06
| ||
20:19 | Add support for delete operations to the ota extension. (check-in: f988234ba5 user: dan tags: ota-update) | |
17:06 | Fixes to os_unix.c to support database (and other) files larger than 2GiB on Android. (check-in: ad7063aa1a user: dan tags: trunk) | |
16:52 | Merge latest trunk changes with this branch. (Closed-Leaf check-in: 9dca7ce557 user: dan tags: android-large-filles) | |
16:49 | Fixes to os_unix.c to support database (and other) files larger than 2GiB. (check-in: e7fae33c07 user: dan tags: android-large-filles) | |
16:39 | Fix typos in comments. No code changes. (check-in: e62aab5e92 user: peter.d.reid tags: trunk) | |
03:38 | Do not record a page-size change if the attempt to change the page size failed due to an OOM error. (check-in: 4d4fb197dc user: drh tags: trunk) | |
03:16 | 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. (check-in: 27e3ca3e0f user: drh tags: trunk) | |
02:00 | Fix a couple of typos in comments. No changes to code. (check-in: a758465e3c user: mistachkin tags: trunk) | |
01:35 | 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. (check-in: 73954f93c4 user: drh tags: trunk) | |
2014-09-05
| ||
19:52 | Switch back to using a single database connection in sqlite3ota.c. (check-in: 3c2f4a0781 user: dan tags: ota-update) | |
19:31 | Reorganize the code in sqlite3ota.c in preparation for adding support for update and delete operations. (check-in: 98387f0569 user: dan tags: ota-update) | |
05:58 | Fix harmless compiler warning. (check-in: 7331190677 user: mistachkin tags: trunk) | |
2014-09-04
| ||
19:05 | Avoid ever running a checkpoint in ota mode. (check-in: 9ae4444725 user: dan tags: ota-update) | |
18:05 | Fix showwal.c so that it works with 64KiB pages. (check-in: fc4f7c1152 user: dan tags: ota-update) | |
11:03 | Avoid calling sqlite3OsFetch() on a file-handle for which the xFetch method is NULL. (check-in: 071f7f2dec user: dan tags: ota-update) | |
2014-09-03
| ||
19:30 | Split part of "PRAGMA ota_mode" off into "PRAGMA pager_ota_mode". This allows some specialized custom VFS implementations to intercept and implement the expected pager-related effects of this pragma. (check-in: 209f672e58 user: dan tags: ota-update) | |
08:25 | Add a command line program that uses the extension. This serves as example code and is also useful for performance testing. (check-in: ffa1524ef2 user: dan tags: ota-update) | |
2014-09-02
| ||
19:59 | Add an experimental extension for applying bulk updates to databases. (check-in: 2954ab5010 user: dan tags: ota-update) | |
15:57 | Merge the latest trunk changes into the apple-osx branch. (check-in: 696dc935f7 user: drh tags: apple-osx) | |
15:49 | Merge the latest trunk changes, including the multi-threaded sorter, into the sessions branch. (check-in: d4cce2c71e user: drh tags: sessions) | |
2014-09-01
| ||
23:06 | Update comments in the ANALYZE command that describe how the Stat4Accum objecct is passed around within the VDBE. No changes to functional code. (check-in: 9779c7a9eb user: drh tags: trunk) | |
22:34 | Avoid a confusing (though correct) argument to the sqlite3_result_blob() function in the implementation of ANALYZE. (check-in: 4cae93f8ae user: drh tags: trunk) | |
19:29 | For sqlite3_win32_is_nt(), assume WinRT is NT-based and revise #ifdef ordering to prefer the ANSI version of GetVersionEx, when available. (check-in: be0a037244 user: mistachkin tags: trunk) | |
18:21 | Tweak the documentation for SQLITE_LIMIT_WORKER_THREADS. No changes to executable code. (check-in: 672e7387b1 user: drh tags: trunk) | |
17:36 | 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. (check-in: b1c0f0bc1b user: drh tags: trunk) | |
2014-08-29
| ||
19:06 | Disable worker threads when SQLITE_THREADSAFE=0. Set the default compile-time maximum number of worker threads to 8 and honor the SQLITE_DEFAULT_WORKER_THREADS compile-time constant (which defaults to 0). (Closed-Leaf check-in: 33fa041049 user: drh tags: threads) | |
18:06 | Fix the speedtest1.c test program to set the worker thread count using the threads pragma. (check-in: 2ab4b5adc6 user: drh tags: threads) | |
16:20 | Add SQLITE_LIMIT_WORKER_THREADS for controlling the maximum number of worker threads. (check-in: 1b598c68f3 user: drh tags: threads) | |
14:40 | Merge recent performance enhancements from trunk onto the threads branch. (check-in: 35c44a3c73 user: drh tags: threads) | |
2014-08-25
| ||
23:44 | Remove the SQLITE_CONFIG_WORKER_THREADS configuration parameter. The number of worker threads in the sorter is now determined only by the PRAGMA threads=N setting. (check-in: e3305d4b4e user: drh tags: threads) | |
22:43 | Merge the CAST operator enhancements from trunk. (check-in: 6c8f86e4e0 user: drh tags: threads) | |
15:13 | Query or change the maximum number of worker threads allowed on each database connection separately using the "PRAGMA threads" command. (check-in: 29c5e8a7c9 user: drh tags: threads) | |
13:27 | Merge the recent performance enhancements implemented on trunk into the threads branch. (check-in: dfdc900f5d user: drh tags: threads) | |
2014-08-15
| ||
15:46 | Merge the 3.8.6 release into the threads branch. (check-in: 05807c4122 user: drh tags: threads) | |
2014-08-14
| ||
14:02 | Merge the pre-3.8.6 changes into the threads branch. (check-in: a608fd1d52 user: drh tags: threads) | |
2014-08-06
| ||
02:03 | Merge all recent changes from trunk. (check-in: a353a8515f user: drh tags: threads) | |
2014-07-30
| ||
18:47 | Add a new sqlite3FaultSim() call to vdbePmaReaderSeek() to facilitate tests of error handling in the sorter. (check-in: 655d8cfc75 user: drh tags: threads) | |
17:21 | Mark some invariants in the vdbesort.c logic when SQLITE_MAX_WORKER_THREADS==0. (check-in: 721cd96585 user: drh tags: threads) | |
14:44 | Merge recent trunk changes, and especially the fix for the CREATE UNIQUE INDEX problem of ticket [9a6daf340df99ba9]. (check-in: 5b50a8380b user: drh tags: threads) | |
2014-07-29
| ||
21:44 | Disable an assert that is sometimes generated spuriously. (check-in: bd9ee0ea69 user: mistachkin tags: threads) | |
19:00 | Update return value checking to conform to the beginthreadex() specs. (check-in: 3144a16f91 user: mistachkin tags: threads) | |
18:53 | Add a couple more assert statements. (check-in: 4e816db235 user: mistachkin tags: threads) | |
18:46 | Fix unreachable branches in the threads.c module. (check-in: 3175e366bb user: drh tags: threads) | |
17:22 | Fix a harmless compiler warning. (check-in: 216d21d0e6 user: drh tags: threads) | |
16:37 | Make the Win32 thread handles are available after the threads exit. (check-in: 565c5af7a7 user: mistachkin tags: threads) | |
15:18 | Fix the threads build on Windows when SQLITE_MAX_WORKER_THREADS is greater than 0. (check-in: f37db3a03d user: drh tags: threads) | |
14:16 | Merge the R-Tree fix and the new SQLITE_TESTCTRL_ISINIT test control from trunk. (check-in: b2f7eb3cc2 user: drh tags: threads) | |
00:42 | Add some asserts to the Win32 mutex subsystem. (check-in: e8f2dc5fad user: mistachkin tags: threads) | |
00:23 | Fix the build on windows. (check-in: 2773a5f987 user: drh tags: threads) | |
2014-07-28
| ||
20:16 | Remove an unnecessary parameter from vdbeMergeEngineStep(). Rename a couple other routines to be more descriptive of what they do. (check-in: f2407a40f3 user: drh tags: threads) | |
19:58 | Rename vdbeIncrMergerInit() to vdbeMergeEngineInit() - a much more accurate name. (check-in: 5b084a2dd5 user: drh tags: threads) | |
18:57 | In vdbesort.c, rename vdbeSorterDoCompare() to vdbeMergeEngineCompare() and move it closer to the one place where it is called. Other minor comment changes. (check-in: 09d50d9f0f user: drh tags: threads) | |
17:18 | In vdbesort.c, rename all pointers to sqlite3_file objects "pFd" and use the name "pFile" only for pointers to SortFile objects. Other comment enhancements. (check-in: 518290a7fc user: drh tags: threads) | |
15:01 | Merge recent trunk changes into the threads branch. (check-in: 163c247bd8 user: drh tags: threads) | |
14:54 | Improvements to comments in the multi-threaded sorter. Also include a function name change for clarity. And add a test to help show that the MergeEngine object is only used by a single thread. (check-in: 9af50a878f user: drh tags: threads) | |
2014-07-24
| ||
16:54 | Merge all recent trunk changes into the threads branch. (check-in: 770685892c user: drh tags: threads) | |
2014-06-30
| ||
20:25 | Merge the latest trunk changes into the threads branch. (check-in: ae23a65eb1 user: drh tags: threads) | |
2014-06-18
| ||
15:18 | Merge in all recent changes from trunk, and especially the automatic index enhancements. (check-in: 0e1b73496f user: drh tags: threads) | |
2014-06-05
| ||
13:22 | Bring the threads branch up-to-date with the 3.8.5 release. (check-in: e4b01676d7 user: drh tags: threads) | |
2014-05-29
| ||
20:24 | Merge changes from the trunk into the threads branch. (check-in: 416cb09126 user: drh tags: threads) | |
2014-05-26
| ||
20:15 | Merge recent trunk changes into the threads branch. (check-in: 8215202759 user: drh tags: threads) | |
2014-05-20
| ||
19:11 | Improvements to the testability of the threads.c module. (check-in: 386e088868 user: drh tags: threads) | |
11:03 | In vdbesort.c, change the names of PmaReader variables "pIter" to "pReadr". Other related comment changes. The generated object code should be the same. (check-in: 99efb235a0 user: drh tags: threads) | |
2014-05-19
| ||
23:17 | Merge recent changes from trunk. (check-in: 6eefdad946 user: drh tags: threads) | |
2014-05-16
| ||
20:24 | Rearrange some conditionals and add #if statements to make the code more testable. (check-in: 17afd77057 user: drh tags: threads) | |
17:31 | Add a pair of sqlite3FaultSim(100) calls to vdbesort.c to facilitate testing of obscure and hard to reach error conditions. (check-in: cceac14fd8 user: drh tags: threads) | |
14:27 | Merge all recent changes from trunk, and especially the new sqlite3FaultSim() interface. (check-in: 43fcbd9116 user: drh tags: threads) | |
12:18 | Use #ifdef logic to avoid an always-true branch when SQLITE_MAX_WORKER_THREADS=0 (check-in: 88cfe6d7de user: drh tags: threads) | |
2014-05-15
| ||
16:56 | Use #ifdef to omit code that is not used when SQLITE_MAX_WORKER_THREADS is zero. (check-in: 2e8d287d4f user: drh tags: threads) | |
2014-05-12
| ||
15:30 | In the sorter, only use large memory allocations if scratch memory has not been configured. Add #ifdefs to disable unused code when SQLITE_MAX_WORKER_THREADS is zero. Other sorter changes in support of testability. (check-in: d7e2b0d9cb user: drh tags: threads) | |
2014-05-09
| ||
17:17 | Merge recent trunk changes into the orderby-planning branch. (Leaf check-in: 8d8609d6c6 user: drh tags: orderby-planning) | |
15:00 | Merge the latest trunk changes into the threads branch. (check-in: 9ac8f1e711 user: dan tags: threads) | |
11:15 | Add new static mutex SQLITE_MUTEX_STATIC_APP3. (check-in: ee0ab09c80 user: dan tags: threads) | |
00:36 | Fix several harmless compiler warnings. (Closed-Leaf check-in: 360c0fd1cf user: mistachkin tags: winPreCache) | |
2014-05-08
| ||
22:15 | Fix typos in logging code. (check-in: dc7f84dfcc user: mistachkin tags: winPreCache) | |
22:08 | Fix a memory leak of the temporary read buffer. (check-in: 37e60d211f user: mistachkin tags: winPreCache) | |
22:05 | Update comments and only include the thread routine when required. (check-in: a60c545f25 user: mistachkin tags: winPreCache) | |
22:01 | Experimental changes to pre-cache a database file prior to it being fully opened. (check-in: 38cbcedbb6 user: mistachkin tags: winPreCache) | |
22:01 | Fix static variable declaration issue on Windows. (check-in: a41d296913 user: mistachkin tags: threads) | |
2014-05-06
| ||
16:21 | Add a little extra variety to the tests in sort4.test. (check-in: 7de6aee6a5 user: dan tags: threads) | |
15:38 | Re-implement the core of the multi-threaded sorter tests in sort4.test using C. Run each test in sort4.test ten times, or repeat all tests for 300 seconds as part of the "multithread" permutation test. (check-in: 208b2b04d4 user: dan tags: threads) | |
2014-05-05
| ||
20:03 | Add test file sort4.test, containing brute force tests for the multi-theaded sorter. (check-in: 9cc364c42c user: dan tags: threads) | |
15:58 | Fix a race condition in the sorter code. (check-in: 2d2edfe58d user: dan tags: threads) | |
09:08 | Add tests so that the "coverage-sorter" test permutation covers all branches in vdbesort.c. Fix a few minor problems in the same file. (check-in: bde28b702d user: dan tags: threads) | |
2014-05-03
| ||
20:43 | Add an extra fault-injection test to sortfault.test. Remove an unreachable branch from vdbesort.c. (check-in: a33a366ba8 user: dan tags: threads) | |
19:33 | Fix a race condition in the sorter. (check-in: 32ccf3ae18 user: dan tags: threads) | |
14:28 | Fix a problem in the sorter causing it to return spurious SQLITE_NOMEM errors when configured to use memsys3 or memsys5. (check-in: 3a66c4e1bf user: dan tags: threads) | |
13:53 | Get SQLITE_MUTEX_STATIC_APP1 and _APP2 working for the debugMutex implementation. (check-in: f49ba1c926 user: drh tags: threads) | |
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) | |
2014-04-24
| ||
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-18
| ||
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) | |
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: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-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-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-07
| ||
18:44 | Experimental multi-threaded sorting changes to begin merging PMAs before SorterRewind() is called. (Closed-Leaf check-in: cbfc0f6d49 user: dan tags: abandoned) | |
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:37 | Merge the latest trunk changes into the threads branch. (check-in: 39ac79cffe user: drh tags: threads) | |
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:25 | Fix an integer overflow problem in the sorter. (check-in: 9d3351b8d7 user: dan tags: threads) | |
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) | |
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) | |
2014-03-31
| ||
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) | |
2014-03-29
| ||
19:48 | Changes to make the multi-threaded sorter sort stably. (Closed-Leaf check-in: 83a105c864 user: dan tags: threads-closed) | |
10:01 | Fix a broken assert() in vdbesort.c. (check-in: 18d1b402f2 user: dan tags: threads) | |
09:34 | Fix a problem in vdbesort.c causing spurious SQLITE_NOMEM errors when using memsys3 or memsys5. (check-in: a683c05f62 user: dan tags: threads) | |
06:27 | Add the optimization to avoid some unnecessary calls to sqlite3VdbeRecordUnpack() added to the trunk by [707ea170b3]. (check-in: fc4d04e6b0 user: dan tags: threads) | |
2014-03-28
| ||
19:47 | Fix a compiler warning and an after-OOM memory leak. (check-in: 58f7ca2930 user: drh tags: orderby-planning) | |
19:18 | Merge latest changes from orderby-planning branch. (check-in: 4c7fb54234 user: dan tags: threads) | |
18:35 | Merge the latest changes from trunk. (check-in: 3047a25f1c user: drh tags: orderby-planning) | |
2014-03-27
| ||
19:25 | 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. (check-in: 81987c8ceb user: dan tags: orderby-planning) | |
17:23 | 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. (check-in: f4ac1bf28c user: dan tags: orderby-planning) | |
00:09 | Merge the latest trunk changes and the fix for the crash on a corrupt database. (check-in: 0b35346c32 user: drh tags: orderby-planning) | |
2014-03-26
| ||
15:14 | Add an extra test case for the potential buffer overread patched by [28ddecff04]. (check-in: f585f5d7a0 user: dan tags: trunk) | |
15:05 | Add a test case to verify that the previous change avoids excess buffer overread in sqlite3VdbeRecordCompare(). (check-in: 2b28e8d582 user: drh tags: trunk) | |
14:51 | Earlier detection of corruption in sqlite3VdbeRecordCompare() in order to avoid a potential buffer overread. (check-in: 28ddecff04 user: drh tags: trunk) | |
12:02 | Add an assert() and a comment to clarify the operation of the vdbeRecordCompareInt() routine. (check-in: 851abdb8fd user: drh tags: trunk) | |
2014-03-25
| ||
20:28 | 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. (check-in: 7922809ee0 user: drh tags: trunk) | |
18:29 | Merge enhancements and fixes from trunk. (check-in: e005f2d6dd user: drh tags: orderby-planning) | |
17:45 | Add another performance test case to speedtest1. This case is another ORDER BY test but this time without LIMIT. (check-in: 9ab7ffd592 user: drh tags: trunk) | |
17:07 | Fix a problem in the code added by [707ea170b3] causing vdbesort.c to sort unstably. (check-in: d3e640afe6 user: dan tags: orderby-planning) | |
15:04 | Remove the sequence values from sorter records used by ORDER BY as well. (check-in: c3ae369783 user: dan tags: orderby-planning) | |
14:54 | Add an ORDER BY test case to speedtest1.c (check-in: 588122641e user: drh tags: trunk) | |
11:00 | 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. (check-in: e6798871ce user: drh tags: trunk) | |
2014-03-24
| ||
20:19 | Omit the sequence value from sorter records used by GROUP BY queries that cannot use an index. (check-in: 3f90abddc3 user: dan tags: orderby-planning) | |
18:08 | Avoid unnecessary moving of content between registers during an ORDER BY. (check-in: 4f472accf0 user: drh tags: orderby-planning) | |
16:30 | Remove unused variables Parse.nColCache and Parse.iColCache. (check-in: 4d7551ce46 user: dan tags: trunk) | |
15:00 | Fix arithmetic operators so that they do not change the affinity of their input operands. Ticket [a8a0d2996a]. (check-in: 221f8f9447 user: drh tags: trunk) | |
11:23 | 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. (check-in: db7d62c8d5 user: dan tags: trunk) | |
09:34 | Remove an unnecessary temporary register allocation. (check-in: 5d506743f5 user: dan tags: orderby-planning) | |
02:20 | Remove a pointless OP_Once operation in ORDER BY clauses with LIMIT. (check-in: e6c59d2331 user: drh tags: orderby-planning) | |
01:43 | Further enhancements to generated VDBE code for ORDER BY. (check-in: e7188fad87 user: drh tags: orderby-planning) | |
2014-03-23
| ||
18:47 | merge fixes from trunk (check-in: faf7f9caf5 user: drh tags: orderby-planning) | |
17:45 | Use only a single OP_MakeRecord instead of two when constructing entries to go onto a sorter. (check-in: d696cdedac user: drh tags: orderby-planning) | |
16:29 | Avoid a possible use of an uninitialized variable following an I/O or OOM error. (check-in: 641408a139 user: drh tags: trunk) | |
2014-03-22
| ||
02:19 | 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. (check-in: 9b2838f23e user: drh tags: trunk) | |
01:52 | Increase the version number to 3.8.5. (check-in: 9760879d08 user: drh tags: trunk) | |
00:27 | 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. (check-in: c36f74611c user: drh tags: trunk) | |
2014-03-21
| ||
20:58 | 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. (check-in: fa06a6fed9 user: drh tags: trunk) | |
19:56 | 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. (check-in: 45d8cc678d user: drh tags: trunk) | |
19:27 | Avoid leaking memory in an obscure case where the flattener adds an ORDER BY clause to the recursive part of a recursive query. (check-in: 1f413aca00 user: dan tags: trunk) | |
18:45 | Merge the OFFSET-on-query-without-FROM fix from trunk. (check-in: 71e9ae72c2 user: drh tags: orderby-planning) | |
18:16 | Fix the OFFSET clause so that it works correctly on queries that lack a FROM clause. Ticket [07d6a0453d4ed8]. (check-in: 179ef81648 user: drh tags: trunk) | |
15:24 | New test case for block-sorting. (check-in: e70cfa28aa user: drh tags: orderby-planning) | |
2014-03-20
| ||
20:56 | Merge trunk fixes for "x IN (?)" handling. (check-in: eca35871c3 user: drh tags: orderby-planning) | |
19:04 | 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. (check-in: d5a1530bdc user: drh tags: trunk) | |
18:45 | Fix the EXPLAIN indenter in the command-line shell to correctly handle NextIfOpen and PrevIfOpen opcodes. (check-in: 01944c53f5 user: drh tags: trunk) | |
17:03 | 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. (check-in: 2ea4a9f75f user: drh tags: trunk) | |
15:14 | Fix harmless compiler warnings. (check-in: b1435f26b0 user: drh tags: trunk) | |
14:56 | 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] (check-in: 2ff3b25f40 user: drh tags: trunk) | |
13:26 | 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]. (check-in: e68b427afb user: drh tags: trunk) | |
12:17 | Fix an unnecessarily obtuse use of a bitmask flag. (check-in: ca31408131 user: drh tags: trunk) | |
09:42 | Add a test to ensure os_unix.c works with 64KiB OS pages. (Closed-Leaf check-in: e3d2be3ba4 user: dan tags: shm-mapping-fix) | |
08:59 | 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. (check-in: 6f3a5c24d2 user: dan tags: shm-mapping-fix) | |
2014-03-19
| ||
23:42 | Merge the vdbesort.c optimization from trunk. (check-in: e4bfffb988 user: drh tags: orderby-planning) | |
23:24 | 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. (check-in: 01afbf97c0 user: drh tags: orderby-planning) | |
20:01 | Avoid some unnecessary calls to sqlite3VdbeRecordUnpack() that were being made when merging data from two or more temp files together in vdbesort.c (check-in: 707ea170b3 user: dan tags: trunk) | |
17:41 | Make it possible for block-sort to use the OP_SorterOpen sorter in addition to a generic OP_OpenEphemeral. (check-in: 7ce2daafd3 user: drh tags: orderby-planning) | |
16:56 | 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. (check-in: 62f3a22050 user: drh tags: orderby-planning) | |
15:17 | Avoid reusing temporary registers in co-routines when doing block-sorting. (check-in: 463d921b51 user: drh tags: orderby-planning) | |
14:30 | Make sure the where.c query planner never reports that the number of ORDER BY terms that are satisfied by indices is negative. (check-in: b186d8d15a user: drh tags: orderby-planning) | |
14:10 | First attempt at getting block-sort to work. This is an incremental check-in. There are many problems still to be worked out. (check-in: 59742dd4c5 user: drh tags: orderby-planning) | |
2014-03-18
| ||
20:33 | 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. (check-in: e258df236b user: drh tags: orderby-planning) | |
18:59 | 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. (check-in: 59d49b7fc4 user: drh tags: orderby-planning) | |
15:30 | Experiments with the optimization of ORDER BY and GROUP BY clauses. (check-in: b150902579 user: drh tags: orderby-planning) | |
2014-03-17
| ||
15:06 | Clean up some obsolete "register" declarations in printf.c. (check-in: ecd9d3f945 user: drh tags: trunk) | |
14:24 | Performance enhancements and size reduction for sqlite3VXPrintf() (check-in: eb071eb58c user: drh tags: trunk) | |
2014-03-14
| ||
11:46 | Fix a harmless compiler warning that crops up with SQLITE_MAX_MMAP_SIZE=0. (check-in: 1277932b7e user: drh tags: trunk) | |
2014-03-12
| ||
19:38 | Fix an obscure bug causing sqlite3_close() to fail if there are virtual tables on the disconnect list when it is called. (check-in: 6504aa47a8 user: dan tags: trunk) | |
19:20 | Changes to FTS to ensure that it does not access the database from within the xConnect method. (check-in: c67a52c356 user: dan tags: trunk) | |
12:44 | Prevent the rtree module from reading sqlite_stat1 data from the wrong database. (check-in: 7ce03c1b55 user: dan tags: trunk) | |
2014-03-11
| ||
15:27 | Version 3.8.4.1 (check-in: 018d317b12 user: drh tags: trunk, release, version-3.8.4.1) | |
15:25 | Update version number to 3.8.4.1 (check-in: 33f5694fa4 user: drh tags: trunk) | |
09:19 | Add a test to see what happens if an rtree constructor encounters an SQLITE_BUSY error. No changes to code. (check-in: 5527e23636 user: dan tags: trunk) | |
2014-03-10
| ||
20:12 | 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. (check-in: 0769eebd02 user: drh tags: trunk) | |
18:03 | 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. (check-in: 0a5318bc27 user: drh tags: trunk) | |
12:20 | Version 3.8.4 (check-in: 530a1ee7dc user: drh tags: trunk, release, version-3.8.4) | |
2014-03-08
| ||
19:07 | Fix a bug causing "SELECT char()" to return SQLITE_NOMEM. (check-in: ba39df9d4f user: dan tags: trunk) | |
2014-03-07
| ||
14:57 | Improved comment on the pager.c PERSIST rollback journal delete logic inside of hasHotJournal(). No changes to code. (check-in: e5b17a9d07 user: drh tags: trunk) | |
03:31 | Revise change from the previous check-in to clarify the situation when handling open journal files, regardless of journal mode. (check-in: 1c318ef3b7 user: mistachkin tags: trunk) | |
02:29 | 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. (check-in: fdc651e2ec user: mistachkin tags: trunk) | |
2014-03-06
| ||
18:16 | Do not run corruptH.test in mmap mode. (check-in: c0d54b4e41 user: dan tags: trunk) | |
13:38 | 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. (check-in: 0a4200f95c user: drh tags: trunk) | |
12:36 | Remove a branch that is never taken from where.c. (check-in: 4a4997221f user: dan tags: trunk) | |
02:15 | Cosmetic change to the shell in-memory database warning to skip coloring the trailing period. (check-in: c87d8e07ec user: mistachkin tags: trunk) | |
01:56 | Fix some incorrect comments and typos in comments. Add testcase() macros to some of the new record comparison code. (check-in: b83cfe899d user: drh tags: trunk) | |
00:30 | Better loadable extension handling in the Win32 VFS when compiled for Cygwin. (check-in: 29b0a4f158 user: mistachkin tags: trunk) | |
00:28 | Better support for MinGW 4.x. (check-in: 170e058520 user: mistachkin tags: trunk) | |
2014-03-05
| ||
19:36 | Always include the ctype.h header in the spellfix.c extension. (check-in: bfd75f471a user: drh tags: trunk) | |
19:13 | Avoid running a couple of test cases that use realloc() extensively if SQLITE_MEMDEBUG is defined. (check-in: e406d4bb78 user: dan tags: trunk) | |
19:04 | Fix a harmless compiler warning on MSVC. (check-in: 0723effc9c user: drh tags: trunk) | |
17:29 | Add SQLITE_OMIT_CTE to the list of compile options that might be returned by "PRAGMA compile_options". (check-in: f33f2b3f92 user: dan tags: trunk) | |
16:15 | Add tests to join.test to verify that it is not possible to use more than 64 tables in a join. (check-in: ef1a998625 user: dan tags: trunk) | |
15:52 | Count the number of elements in a SrcList object using an "int" rather than a "u8", to avoid overflows and to work around an issue in the C compiler on AIX. (check-in: eee2a13f2c user: drh tags: trunk) | |
15:04 | Add a test case for the problem fixed by [1d134ba2ed]. (check-in: d4fbc05df9 user: dan tags: trunk) | |
14:40 | When converting a result type from TEXT to BLOB using the sqlite3_value_blob() interface, continue to report SQLITE_TEXT as the true type from sqlite3_value_text() as long as that text is still valid. The maintains legacy behavior from before the noMemType change. (check-in: 1d134ba2ed user: drh tags: trunk) | |
12:47 | Separate the column NULL value constant into a separate routine for greater commonality with the sessions branch. (check-in: 12cbebb997 user: drh tags: trunk) | |
11:48 | Remove the redundant memType field from struct Mem. (check-in: 9e85285789 user: dan tags: trunk) | |
11:22 | Do not run corruptI.test with the mmap permutation. (check-in: 378b290da8 user: dan tags: trunk) | |
01:29 | Experimental simplification of memory flags/type handling. (Closed-Leaf check-in: bac2820e13 user: mistachkin tags: noMemType) | |
2014-03-04
| ||
21:19 | Avoid indexing off the front end of an array when creating a view with two or more blank column names in the SELECT statement that defines the view. (check-in: 554501f158 user: drh tags: trunk) | |
21:00 | Fix a problem with "DEFAULT (-(-9223372036854775808))" clauses in ALTER TABLE ... ADD COLUMN commands. (check-in: e072cb3ee2 user: dan tags: trunk) | |
18:06 | Fix a potential memory use-after-free problem following an OOM error. (check-in: 767ccb1fa1 user: drh tags: trunk) | |
16:21 | Fix an assert() so that it takes OOM errors into account. (check-in: 53f6ec792f user: drh tags: trunk) | |
16:05 | Ensure that BtreeMovetoUnpacked() does not try to invoke xRecordCompare when it is set to NULL. (check-in: 2879234b7c user: dan tags: trunk) | |
13:18 | Improve clarity of presentation in the sqlite3VdbeMemFromBtree() routine. (check-in: 9830c343bc user: drh tags: trunk) | |
12:07 | Fix comment in test. (check-in: 1e57f67b20 user: mistachkin tags: trunk) | |
11:54 | Fix minor typos in the new test file. (check-in: 3cbb9b1b4f user: mistachkin tags: trunk) | |
11:35 | Add tests to verify the fix for bug [4ef7e3cfca]. (check-in: 62410bb8a7 user: dan tags: trunk) | |
11:29 | Fix name resolution problem in sub-selects within triggers, ticket [4ef7e3cfca]. (check-in: 5bcd0b1ca5 user: mistachkin tags: trunk) | |
11:16 | Fix harmless compiler warning. (check-in: 8d18a803bd user: mistachkin tags: trunk) | |
04:12 | Refactor the sqlite3VdbeRecordCompare() routine used to compare btree records. Create fast-track special case routines to handle the common cases more quickly. This gives a significant performance boost. (check-in: 3325ad5bdc user: drh tags: trunk) | |
04:04 | Fix more instances of assuming 'char' is signed. And, make sure to never shift a signed integer. (Closed-Leaf check-in: f10130ede4 user: drh tags: broken-on-arm) | |
00:15 | Do not assume that 'char' is signed. Make it explicit. (check-in: 979da752e6 user: drh tags: broken-on-arm) | |
2014-03-03
| ||
21:59 | Refactor the sqlite3VdbeRecordCompare() routine used to compare btree records. Create a couple of fast-track routines to handle the common cases of a string with BINARY collation or integer values as the left-most column. This gives a significant performance boost in common use. Oops: This build does not work on the Beaglebone where "char" defaults to unsigned. (check-in: aec5473a75 user: drh tags: broken-on-arm) | |
21:46 | Fix a couple of harmless compiler warnings. (Closed-Leaf check-in: fcf480cc63 user: drh tags: experimental) | |
20:48 | Avoid a buffer overread in vdbeCompareRecordInt() that might occur if the database is corrupt. (check-in: 7c0b4381f0 user: dan tags: experimental) | |
19:29 | Fix a typo in a comment. No changes to code. (check-in: 1f4991ab16 user: drh tags: experimental) | |
18:25 | Fix compiler warnings. (check-in: ba8993727e user: drh tags: experimental) | |
17:48 | Merge latest trunk changes. (check-in: 1d60356462 user: dan tags: experimental) | |
17:36 | Change an OP_SCopy into an OP_Copy in a case where the destination might be used after the source has changed. (check-in: c0fa0c0e2d user: drh tags: trunk) | |
16:48 | Change the "explain_i" tcl test command so that xterm color codes are only added if the output is actually a terminal. (check-in: 559835e54e user: dan tags: trunk) | |
15:13 | Fix a harmless compiler warning. (check-in: d7f6837e69 user: drh tags: experimental) | |
14:45 | Merge latest trunk changes. (check-in: e00ed717fb user: dan tags: experimental) | |
14:20 | Fix a segfault that can occur following an OOM error. (check-in: 7fdd378d54 user: dan tags: trunk) | |
00:12 | Change the MEM_Dyn flag so that it means that Mem.xDel exists and must be used to free the string or blob. Add tighter invariant checks on Mem. (check-in: e3f6c61e03 user: drh tags: trunk) | |
2014-03-01
| ||
19:45 | Merge trunk changes. (check-in: 9c1747b5de user: dan tags: experimental) | |
19:44 | Remove the vdbeRecordCompareLargeHeader function. Fix some other details. (check-in: 3861e85310 user: dan tags: experimental) | |
18:13 | Change the MEM_Dyn flag so that it means that Mem.xDel exists and must be used to free the string or blob. Add tighter invariant checks on Mem. (Closed-Leaf check-in: 44e1c33767 user: drh tags: enhanced-mem-check) | |
16:24 | Factor the Mem invariant checker into a separate procedure (rather than a macro) so that it can be more easily extended. (check-in: 354699d50e user: drh tags: enhanced-mem-check) | |
14:45 | Add extra assert() statements trying to catch a Mem object in an inconsistent state. (check-in: 4aeb3ae435 user: drh tags: enhanced-mem-check) | |
2014-02-28
| ||
20:47 | In the command-line shell add the (undocumented and unsupported) ".eqp" command and -eqp command-line option, to cause EXPLAIN QUERY PLAN to be run on each SQL statement as it is evaluated. Intended use is for analysis of the query planner. (check-in: e6ecf73376 user: drh tags: trunk) | |
19:37 | Provide an #ifdef in shell.c to work around issues when cross-compiling from Ubuntu to windows. (check-in: 0a3579d9b9 user: drh tags: trunk) | |
18:39 | Update some test cases that deal with corrupt databases. (check-in: 3a09f5605a user: dan tags: experimental) | |
09:48 | Minor tweak to vdbeRecordCompareInt(). (check-in: 284bde0ee2 user: dan tags: experimental) | |
2014-02-27
| ||
20:52 | Merge in latest trunk changes. (check-in: 8f30b09518 user: dan tags: experimental) | |
20:44 | Further changes to sqlite3VdbeRecordCompare(). (check-in: 5708937400 user: dan tags: experimental) | |
15:11 | A better way of handling the USE_SYSTEM_SQLITE #define in shell.c. (check-in: 51ce713c6e user: drh tags: trunk) | |
15:04 | Add #defines to the command-line shell source code (shell.c) so that it can be imported directly into other projects (ex: Fossil) and used without editing. (check-in: a669040023 user: drh tags: trunk) | |
2014-02-26
| ||
21:35 | More efficient removal of duplicates in recursive queries using the UNION compound operator. (check-in: 06c2db875e user: drh tags: trunk) | |
13:53 | In the command-line shell for CSV import, if the lines are \r\n terminated and the last field is blank, make sure an empty string and not a "\r" string is imported. (check-in: 9c2e7612cd user: drh tags: trunk) | |
02:26 | Improved handling of constants and especially constant functions in the ORDER BY clause of a query. Do not optimize out "ORDER BY random()". Fix for ticket [65bdeb9739605cc2296]. (check-in: dca1945aeb user: drh tags: trunk) | |
2014-02-25
| ||
21:55 | Do not allow temporary registers to be in use across an OP_Yield within a co-routine. Fix for ticket [8c63ff0eca81a9132d8]. (check-in: 97a8c9733c user: drh tags: trunk) | |
21:01 | Attempt to speed up sqlite3VdbeRecordCompare() by various means. This code is in an interim state. (check-in: 85206e0bba user: dan tags: experimental) | |
18:12 | Also adjust the order of files in the amalgamation to ensure that _FILE_OFFSET_BITS is defined before any #include, for QNX. (check-in: 23001a85cd user: drh tags: trunk) | |
14:52 | QNX requires that _FILE_OFFSET_BITS be set prior to any system #include. (check-in: 953cdd6ada user: drh tags: trunk) | |
2014-02-24
| ||
21:42 | Fix several small style/consistency issues with the previous check-in. (check-in: 2477b3a294 user: mistachkin tags: trunk) | |
21:23 | Merge updates from trunk. (Closed-Leaf check-in: 854d410ad3 user: mistachkin tags: cygDlOpen) | |
21:20 | Enhance testing support for the Win32 VFS dynamic extension loading facilities. (check-in: 53081e7202 user: mistachkin tags: trunk) | |
19:49 | Close some stray connections in walro.test. (check-in: d6746cabaa user: dan tags: trunk) | |
19:07 | In memsys5, initialize new allocations to non-zero bytes. Change the content of freed allocations to prevent use after free. These changes in SQLITE_DEBUG only. (check-in: ba5f0a5599 user: drh tags: trunk) | |
14:24 | Remove an unused variable from the VDBE_PROFILE compile-time option. Keep the opcode count in an u32 instead of an int. (check-in: 4df0ac9023 user: drh tags: trunk) | |
2014-02-21
| ||
05:44 | Better loadable extension handling in the Win32 VFS when compiled for Cygwin. (check-in: 6676475c47 user: mistachkin tags: cygDlOpen) | |
2014-02-20
| ||
19:42 | Fix the text of a comment used to generate VDBE opcode documentation so that it omits symbols that can be mistaken for a hyperlink by the parser. (check-in: b46d4e8923 user: drh tags: trunk) | |
19:32 | Fix a harmless shadowed-variable warning. (check-in: 824029090d user: drh tags: trunk) | |
19:23 | Make sure that the difference between two string pointers is passed into sqlite3_mprintf() as type "int". (check-in: d5d973fedc user: drh tags: trunk) | |
2014-02-19
| ||
19:14 | Add the VdbeCoverageNeverTaken() macro, and comments that better describe how the VDBE branch coverage measurement works. Add some tags to provide 100% VDBE branch coverage. (check-in: c1e94169dd user: drh tags: trunk) | |
14:20 | Add the SQLITE_NOTNULL P5 code for comparison operations - really a composite of SQLITE_NULLEQ and SQLITE_JUMPIFNULL. This flag indicates that NULL operands are not possible and raises and assert() if NULL operands are seen. Also omit an unnecessary scan of the sqlite_sequence table when writing into an AUTOINCREMENT table. (check-in: d2c047f304 user: drh tags: trunk) | |
01:31 | Make sure a multi-row VALUES clause works correctly in a compound SELECT. (check-in: 85b355cfb4 user: drh tags: trunk) | |
00:53 | Tweaks in support of VDBE branch test coverage. (check-in: b978256469 user: drh tags: trunk) | |
2014-02-18
| ||
11:31 | Fix VDBE branch accounting on comparison operators. (check-in: b287520c92 user: drh tags: trunk) | |
03:07 | Add VdbeCoverage() and VdbeCoverageIf() macros for improved VDBE coverage testing. (check-in: b92d31a97d user: drh tags: trunk) | |
01:07 | Improvements to "NOT IN (SELECT ...)" processing. Only test for NULL values on the RHS on the first iteration, then remember the result. There has been logic to do this for year, but it didn't work right and ended up repeating the NULL test on every iteration. This inefficiency was found using the VDBE coverage testing tools. (check-in: 915f6f1c7a user: drh tags: trunk) | |
2014-02-17
| ||
23:52 | Merge in performance enhancements for INSERT operations, especially INSERTs on tables that have no affinity columns or that have many indices or INSERTs with content coming from a SELECT. Add the SQLITE_TESTCTRL_VDBE_COVERAGE test control and the SQLITE_VDBE_COVERAGE compile-time option used for measure coverage of branches in VDBE programs. (check-in: a72687699b user: drh tags: trunk) | |
22:40 | Add logic to do test coverage measurements on the VDBE code. (Closed-Leaf check-in: ce184c7bb1 user: drh tags: insert-optimization) | |
15:40 | Add a test case for OP_SoftNull. (check-in: f29d194e03 user: drh tags: insert-optimization) | |
15:36 | Merge the VDBE_PROFILE fixes from trunk. (check-in: 2914e41911 user: drh tags: insert-optimization) | |
14:59 | Avoid unnecessary calls to applyAffinity() during INSERT and UPDATE operations, especially for table that have indices and tables for which all columns have affinity "NONE". (check-in: 35b4d6e938 user: drh tags: insert-optimization) | |
01:13 | Fix the VDBE_PROFILE logic. Add a script to process the output file. (check-in: 7adb3da235 user: drh tags: trunk) | |
2014-02-16
| ||
19:20 | Use the modern MinGW major version macro, not the deprecated one. (Closed-Leaf check-in: 057c16ee97 user: mistachkin tags: mingw4x) | |
01:55 | Enhance the code generator for INSERT INTO ... SELECT so that the SELECT generates output directly in the registers that INSERT INTO will be using, in many cases, and OP_SCopy operations can thus be avoided. (check-in: aa2d8b0e81 user: drh tags: insert-optimization) | |
2014-02-14
| ||
23:49 | Seek past NULLs in a top-constrained search. Avoid checking for NULLs in the body of the search. (check-in: e07a32f308 user: drh tags: trunk) | |
23:35 | Better support for MinGW 4.x. (check-in: e147230767 user: mistachkin tags: mingw4x) | |
20:59 | Reduce the number of cases where it is necessary to check for NULL after the loop terminating condition. (check-in: 3c1ae447de user: drh tags: trunk) | |
15:13 | Add OP_IdxGT and OP_IdxLE as distinct opcodes. Formerly these operations where done using OP_IdxGE and OP_IdxLT with the P5 flag set. But VDBE code is easier to read with distinct opcode names. Also change OP_SeekGe to OP_SeekGE, and so forth, so that the capitalization is consistent. The whole point of this change is to improve the readability of VDBE listings. (check-in: b6bea903ac user: drh tags: trunk) | |
00:25 | Revise how the Tcl system encoding is handled by the test suite. (check-in: 9e573198e1 user: mistachkin tags: trunk) | |
2014-02-13
| ||
21:57 | Improvements to the makefile and README for MSVC. (check-in: b22b614068 user: mistachkin tags: trunk) | |
19:27 | Ensure that if the "psow=0" URI option or FCNTL_POWERSAFE_OVERWRITE file-control is used to clear the power-safe overwrite flag, extra padding frames are added to the WAL file. (check-in: 48c821fd97 user: dan tags: trunk) | |
19:10 | Change README to README.md and expand it. Remove unrelated and obsolete files. (check-in: 18d4e258c4 user: drh tags: trunk) | |
18:46 | Avoid passing a flags argument with the internal WAL_SYNC_TRANSACTIONS bit set when calling sqlite3OsSync(). (check-in: e3b79e920c user: dan tags: trunk) | |
13:42 | Update the tclconfig files to the latest from http://core.tcl.tk/tclconfig. (check-in: b81ba7a4bc user: drh tags: trunk) | |
2014-02-12
| ||
23:52 | Minor simplifications to the "zeroPage()" routine in btree.c. (check-in: cc8f10bcb2 user: drh tags: trunk) | |
21:31 | Remove the "rowid cache" that sought to remember the largest rowid for a table and thereby speed up OP_NewRowid. That cache was ineffective. Removing it results in a performance increase of 0.4%, less memory usage, and a slightly smaller library size. (check-in: 56bc5ce895 user: drh tags: trunk) | |
14:43 | Make sure "rowid" columns are correctly resolved in joins between normal tables and WITHOUT ROWID tables. Fix for ticket [c34d0557f740c45070]. (check-in: 5d01426ddf user: drh tags: trunk) | |
2014-02-11
| ||
16:24 | Increase the version number to 3.8.4 (check-in: 0a8bcbbd4e user: drh tags: trunk) | |
16:22 | Updates to the command-line shell. Simplify the banner message. Add the ".save" command as an alias for ".backup". When starting with no arguments, include a banner message warning that the database is transient and in-memory and mention the ".open" command. (check-in: f5ad1e1bf2 user: drh tags: trunk) | |
14:37 | Fixes to the "editline" support in the command-line shell. (check-in: 7989ce5f10 user: drh tags: trunk) | |
01:50 | Make sure that virtual WHERE-clause terms do not get transformed into real terms when processing set of OR-connected terms. Fix for ticket [4c86b126f22ad]. (check-in: c950d6c411 user: drh tags: trunk) | |
2014-02-10
| ||
21:07 | Fix a pointless conditional. Add a test case. (check-in: 9367632dd7 user: drh tags: trunk) | |
19:59 | Add the ".save" command as an alias for ".backup". Improvements to the way font changes are implemented on the in-memory database warning. (Closed-Leaf check-in: fe284afe73 user: drh tags: memdb-warning) | |
19:36 | On unix, make the "transient in-memory database" text bold, but not red. Leave the text read on windows. (check-in: c9eba2f7be user: drh tags: memdb-warning) | |
19:27 | In the command-line shell, on the banner, warn about the use of a transient in-memory database in bold red text. (check-in: 0fbc0fcec1 user: drh tags: memdb-warning) | |
18:56 | Fix the compound-select-to-subquery converter so that it works with the new compound-select object linkage introduced as part of the fix for ticket [31a19d11b97088296]. (check-in: 572d4be4db user: drh tags: trunk) | |
16:13 | Modify the command-line shell to print a warning when using an in-memory database. (check-in: 90e9deae4a user: drh tags: memdb-warning) | |
15:56 | Improvements to a "Synopsis:" comment in the VDBE engine. (check-in: 0dfa7ee915 user: drh tags: trunk) | |
12:59 | Faster implementation for sqlite3MulInt64(). (check-in: 010c48f671 user: drh tags: trunk) | |
03:21 | Faster and smaller implementation of sqlite3_value_type(). (check-in: 5708bc24b8 user: drh tags: trunk) | |
2014-02-09
| ||
23:59 | Add a compound-query test to the speedtest1 test program. (check-in: 5329957591 user: drh tags: trunk) | |
18:02 | Use the WITH clause to help resolve names for SELECT statements on the left of a compound query. Proposed fix for ticket [31a19d11b97088296a]. (check-in: 67bfd59d90 user: drh tags: trunk) | |
00:52 | Add the Mandelbrot Set testcase to the "cte" testset of speedtest1. (check-in: 56febbeb57 user: drh tags: trunk) | |
00:18 | Add a new "testset" to the speedtest1 program: The sudoku solver. (check-in: 4677ef2f8a user: drh tags: trunk) | |
2014-02-08
| ||
23:20 | Do away with the "multi-register pseudo-table" abstration. Instead, just use an OP_SCopy to load results directory from the result registers of the co-routine. (check-in: 1e64dd782a user: drh tags: trunk) | |
19:12 | Change the OP_Found opcode so that it expands zero-blobs prior to comparing them. Fix for ticket [fccbde530a6583b] (check-in: e2303d1b0c user: drh tags: trunk) | |
13:24 | Fix a harmless compiler warning in VS2013. (check-in: 83116ee3e0 user: drh tags: trunk) | |
13:22 | Fix a harmless compiler warning in VS2013. (check-in: 35f2793db5 user: drh tags: branch-3.8.3) | |
13:12 | Tweaks to the generated VDBE code to make it a little easier to follow. (check-in: 129217ee91 user: drh tags: trunk) | |
04:24 | Enable constant expression factoring even if no tables are read and no transaction is started. (check-in: a45b87713c user: drh tags: trunk) | |
01:40 | Change the OP_Trace opcode to OP_Init and give it the ability to jump to the initialization code at the bottom of the program, thus avoiding the need for an extra OP_Goto. (check-in: 192dea9731 user: drh tags: trunk) | |
2014-02-07
| ||
22:21 | Add opcodes OP_InitCoroutine and OP_EndCoroutine. Use these to remove the need for separate boolean registers to record when a co-routine has finished. (check-in: 5a88b6a7ae user: drh tags: trunk) | |
19:33 | Fix redundant definitions of _LARGE_FILE and _LARGEFILE_SOURCE. (check-in: 4043d87979 user: drh tags: trunk) | |
19:26 | In the TCL bindings, make sure Tcl_AppendResult() is always terminated by "(char*)0" and not just "0". (check-in: ea4d23d1c0 user: drh tags: trunk) | |
19:18 | Change the OP_InitCoroutine instruction to jump over the co-routine implementation. (Closed-Leaf check-in: a522f364a6 user: drh tags: coroutine-refactor) | |