]>
git.ipfire.org Git - thirdparty/sqlite.git/log
drh [Fri, 25 Aug 2017 01:14:43 +0000 (01:14 +0000)]
Update the mechanism used to keep track of what kind of syncing to do for
WAL transaction commits and checkpoint operations. Use the checkpoint-style
of syncing to sync the header of a new or restarted WAL file.
FossilOrigin-Name:
bf65dae8d4297c57ac63228ccf0100f9fabf2fb600438c9f2e10a29c4b118168
drh [Thu, 24 Aug 2017 20:54:42 +0000 (20:54 +0000)]
drh [Thu, 24 Aug 2017 15:43:26 +0000 (15:43 +0000)]
Fixes to documentation about SQLITE_OPEN_URI.
FossilOrigin-Name:
7ec72314d6b66e4969833194fd032f01963bb861a7bb30d060acdb82dc5d62fe
drh [Thu, 24 Aug 2017 13:55:46 +0000 (13:55 +0000)]
Make sure the sqlite3_result_pointer() interface does not leave a VM register
in an inconsistent state. Fix for ticket [
7486aa54b968e9b5 ]. Test cases
are in TH3.
FossilOrigin-Name:
d2f9230c5c7ad6166e7d2b649f77960fa58b1cb583e529a43882753ab348413c
drh [Wed, 23 Aug 2017 23:09:03 +0000 (23:09 +0000)]
Performance optimization to pageFindSlot() in the b-tree layer.
FossilOrigin-Name:
59560d079fab4b91ec50855cc60349da178209c38fb6dae674ff874ccfc7f5fa
drh [Wed, 23 Aug 2017 20:36:06 +0000 (20:36 +0000)]
Size and performance optimization to dropCell() and freeSpace().
FossilOrigin-Name:
bc1ec123ce05c9d16b0942f870381145dc9725764e47806939ff207a73066f4d
drh [Wed, 23 Aug 2017 14:45:59 +0000 (14:45 +0000)]
Smaller and faster implementation of the fillInCell() routine.
FossilOrigin-Name:
77074990edef6c42bdfe7ccce1affc8ed64a86dde3ad4fa50b60ba0a6d851eea
drh [Tue, 22 Aug 2017 21:23:02 +0000 (21:23 +0000)]
Update documentation to make it clear that SQLITE_SOURCE_ID and
sqlite3_sourceid() might changes if the source code is edited.
FossilOrigin-Name:
e69c0c8770d3cc2fcdc779c6290caf1575644d457326caa00327b9070251d620
drh [Tue, 22 Aug 2017 21:07:03 +0000 (21:07 +0000)]
Less dramatic changes to the source-id following an edit. Modify the way
that the amalgamation is constructed to give it the opportunity to detect
changes and modify the source-id.
FossilOrigin-Name:
564c7340a3368501c3da885afde52123ed7f558801f6190cbe6173dfe9704b70
drh [Tue, 22 Aug 2017 19:54:34 +0000 (19:54 +0000)]
Modify the SQLITE_SOURCE_ID if the source code has changed in any way since
the previous check-in.
FossilOrigin-Name:
515d6a8377cc1dc76d2e78e242fe256cbeef1c1217ec35367648ddeeb17007ec
drh [Tue, 22 Aug 2017 19:49:34 +0000 (19:49 +0000)]
Trying again to get out-of-tree builds to work correctly.
FossilOrigin-Name:
a1b3337e949fc431e19a3d977d07a312bb253ab7fec6811c0221abd514985d55
drh [Tue, 22 Aug 2017 19:43:41 +0000 (19:43 +0000)]
Attempting to fix the source-id generator so that it works for out-of-tree
builds.
FossilOrigin-Name:
5a037ac2da7449be3e26c36910ac5d865d7e74d3c25af0a10578c1f92fe2afea
drh [Tue, 22 Aug 2017 19:19:00 +0000 (19:19 +0000)]
Add the "mksourceid" program to the build process. That program changes
the SQLITE_SOURCE_ID if the source tree has been modified in any way.
FossilOrigin-Name:
d4c05e04f7e1325a3260808ee17252876f678e78bf0cf6569a18a52ff674bd7a
drh [Tue, 22 Aug 2017 15:21:54 +0000 (15:21 +0000)]
Fix error tests in seldom-used compile-time branches of the unix backend.
FossilOrigin-Name:
885c2b44a44f8d054014e4079b2cac8279c11d13206d5b5215189ef75b9c5254
drh [Mon, 21 Aug 2017 02:20:57 +0000 (02:20 +0000)]
drh [Mon, 21 Aug 2017 02:05:22 +0000 (02:05 +0000)]
Minor optimization to sqlite3VdbeMemSetStr().
FossilOrigin-Name:
6538ef7b6b56c7a6629a0bb7418910c64c8b2e73af2296a116c073ecf2e0d429
drh [Sat, 19 Aug 2017 20:38:18 +0000 (20:38 +0000)]
Space and size optimization to the printf implementation.
FossilOrigin-Name:
d01d2cffefd1cdb52b386e4983599534c0fbbe6aebda186db53200e4b2283f0a
drh [Fri, 18 Aug 2017 22:30:20 +0000 (22:30 +0000)]
Another size and performance optimization to readDbPage(). This time we
eliminate some unnecessary local variables.
FossilOrigin-Name:
745bc8decd18d4dc00589474fd3928a3a9f4156d09e05e6f5b8623de6491795a
drh [Fri, 18 Aug 2017 21:14:50 +0000 (21:14 +0000)]
Size and performance optimization the readDbPage() routine in the pager.
FossilOrigin-Name:
ca9e1875c3a893321d70a131fc4ffc76d169ad05e0b48b7006f53b6b467db4be
drh [Fri, 18 Aug 2017 16:09:52 +0000 (16:09 +0000)]
For the unix VFS, avoid an unnecessary stat() system call prior to opening
any file in the common case where there are no unused file descriptors.
FossilOrigin-Name:
3075cfa07489eaf13cb9a2760e2391e79dd73181fe1730fae7bdcd6ad66d2a1f
drh [Fri, 18 Aug 2017 14:34:28 +0000 (14:34 +0000)]
Combine the OP_CreateTable and OP_CreateIndex opcodes of the bytecode engine
into a single OP_CreateBtree opcode. This simplifies the implementation and
makes the bytecode programs clearer.
FossilOrigin-Name:
eb1202b5e43f1f029ad2bdf845509e7f31361e4dc189943e5e2bd4462e2ef3f3
dan [Fri, 18 Aug 2017 08:29:37 +0000 (08:29 +0000)]
Only use indexes on expressions to optimize ORDER BY and GROUP BY if the
collation sequence matches. Possible fix for [
e20dd54a ].
FossilOrigin-Name:
37e1900880b70be6802eaf43b0e568fda709a1dd6083d8be11e5a7a7d1fda41a
drh [Thu, 17 Aug 2017 20:53:07 +0000 (20:53 +0000)]
Use the __builtin_clzll() function of gcc to improve the performance and
reduce the size of the sqlite3LogEst() routine.
FossilOrigin-Name:
a42a438cbbd721765ca55e71c464552dbaa494050cf472593599b8c7f0249516
drh [Thu, 17 Aug 2017 19:23:16 +0000 (19:23 +0000)]
drh [Thu, 17 Aug 2017 18:54:27 +0000 (18:54 +0000)]
Size optimization in the authorizer error message generation logic.
FossilOrigin-Name:
0367a4d58682a64d7ed4c5a4b4377899e22432851587c649d419efb6d7bac250
drh [Thu, 17 Aug 2017 18:23:46 +0000 (18:23 +0000)]
In sqlite3ViewGetColumnNames(), return the number of errors, not an error code.
FossilOrigin-Name:
f13682ea2350ba366026a4a58e59591af378c496b92da60803c4c642c3bfc8de
drh [Thu, 17 Aug 2017 18:17:24 +0000 (18:17 +0000)]
The RTREE extension should return SQLITE_CORRUPT_VTAB, not just SQLITE_CORRUPT
when it encounters incorrectly formatted shadow tables.
FossilOrigin-Name:
0712f057ef3dcd907984dda30f6d961a29b61c1d2b25627028c4e227ec85dbba
drh [Thu, 17 Aug 2017 14:47:56 +0000 (14:47 +0000)]
dan [Thu, 17 Aug 2017 14:12:16 +0000 (14:12 +0000)]
Add test cases for ticket [
be436a7f4587ce517 ] using virtual table modules fts5
and rtree.
FossilOrigin-Name:
2101b4208787d297788e05f2bd82d4a9aff26e2237a7016ac857a52fb5252ce0
drh [Thu, 17 Aug 2017 02:26:35 +0000 (02:26 +0000)]
Defer schema resets when the query planner is running.
Proposed fix for ticket [
be436a7f4587ce517 ].
FossilOrigin-Name:
a7bc7752ba0266684f5317e424a4ee9add4af002272082183519e708ab9ffc79
drh [Wed, 16 Aug 2017 19:20:20 +0000 (19:20 +0000)]
Avoid a test for CURTYPE_BTREE in sqlite3VdbeCursorMoveto() in order to reduce
the size and improve the performance of OP_Column.
FossilOrigin-Name:
f078deb25149b7b1881b7f3374b343d0677e82336d8fdd7f1cdd06d926b5dd57
drh [Wed, 16 Aug 2017 14:16:19 +0000 (14:16 +0000)]
Remove an unnecessary local variable from OP_Column, for a small size
reduction and performance increase.
FossilOrigin-Name:
39543903282409ad3f139f8a0bb376661e7595a33af4f647945b1513a028ccb4
drh [Wed, 16 Aug 2017 11:04:22 +0000 (11:04 +0000)]
Performance improvement in the OP_Column opcode.
FossilOrigin-Name:
dc98a92f32511ee322b0207bd286e967248a8e59b418f11168eb31e34b0fa0fa
drh [Tue, 15 Aug 2017 14:14:36 +0000 (14:14 +0000)]
Small size and performance in the OP_Column opcode.
FossilOrigin-Name:
2cf3f3de8a48465bd6b0af7763bfe905f3bb0151488f63c9ecc3147bcb345094
drh [Tue, 15 Aug 2017 03:46:47 +0000 (03:46 +0000)]
Btree optimization: New field BtCursor.pPage that points to the current page,
saving a single pointer dereference on each access.
FossilOrigin-Name:
373b71d19cad785922d5a80828f2fee0cbe7dff6594743e625bbdfa31b1ca131
drh [Mon, 14 Aug 2017 23:53:02 +0000 (23:53 +0000)]
Minor size and performance optimization to sqlite3BtreeCloseCursor().
FossilOrigin-Name:
16969338841734d00ab906a94b82480c7e1e426eb0ddf7b9e6aed722aee5d91f
drh [Mon, 14 Aug 2017 18:13:52 +0000 (18:13 +0000)]
Change the internal btree routine moveToRoot() to return SQLITE_EMPTY if
the table is empty or if it has pgnoRoot==0. This simplifies the callers,
making them smaller and faster. The SQLITE_EMPTY result code is intercepted
and changed into SQLITE_OK before surfacing in an API.
FossilOrigin-Name:
240d57143d943eaddd5f7c2d473f47a1d29417e61d28142f70f3d960bb9b30df
drh [Mon, 14 Aug 2017 17:03:58 +0000 (17:03 +0000)]
drh [Mon, 14 Aug 2017 14:53:24 +0000 (14:53 +0000)]
Sometimes a TK_COLUMN Expr node can have Expr.pTab==0 if it is a reference
to an expression column in an index on and expression. Fix for ticket
[
aa98619ad08ddcab ].
FossilOrigin-Name:
d0da791ba0edfb65186459345e43500d8364a086a5a1651d828fecc1a1dd1edb
drh [Mon, 14 Aug 2017 01:33:07 +0000 (01:33 +0000)]
Properly dequote column names in tables constructed by an aggregate SELECT.
FossilOrigin-Name:
7e0d3e9cb071873564b7916c022aba5cd9f3b8ebab9dba787ecd7113c5b7816a
dan [Sat, 12 Aug 2017 18:31:31 +0000 (18:31 +0000)]
drh [Sat, 12 Aug 2017 02:16:34 +0000 (02:16 +0000)]
Update the speed-check.sh test script to append log output to the end of the
cout-NAME.txt file.
FossilOrigin-Name:
14d262d6aa4e281dfe0490988f0c1965c4babf98038a1a96b9bb5772a61521a3
drh [Sat, 12 Aug 2017 02:01:55 +0000 (02:01 +0000)]
Remove the zBase field from the StrAccum object. Resulting code is slightly
smaller and faster.
FossilOrigin-Name:
6e52fa5fd79988a433bae0152ceae036edab4bb18d2b48ed04c1f53f141728b0
drh [Sat, 12 Aug 2017 01:09:06 +0000 (01:09 +0000)]
Size and performance micro-optimization on sqlite3SrcListIndexedBy().
FossilOrigin-Name:
28a5aec118f9d078c9e7225f85cd48a91920b13908c540771e309557c3f15f84
drh [Fri, 11 Aug 2017 18:59:00 +0000 (18:59 +0000)]
Fix compiler warnings that arise if the PAGERTRACE macro is turned on.
This changes does not affect production builds.
FossilOrigin-Name:
831156a4bd7c4408085f7c5584cdeebd1953c539972f80c5ef29bc147008630e
drh [Fri, 11 Aug 2017 18:55:04 +0000 (18:55 +0000)]
Improved comments in the header of the LSM1 vtab module. No code changes.
FossilOrigin-Name:
aa49926dbffaae4f7c486be72ad814f381cca65c549f9d2605f47540a5f4be84
drh [Fri, 11 Aug 2017 13:51:41 +0000 (13:51 +0000)]
drh [Fri, 11 Aug 2017 12:49:59 +0000 (12:49 +0000)]
Convert the LSM1 virtual table to be WITHOUT ROWID and get UPDATE and DELETE
operations working on it.
FossilOrigin-Name:
2164031b509dc6eae367ffb9d915f3e1d33d26210506b2de8b2bfca38c53465f
drh [Fri, 11 Aug 2017 03:47:21 +0000 (03:47 +0000)]
Simplification to the like optimization logic. Remove unnecessary branches.
FossilOrigin-Name:
9466d952e169a6a60f6e575e679a61f05887b51c693505764edaf10f62cd829f
drh [Thu, 10 Aug 2017 20:43:07 +0000 (20:43 +0000)]
Allow WITHOUT ROWID virtual tables to be writable as long as they have
exactly one column as their PRIMARY KEY.
FossilOrigin-Name:
c601d128ff1f1dd6d221ee9f55595a95b58ba07d043e1d530743ea913731560e
dan [Thu, 10 Aug 2017 20:36:56 +0000 (20:36 +0000)]
Add the "instance" type to the fts5vocab virtual table module. For direct
access to the contents of the fts5 term index.
FossilOrigin-Name:
34a7bd7121a478e14982d59be95ad891fab8050ad5e006638f826c57c392b93e
dan [Thu, 10 Aug 2017 19:12:04 +0000 (19:12 +0000)]
Fix a typo in csv01.test introduced by the previous commit.
FossilOrigin-Name:
f38ff718278c8ff477d1c6379ced32167063de15f0666c8eac2e4dd30cbd975c
dan [Thu, 10 Aug 2017 19:10:23 +0000 (19:10 +0000)]
drh [Thu, 10 Aug 2017 17:53:11 +0000 (17:53 +0000)]
Test case for writing to a WITHOUT ROWID virtual table. The TCLVAR virtual
table is modified to add a "fullname" column which is the primary key, and
to accept update operations against the primary key.
FossilOrigin-Name:
6997e00c3221f266f4d9187501d8a9e5bafb85551e88a744cdc8ffe3b75ec2a4
drh [Thu, 10 Aug 2017 15:19:39 +0000 (15:19 +0000)]
Experimental changes that allow a WITHOUT ROWID virtual table to be writable
as long as it has only a single-column PRIMARY KEY.
FossilOrigin-Name:
ab9ee4c1e64c09c7130e385a23d043d78bad95dff5509c7adc9b992350a4a537
drh [Thu, 10 Aug 2017 03:27:27 +0000 (03:27 +0000)]
Add a first draft of the "vtablog" extensions that implements a generic
virtual table useful for experimentation using the command-line shell.
FossilOrigin-Name:
e49279e65169a939b6058a0960dc1fe09ce4ee2d78992a1969773cbc7ce1043b
drh [Wed, 9 Aug 2017 22:55:09 +0000 (22:55 +0000)]
Preserve the error code from xConnect or xCreate methods in virtual table
implementations when they are encountered during parsing.
FossilOrigin-Name:
dcdf091388251292ff9939bdff920708320bc64dacfe0fa1878c5ffd11b679c9
drh [Wed, 9 Aug 2017 19:27:24 +0000 (19:27 +0000)]
Various bug fixes for the new LSM1 virtual table design.
FossilOrigin-Name:
94434a252f0f2b57f325fd8fb82534f20cc1340ff13076cd88deeb47740ef6a2
drh [Wed, 9 Aug 2017 18:40:35 +0000 (18:40 +0000)]
Work toward redesigning the interface to the LSM1 virtual table.
FossilOrigin-Name:
313df946668b943b0a9a9a91fd7bafa7212d05765c7714fa6c0de46aa9062a74
drh [Tue, 8 Aug 2017 21:40:23 +0000 (21:40 +0000)]
The identifier "vsnprintf" appears to be a reserved word in recent versions
of XCode, so avoid using it as a structure field.
FossilOrigin-Name:
795eede331b832a53e886318466dedc12504f7181c1d7295af7935864a04b72c
drh [Tue, 8 Aug 2017 21:30:43 +0000 (21:30 +0000)]
Fix a faulty signed/unsigned character comparison in the LIKE optimization
logic.
FossilOrigin-Name:
f4a4b1497355c1b27d3d0770550fffcc3b2d2d51ab284101f19e8fc4264ee675
drh [Tue, 8 Aug 2017 20:03:10 +0000 (20:03 +0000)]
Enhance the CSV virtual table extension so that it accepts the last row of
the CSV file even if the last row omits the closing \n, as long as the last
row has a full set of columns.
FossilOrigin-Name:
537e3be2e9503183799afffcd91defc751fea2c779e9b77b77f9485f7de5d170
dan [Mon, 7 Aug 2017 19:12:49 +0000 (19:12 +0000)]
Avoid casting a value larger than 2^31 to a (size_t) or (SIZE_T) on systems
where it is a 32-bit type.
FossilOrigin-Name:
b26d7a1c7b5d59a2ceabc3716ccea32e26de729eb164a9c0e47f2d8f6ad3df37
mistachkin [Mon, 7 Aug 2017 19:06:54 +0000 (19:06 +0000)]
On Windows, avoid casting a value larger than 2^31 to a (SIZE_T) on systems where it is a 32-bit type.
FossilOrigin-Name:
f08d63b413601b22726e8b96ff8eb779857321b9df30db0333f71e50ffb5077d
dan [Mon, 7 Aug 2017 18:54:10 +0000 (18:54 +0000)]
Fix a problem with handling SQLITE_FCNTL_MMAP_SIZE requests with a negative
parameter in os_unix.c.
FossilOrigin-Name:
4249fcf7b0c0233f9b3ba5139702738d5221c5309240e6e91dc139eff59471fe
dan [Mon, 7 Aug 2017 18:27:19 +0000 (18:27 +0000)]
Update bigmmap.test to account for builds that use
"-DSQLITE_MAX_MMAP_SIZE=<integer-constant>LL".
FossilOrigin-Name:
7c8b6f1cace42ee1182c252c8e66e5679f523f4248c27d38c075ae21e7c25374
dan [Mon, 7 Aug 2017 18:13:28 +0000 (18:13 +0000)]
Avoid casting a value larger than 2^31 to a (size_t) on systems where it
is a 32-bit type.
FossilOrigin-Name:
46c3085dcad6372ac20eff499e17fe11680fdf4adb9186bf8b12221a5047e485
mistachkin [Mon, 7 Aug 2017 17:28:18 +0000 (17:28 +0000)]
dan [Mon, 7 Aug 2017 17:14:30 +0000 (17:14 +0000)]
Add new test file "bigmmap.test". For testing builds with
-DSQLITE_MAX_MMAP_SIZE > 2GB.
FossilOrigin-Name:
17447062799239ee978bedbf7fcc67f4c7d2cad2e82dcf9349a966fc8f67d390
dan [Sat, 5 Aug 2017 16:15:33 +0000 (16:15 +0000)]
Fix a segfault in swarmvtab that could occur if there was an error in the SQL
statement passed to the constructor. Add other test cases.
FossilOrigin-Name:
6ce8b7ca62fcf97875395fc1a989179309e0abb48d4465658ef0d871434ea057
drh [Sat, 5 Aug 2017 15:49:03 +0000 (15:49 +0000)]
Microoptimization in pcache1.c makes the code slightly smaller and faster.
FossilOrigin-Name:
422cd9f39403feeacd70133c7a147e23572c75d617ac564344f016ae6611162c
dan [Sat, 5 Aug 2017 15:30:46 +0000 (15:30 +0000)]
drh [Fri, 4 Aug 2017 20:27:13 +0000 (20:27 +0000)]
Add the swarm virtual table to the existing union virtual table module.
FossilOrigin-Name:
0f6f6f03deaba2f4bdd168980647136e8ddff4907863b62b3056b8e4665599df
drh [Fri, 4 Aug 2017 20:15:08 +0000 (20:15 +0000)]
Add the optional non-found-callback to the swarm-vtab.
FossilOrigin-Name:
a94e2f600bc766fb459418e674b842628ba21e27cf9942c00cd533507d7b35fe
dan [Fri, 4 Aug 2017 17:39:13 +0000 (17:39 +0000)]
Add further test cases for swarmvtab. And minor code changes.
FossilOrigin-Name:
0f82d3b9dd5bd2e34a984c78e4a4a87921cf3e15b01b611133378c0ea9901010
dan [Fri, 4 Aug 2017 16:16:32 +0000 (16:16 +0000)]
Add test cases and associated fixes for swarmvtab.
FossilOrigin-Name:
7ae20eac83fc053dc1bbc42501dd41f77445a6b9a33cfa42b899fc7a18c637ab
dan [Fri, 4 Aug 2017 08:24:52 +0000 (08:24 +0000)]
Add SQLITE_API qualifiers to public API functions in header file sqlite3rbu.h.
FossilOrigin-Name:
e11e6eb1d98518ba3f0361efa1c274084c5d6325b52e8470b6873e14e00c4eff
dan [Fri, 4 Aug 2017 08:23:33 +0000 (08:23 +0000)]
Update script tool/mksqlite3c.tcl to avoid duplicating the SQLITE_API
qualifier when copying sqlite3rbu.h into the amalgamation.
FossilOrigin-Name:
61ab112f326a51d2d524a6371d8c93851ca2c6917414a802ac72d7cf5a2413fb
dan [Thu, 3 Aug 2017 20:13:00 +0000 (20:13 +0000)]
Modify swarmvtab to use a separate database connection for each database file.
FossilOrigin-Name:
1f05ad29c3a540408470da7f8111f1319f961539c1a96b1a81abf1423af90f15
dan [Thu, 3 Aug 2017 15:50:10 +0000 (15:50 +0000)]
Add SQLITE_API qualifiers to public API functions in header file sqlite3rbu.h.
FossilOrigin-Name:
d8637badf63b90b650e9d6dc970c7e1ce46669ce8272f46f01fac9bd97c1b0fc
dan [Thu, 3 Aug 2017 15:43:55 +0000 (15:43 +0000)]
Fix some problems in RBU test cases. Also update RBU source code to better
handle the trivial case where an RBU update is applied to a database zero
pages in size.
FossilOrigin-Name:
7676b39bc120ae23da0c6a14452eb99a58901ee45c3d43b8beae426f9e4dc0c3
drh [Thu, 3 Aug 2017 00:29:23 +0000 (00:29 +0000)]
Optimization to the comparison opcodes in the byte-code engine.
FossilOrigin-Name:
654935c7737f1a9e08fde9b220c543e86ff6e05910e2f08973a2f93ab2b3e028
drh [Wed, 2 Aug 2017 22:43:14 +0000 (22:43 +0000)]
In the KeyInfo object, refactor the nField and nXField elements into
nKeyField and nAllField, which are more useful and run a little faster.
FossilOrigin-Name:
aea5990eab5e85f92df966aa641db2271c81052010ad2d80982475c4275a1284
dan [Wed, 2 Aug 2017 19:59:56 +0000 (19:59 +0000)]
Enhance the code in unionvtab.c to also provide the "swarmvtab" virtual table
module. There are still several problems on this branch.
FossilOrigin-Name:
03d94388d62fd0f1fae377d273bbd5561208adc34bd97f7ce27783b30a369fd7
drh [Wed, 2 Aug 2017 19:04:37 +0000 (19:04 +0000)]
Avoid redundant calls to sqlite3ApiExit() in sqlite3_step().
FossilOrigin-Name:
527974d4caba8bce7c89a28ea04a573b14c558657c14d9ad3c64bf1e0884caf8
drh [Wed, 2 Aug 2017 18:28:26 +0000 (18:28 +0000)]
Only attempt to invoke WAL callbacks when a transaction has committed.
FossilOrigin-Name:
bcc6dacb9114df709ef1bde24264c2193d9e39fc7fab024d5ebfc6056033274c
drh [Wed, 2 Aug 2017 18:27:50 +0000 (18:27 +0000)]
drh [Wed, 2 Aug 2017 15:50:09 +0000 (15:50 +0000)]
Optimizations associated with error handling in btree cursors.
FossilOrigin-Name:
49ba54e26731ed371745d4bdd9dd1dfeb73357b6d206c85a4252ec866be971d0
drh [Wed, 2 Aug 2017 12:38:10 +0000 (12:38 +0000)]
drh [Wed, 2 Aug 2017 11:36:16 +0000 (11:36 +0000)]
Rearrange some of the added token codes for a very slight size decrease and
performance increase.
FossilOrigin-Name:
cb3742f51f4b3aa0fd8dc373af771e93ddb4100787115705955f2008aef92745
drh [Wed, 2 Aug 2017 11:04:00 +0000 (11:04 +0000)]
Rearrange integer token values in the parser and logic in the
resolveP2Values() routine for a small size reduction and performance increase.
FossilOrigin-Name:
1cad2926ad88b83becab1326bd189d7bac8ba6d470b36ba5d29af5c9fb016014
drh [Wed, 2 Aug 2017 03:21:52 +0000 (03:21 +0000)]
Show which opcodes are jumps in the comments when generating
the opcodes.h header file.
FossilOrigin-Name:
eef643a369250f1acac4c01a9b3d29068a510e5bf7fa843d565df5e2523e4dd9
drh [Wed, 2 Aug 2017 03:21:11 +0000 (03:21 +0000)]
Add the "%token" control to the lemon parser. Not currently used by SQLite.
FossilOrigin-Name:
a6e4c5ae8f29bc2e7f2088426341254e9281d19db9dc9a14abc376d56dad4c4b
drh [Wed, 2 Aug 2017 02:46:43 +0000 (02:46 +0000)]
drh [Tue, 1 Aug 2017 20:59:41 +0000 (20:59 +0000)]
Slightly smaller and faster by allocating Parser objects on the stack.
FossilOrigin-Name:
436a89b91901851ce21bf0cb997291b48888c52788b904822083d8dfac32b84b
drh [Tue, 1 Aug 2017 19:53:43 +0000 (19:53 +0000)]
Split the OP_Last opcode into OP_Last and OP_SeekEnd. Use OP_SeekEnd to
position a cursor prior to appending. Ticket [
cb91bf4290c211d ].
FossilOrigin-Name:
3e02474c7bbe16891a7cfc8771cf72f64cd2c0692779037982d7d307512a4f23
drh [Tue, 1 Aug 2017 14:16:15 +0000 (14:16 +0000)]
Take advantage of atomic-write capabilities in the F2FS filesystem when the
database is stored on such a filesystem. This is a compile-time option
activated using SQLITE_ENABLE_BATCH_ATOMIC_WRITE.
FossilOrigin-Name:
24190b221f73472dafaead6de101b4debc2c91c1ca28d70b45a38df5bb61fb39
drh [Tue, 1 Aug 2017 00:20:34 +0000 (00:20 +0000)]
Allow ATTACH and DETACH inside of a transaction.
FossilOrigin-Name:
95e8f31658254dd2df3eeaae337aff0fe2125d170ae966c74f4fc70400e099b1
mistachkin [Mon, 31 Jul 2017 19:39:34 +0000 (19:39 +0000)]
Recognize 'AMD64' as 'x64' in the TclKit batch tool for MSVC.
FossilOrigin-Name:
0c77935cf9949099d834ec51384c1d4dcdaf7b4422c859c9fce6d3cb3bde2645
mistachkin [Mon, 31 Jul 2017 19:26:06 +0000 (19:26 +0000)]