SQLite

Timeline
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

96 check-ins using file src/vdbe.h version b0866e41

2017-01-25
14:38
Ensure that sqlite3_blob_reopen() correctly handles short rows. Fix for ticket [e6e962d6b0f06f46e]. check-in: 8cd1a445 user: drh tags: trunk
13:54
Fix SQLITEINT_H macro usage in two extensions. check-in: 0803390c user: drh tags: trunk
04:41
Ensure that sqlite3_blob_reopen() correctly handles short rows. Proposed fix for ticket [e6e962d6b0f06f46e]. Further testing needed. Closed-Leaf check-in: 57d8dad3 user: drh tags: blob_reopen-fix
2017-01-23
21:12
Experimental changes to permit a VFS to directly override the initial page size. Leaf check-in: 64131724 user: mistachkin tags: pagePerSector
19:11
Document the --mmap option in the --help screen for kvtest. Enhance kvtest so that numeric arguments can have suffixes like "K" or "M". Add kvtest to the unix makefiles. check-in: 175bda87 user: drh tags: trunk
18:40
Add the --mmap option to the kvtest utility program. check-in: 4948f7e6 user: drh tags: trunk
16:56
Optimization: Try to avoid unnecessary btree searching when repositioning a cursor to the next row. check-in: ee793d30 user: drh tags: trunk
15:58
Add the missing SQLITE_API symbol to test_delete.c (it is not added automatically as this file is not part of the amalgamation). check-in: 7a4f512d user: dan tags: trunk
07:06
Fix a problem preventing FTS5 from correctly passing the FTS5_TOKENIZE_PREFIX flag to custom tokenizer implementations. check-in: 03c60134 user: dan tags: trunk
2017-01-22
16:34
Fix an uninitialized variable in the command-line shell. check-in: 06b8001a user: drh tags: trunk
02:04
Fixes to documentation comments in the public header file. check-in: 772dcb08 user: mistachkin tags: trunk
00:11
Fix an initialized variable in kvtest. check-in: ed62c5a6 user: drh tags: trunk
2017-01-21
21:47
A better implementation of the moveto-neighbor optimization that checks for nearby rows on adjacent pages. Closed-Leaf check-in: 2c4ecb85 user: drh tags: btree-moveto-neighbor
16:54
B-tree optimization: When seeking on a rowid table that has already been positioned, check to see if the new row happens to be the next row on the same leaf page. That is a reasonably common case, and if it is true it avoids a full binary search. check-in: 8e5cfb20 user: drh tags: btree-moveto-neighbor
16:27
Change sqlite3_blob_reopen() to call sqlite3VdbeExec() directly rather than going through sqlite3_step(). Performance enhancement. check-in: 347df3c1 user: drh tags: trunk
16:21
Fix problems in the previous commit. Leaf check-in: 74ad80eb user: dan tags: trigger-trace
15:58
Add extra (somewhat inefficient) trace callbacks for triggers if SQLITE_TRACE_TRIGGER is defined. check-in: ffda1d1e user: dan tags: trigger-trace
15:55
In the kvtest.c test utility, reuse the buffer into which blobs are read, rather than reallocating it for each row. This is a closer match to how other test programs work, and thus provides a better comparison. check-in: 0d1ad13a user: drh tags: trunk
15:30
A proof-of-concept for running sqlite3_blob_open() without using OP_Column when operating on a pure key/value table. This demo does not include any corrupt database checking. Uses about 3% fewer CPU cycles on a key/value performance test. Leaf check-in: 4cda3b30 user: drh tags: kv-access-opt-demo
14:11
Remove an unnecessary sqlite3_bind_int64() call from sqlite3_blob_open(). Also other minor refactoring of the sqlite3_blob implementation. check-in: 9d197a53 user: drh tags: trunk
2017-01-20
20:43
Minor performance optimization and size reduction to the accessPayload() routine in btree.c. check-in: 264e5c10 user: drh tags: trunk
16:47
Fix a typo in the help message for kvtest. check-in: 8971d98f user: dan tags: trunk
16:46
Add option "--stats" to test program kvtest. Specifying --stats causes kvtest to output information similar to the shell tool option of the same name. check-in: 90291327 user: dan tags: trunk
16:09
Get the "--testset rtree" option working on speedtest1. Add the --rtree, --lookaside, and --clang options to the speed-check.sh script. check-in: 87b640c8 user: drh tags: trunk
00:40
Minor performance optimizations to sqlite3_blob_open() and sqlite3_blob_reopen(). check-in: 52a61967 user: drh tags: trunk
2017-01-19
21:20
If compiled with SQLITE_INLINE_MEMCPY, all memcpy() calls are replaced with in-line code. With that change, cachegrind shows which memcpy() calls are taking the most time. This is a performance-measurement hack only and is not for production use. check-in: 9ed38521 user: drh tags: trunk
18:20
In the 'vtshim' extension, avoid accessing freed memory when handling errors from xCreate/xConnect. check-in: ffd559af user: mistachkin tags: trunk
12:07
Add a prototype of the sqlite3_kv_reset() interface. Leaf check-in: 088c5903 user: drh tags: sqlite3_kv
11:52
Add test cases for the instrumentation on this branch. Fix some OOM handling issues in the same. Leaf check-in: 50ca94b9 user: dan tags: transaction-pages
2017-01-18
23:12
For Windows 8.x and higher, require the SQLITE_WIN32_WIN8_SECTOR_SIZE compile-time option in order to enable sector size determination. Leaf check-in: 47beb55c user: mistachkin tags: winSectorSize
22:47
In the 'windirent' test module, use a macro for the hidden/system attribute checking. check-in: a84a08d0 user: mistachkin tags: trunk
22:19
Remove superfluous option to Tcl 'lsort' in the vtabH test file. check-in: b92cc6e5 user: mistachkin tags: trunk
22:16
Make the vtabH-3.1 test more portable and robust. check-in: d3c91c1f user: mistachkin tags: trunk
22:16
Fix handling of initial hidden and/or system files in the opendir() implementation for Windows. No changes to non-test code. check-in: 26dd42b4 user: mistachkin tags: trunk
20:14
Add temporary code to record and report on the set of b-tree pages read and written by the current transaction. This is likely still buggy. check-in: 2a8f6c89 user: dan tags: transaction-pages
19:54
Begin fleshing out the key/value accessor implementation. This is an incremental check-in. check-in: 02d60e19 user: drh tags: sqlite3_kv
19:36
Improve and update comments. check-in: 2dc16d34 user: mistachkin tags: winSectorSize
19:06
Minimize the requested permissions when opening the volume on Windows 7 and Vista. check-in: 8d429a59 user: mistachkin tags: winSectorSize
17:20
Baseline interface definition for the experimental sqlite3_kv accessor object. check-in: a435841e user: drh tags: sqlite3_kv
01:11
Add runtime version checking for winSectorSize. check-in: cb9d1ab3 user: mistachkin tags: winSectorSize
00:27
When determining sector sizes on Windows 7 and Vista, make sure the target file is on the same volume as corresponding root directory. check-in: de699ead user: mistachkin tags: winSectorSize
2017-01-17
10:41
Fix a problem that could cause a spurious SQLITE_NOMEM error when attempting to resume an RBU operation if the previous client failed right after completing the incremental checkpoint. Also a "cannot vacuum wal db" error that could occur when resuming an RBU vacuum if an error (OOM or IO error) occurs during the incremental checkpoint. check-in: 681d96eb user: dan tags: trunk
00:10
Disable intrinsic functions for Windows using Clang, due to reports of linkage errors. This causes a 0.6% performance reduction. We will want to revisit this change in the future. check-in: 7fd560c6 user: drh tags: trunk
2017-01-16
18:10
Back out check-in [0b3174e0b1364c] and replace it with a better fix for \ticket [91e2e8ba6ff2e2] - a fix that does not cause the problem identified by ticket [7ffd1ca1d2ad4ec]. Add new test cases for both tickets. check-in: 9b64af7b user: drh tags: trunk
16:43
Back out check-in [0b3174e0b1364c] and replace it with a better fix for ticket [91e2e8ba6ff2e2] - a fix that does not cause the problem identified by ticket [7ffd1ca1d2ad4ec]. Closed-Leaf check-in: 06136652 user: drh tags: automatic-index-affinity
16:01
Add test cases for tickets [91e2e8ba6ff2e2] and [7ffd1ca1d2ad4ec]. check-in: 9d0dfe0b user: drh tags: automatic-index-affinity
11:54
An example showing how to improve performance of sqlite3VdbeSerialPut() using the GCC intrinsic function __builtin_bswap64(). Leaf check-in: e42ed9b4 user: drh tags: builtin-bswap64
2017-01-13
22:21
Merge updates from trunk. check-in: 8b42b8e3 user: mistachkin tags: winSectorSize
18:24
Fix a problem preventing resumption of RBU operations after recovering from a process or system failure that occurs during the incremental-checkpoint phase. check-in: 97914266 user: dan tags: trunk
12:53
Fix the build for SQLITE_ENABLE_MEMORY_MANAGEMENT. check-in: 8c85b8fd user: drh tags: trunk
2017-01-12
23:37
Attempt to detect physical sector sizes on Windows Vista and higher. check-in: 6e388423 user: mistachkin tags: winSectorSize
19:10
Remove a branch that is probably unreachable, and which adds no value. check-in: 9acc7238 user: drh tags: trunk
16:21
Fix harmless compiler warnings in the UPDATE code generator. check-in: 385db266 user: drh tags: trunk
16:14
Remove an unnecessary corruption test from the btree balancer. If corruption is present, it will be found harmlessly by later tests. check-in: bddf3956 user: drh tags: trunk
15:19
Test case macros to show that the previous check-in is well tested. Leaf check-in: bd8b977a user: drh tags: extra-testcase-macros
15:11
Improved detection of cells that extend into the reserved space at the end of the page while adjusting overflow page pointers during autovacuum. check-in: 8097712c user: drh tags: trunk
11:52
Remove invalid test case from cursorhints2.test check-in: 163cc1b2 user: drh tags: trunk
11:50
Make sure Tcl_AppendResult() always has a NULL-pointer argument at the end. check-in: c07aef6f user: drh tags: trunk
2017-01-11
21:03
Changes to allow some multi-row UPDATE statements to avoid the two-pass approach. check-in: 7ae6104a user: dan tags: trunk
20:10
Fix a problem causing the pre-update hook to be passed an incorrect rowid value in some single-pass multi-row updates. Closed-Leaf check-in: 62257eb5 user: dan tags: onepass-update
19:03
Fix a problem with single-pass multi-row UPDATE statements that invoke REPLACE conflict handling. check-in: 0a2b8e1b user: dan tags: onepass-update
16:52
Attempt to detect physical sector sizes on Windows 8 and higher. check-in: 381fd34b user: mistachkin tags: winSectorSize
15:42
Fix a problem preventing UPDATE statements that use a range-scan on the PK index of a WITHOUT ROWID table from using a one-pass strategy. check-in: cab86c90 user: dan tags: onepass-update
14:15
In the STAT4 computations, ensure that the aAvgEq values do not go negative. check-in: f58f75b5 user: drh tags: trunk
2017-01-10
20:04
Changes to allow some multi-row UPDATE statements to avoid the two-pass approach. check-in: 46db23cc user: dan tags: onepass-update
17:37
Add a test case for ticket [25e335f802dd]. check-in: e500c15a user: dan tags: trunk
17:33
Throw an error if the ON clause of a LEFT JOIN references tables to the right of the ON clause. Fix for ticket [25e335f802dd]. check-in: c92ecff2 user: drh tags: trunk
16:09
Avoid unnecessary calls to the xRoundup() method of the memory allocator when the soft heap limit is not set. check-in: 4209b89e user: drh tags: trunk
15:08
Fix a potential assertion fault discovered by OSS-Fuzz. check-in: 71c03b59 user: drh tags: trunk
2017-01-09
20:57
Merge latest changes from trunk, and also move the perf-counter into the inner loop of sqlite3BtreeMovetoUnpacked(). Leaf check-in: ff9eab95 user: drh tags: vdbe-aux-perf
19:55
Remove a redundant assignment statement. check-in: a5fa0965 user: drh tags: trunk
19:27
Performance optimization and size reduction in the OP_Variable opcode. check-in: 237aa974 user: drh tags: trunk
18:22
Fix typo in a comment. No changes to code. check-in: d38fd229 user: mistachkin tags: trunk
18:20
Try to move OP_Concat operations outside the inner loop. This turns out to make things very slightly slower, at least in speedtest1.c. Closed-Leaf check-in: 8a90f691 user: drh tags: failed-optimization
15:44
Modify the OP_RowData opcode so that when P3!=0 it is allowed to hold an ephemeral copy of the content. This avoids unnecessary memcpy() operations in the xfer-optimization and VACUUM. check-in: 6e106acd user: drh tags: trunk
13:43
Add the SQLITE_UINT64_TYPE compile-time option. check-in: a5fe03bc user: drh tags: trunk
07:00
Merge the "changebatch" functionality into this branch. check-in: 50fb1eb3 user: dan tags: begin-concurrent
06:53
Disable the optimization from [8cb8516d] (omit TableLock instructions for non-sharable databases) on this branch. This branch uses the TableLock instructions to ensure that the db schema is not written from within a BEGIN CONCURRENT transaction. check-in: c8ca3e0a user: dan tags: begin-concurrent
06:33
Upgrade this branch to 3.16 plus the various fixes that appeared after its release. check-in: d0e212d0 user: dan tags: begin-concurrent
2017-01-07
14:47
Improvements to the iIdxNoSeek optimization of sqlite3GenerateRowDelete() so that it is automatically disabled for BEFORE triggers but works in all other cases. check-in: 3178ec4c user: drh tags: trunk
14:26
Critical fix to the previous check-in so that it works when there are BEFORE triggers that move the cursor before the OP_Delete has a chance to be applied. check-in: db2c0960 user: drh tags: trunk
03:26
Avoid an unnecessary btree seek while deleting an index entry due to a conflict on a REPLACE operation. check-in: f0495c51 user: drh tags: trunk
00:56
Avoid duplicate b-tree searches in the duplicate row detector used to implement DISTINCT. check-in: d577dda0 user: drh tags: trunk
00:42
This hack illustrates how to use the VDBE_PROFILE mechanism to show which bytecode operators are using resources other than time. In this case, the number of loops through the binary search code in sqlite3BtreeMovetoUnpacked() is measured, for the purpose of helping to identify unnecessary btree searches. check-in: 746b1836 user: drh tags: vdbe-aux-perf
2017-01-06
17:01
Merge the changes for version 3.16.2. check-in: c59c8880 user: drh tags: apple-osx
16:32
Version 3.16.2 Leaf check-in: a65a6289 user: drh tags: release, branch-3.16, version-3.16.2
13:53
Clarify the documentation on sqlite3_column_count(). check-in: 01b4cb26 user: dan tags: branch-3.16
13:52
Ensure that "PRAGMA case_sensitive_like" and "PRAGMA shrink_memory" set the number of output columns to 0 (as they are statements that return no data). check-in: 4a97ba4e user: dan tags: branch-3.16
13:49
Ensure that "PRAGMA case_sensitive_like" and "PRAGMA shrink_memory" set the number of output columns to 0 (as they are statements that return no data). check-in: 6696cd18 user: dan tags: trunk
11:56
Improve handling of corrupt databases in fts5. check-in: b0726941 user: dan tags: branch-3.16
11:55
Improve handling of corrupt data in fts5. check-in: 609ac1c7 user: dan tags: trunk
01:09
Clarify the documentation on sqlite3_column_count(). check-in: 9ea0badd user: drh tags: trunk
00:02
Remove several non-portable tests for the deprecated temp_store_directory PRAGMA. check-in: 28d87789 user: mistachkin tags: trunk
2017-01-05
20:01
Ensure that sqlite3_column_count() returns 0 for the "set" mode of "get/set" PRAGMA statements that do not return a value in that case (e.g. page_size, cache_size, auto_vacuum). check-in: e745da6b user: dan tags: branch-3.16
20:00
Ensure that sqlite3_column_count() returns 0 for the "set" mode of "get/set" PRAGMA statements that do not return a value in that case (e.g. page_size, cache_size, auto_vacuum). check-in: 2f57939a user: dan tags: trunk
19:32
Ensure that sqlite3_column_count() returns 0 for the "set" mode of "get/set" PRAGMA statements that do not return a value in that case (e.g. page_size, cache_size, auto_vacuum). Closed-Leaf check-in: 5c05d8ec user: dan tags: pragma-columncount-fix