]>
git.ipfire.org Git - thirdparty/sqlite.git/log
drh [Tue, 13 Dec 2016 18:34:01 +0000 (18:34 +0000)]
In the pager, avoid checking for the illegal page number 0 except when creating
a new page.
FossilOrigin-Name:
dee20ba982125ea98c280ad1571789af0f393903
drh [Tue, 13 Dec 2016 15:53:22 +0000 (15:53 +0000)]
Further refinements to the virtual method implementation of
sqlite3PagerGet().
FossilOrigin-Name:
67df44464847b43f8c0b186157e31cc66c1e5796
drh [Tue, 13 Dec 2016 14:32:47 +0000 (14:32 +0000)]
Make the sqlite3PagerGet() interface into a virtual method, with different
implementations based on the current state of the pager. This gives a small
performance increase by avoiding unnecessary branches inside the various
methods.
FossilOrigin-Name:
df5bb90d208e0633056389e97696d260e3830e8d
drh [Mon, 12 Dec 2016 23:24:08 +0000 (23:24 +0000)]
Add the --mmap option to the speedtest1 program and to the speed-check.sh
script that is frequently used to run speedtest1.
FossilOrigin-Name:
1a636d5e0eec0a4d968519d1dfd35a983e512c78
drh [Mon, 12 Dec 2016 18:12:03 +0000 (18:12 +0000)]
Remove unnecessary MemPage initialization resets in the autovacuum ptrmap
processing.
FossilOrigin-Name:
1b36fbb9f05f3a5844e198b489bff36ef6cd908c
drh [Mon, 12 Dec 2016 16:08:44 +0000 (16:08 +0000)]
Faster operation for large in-memory databases.
FossilOrigin-Name:
9675518b33e8d40769daefb860dc748113f750b6
drh [Mon, 12 Dec 2016 11:05:15 +0000 (11:05 +0000)]
Performance optimization in sqlite3PagerWrite().
FossilOrigin-Name:
d4dff10a3d4edf8e1cc77c0a4f185d33f2c2e953
drh [Mon, 12 Dec 2016 01:53:36 +0000 (01:53 +0000)]
Updates to the tokenizer for EBCDIC. No changes for standard builds.
FossilOrigin-Name:
4fc6580ffa7232aaf751f38f90c45edc8863abe5
drh [Mon, 12 Dec 2016 01:30:01 +0000 (01:30 +0000)]
Size and performance optimization in btreeInitPage() in the freeblock
validation step.
FossilOrigin-Name:
57deb1b412e0c328528f2b4d697e326bfd028dca
drh [Mon, 12 Dec 2016 00:58:40 +0000 (00:58 +0000)]
Change the order of comparison for divider cell overflow in balance non-root
to avoid a (harmless) reference to an uninitialized variable.
FossilOrigin-Name:
f9f2e23bbd68a8994621623446868d666df52eff
drh [Sat, 10 Dec 2016 13:12:55 +0000 (13:12 +0000)]
Avoid an unnecessary memset() in the sqlite3BtreeInsert() routine.
FossilOrigin-Name:
35ecd4ebc55579175f7c934e4eb1edb969008428
drh [Sat, 10 Dec 2016 12:58:15 +0000 (12:58 +0000)]
Reorder the fields in the VdbeCursor object so that those that need to be
bulk zeroed on allocation are grouped at the beginning, and the memset()
only runs over those fields that really need it.
FossilOrigin-Name:
8165f88bb1d40693d67005a8d5dc499085f64b91
drh [Sat, 10 Dec 2016 04:06:49 +0000 (04:06 +0000)]
Avoid signed integer overflow when dealing with a LIMIT and OFFSET whose
sum exceeds the maximum integer value.
FossilOrigin-Name:
c9bdf7adb4745cfaf23d9afd496e71fa37793108
drh [Fri, 9 Dec 2016 19:42:18 +0000 (19:42 +0000)]
When doing the sqlite3BtreeInsert() overwrite optimization, make sure the
memcpy() does not extend off the end of the page.
FossilOrigin-Name:
684ef4582ed19b2af22dda6fc085c70464f92f1b
drh [Fri, 9 Dec 2016 18:09:42 +0000 (18:09 +0000)]
Additional comments and an assert on the sqlite3BtreeInsert() overwrite
optimization.
FossilOrigin-Name:
c1f0ae9d2981a19875103750379ad26f2575f878
drh [Fri, 9 Dec 2016 17:32:51 +0000 (17:32 +0000)]
In sqlite3BtreeInsert() when replacing a re-existing row, try to overwrite
the cell directly rather than deallocate and reallocate the cell.
FossilOrigin-Name:
0b86fbca6615ccf1f3a62614db577a8acbec6d9e
dan [Fri, 9 Dec 2016 16:12:04 +0000 (16:12 +0000)]
Fix an fts5 bug that could cause a crash following an OOM error or
sqlite3_interrupt() interrupt.
FossilOrigin-Name:
0ea3ece988883874bb88e3daaa220d7fc0cf36ef
drh [Fri, 9 Dec 2016 16:02:00 +0000 (16:02 +0000)]
Avoid unnecessary zeroing of fields in the MemPage object that are going
to be reinitialized before use anyhow. A smaller and faster binary results.
FossilOrigin-Name:
01ada3d1068476f90dcae02cb089001ea4bcc23d
drh [Fri, 9 Dec 2016 00:15:17 +0000 (00:15 +0000)]
Fix an obscure problem in range estimation with STAT4.
FossilOrigin-Name:
1f16c9a76bc48331799f33b30d143c632fe0e7db
drh [Thu, 8 Dec 2016 23:52:38 +0000 (23:52 +0000)]
Fix the showstat4 utility program so that is displays strings using
standard SQL notation (single quotes) rather than C-style notation.
FossilOrigin-Name:
92998e4afbe4da1723e7e5155071a0e7242bd6ff
drh [Thu, 8 Dec 2016 19:04:36 +0000 (19:04 +0000)]
Fix a minor error in the cg_anno.tcl script causing the cycles-per-file counts
to be miscomputed.
FossilOrigin-Name:
b26df26e184ec6da4b5537526c10f42a293d09b5
drh [Thu, 8 Dec 2016 18:36:19 +0000 (18:36 +0000)]
Update the tool/cg_anno.tcl script to give a summary of cycle counts by
canonical source file name.
FossilOrigin-Name:
254a83bf30c15d6a355db309ccb97a8744675cc3
drh [Thu, 8 Dec 2016 01:38:24 +0000 (01:38 +0000)]
More changes to take advantage of the sqlite3VdbeAppendP4() method.
FossilOrigin-Name:
83bc5e40af9b20afeed008bf3e2669b7ac9e2dc8
drh [Wed, 7 Dec 2016 21:35:55 +0000 (21:35 +0000)]
Add the sqlite3VdbeAppendP4() method for adding P4 content to the most recently
coded instruction.
FossilOrigin-Name:
28883e8f3e92a8015fb5f6c8ae8580833931543d
drh [Wed, 7 Dec 2016 20:22:31 +0000 (20:22 +0000)]
The use P4_DYNAMIC in place of the P4_MPRINTF operand type.
FossilOrigin-Name:
3954f83798ed78527280c9db6360c62a5134b9ec
drh [Wed, 7 Dec 2016 20:09:51 +0000 (20:09 +0000)]
Performance optimization for sqlite3VdbeAddOp4().
FossilOrigin-Name:
04716c907bf9fc9b827e18fdc7b4e1069e201536
drh [Wed, 7 Dec 2016 17:06:12 +0000 (17:06 +0000)]
Put the SQLITE_UNTESTABLE compile-time option in the correct order for
PRAGMA compile_options.
FossilOrigin-Name:
24574a15a336ffcb961334f84b56e9ab98490a79
drh [Wed, 7 Dec 2016 15:49:02 +0000 (15:49 +0000)]
Rename the SQLITE_OMIT_BUILTIN_TEST compile-time option to SQLITE_UNTESTABLE.
FossilOrigin-Name:
f360818737e73ee4f944685a547abc8f14f47819
dan [Wed, 7 Dec 2016 15:38:37 +0000 (15:38 +0000)]
Prevent the flattening or where-term push-down optimizations from obscuring
misuses of SQL row values that can lead to crashes or assert() failures.
FossilOrigin-Name:
433d16ff3adfede3be53d5b0e0512f37e225591b
drh [Wed, 7 Dec 2016 13:49:11 +0000 (13:49 +0000)]
Always honor the sqlite3.dbOptFlags bitmask, regardless of compile-time
options. Continuing fix for ticket [
da78413751863 ].
FossilOrigin-Name:
afab166313e0b8ad530df99887437a362398ed02
drh [Tue, 6 Dec 2016 22:47:23 +0000 (22:47 +0000)]
Performance improvement and size reduction in the Expr node allocator
function sqlite3PExpr().
FossilOrigin-Name:
2a81763e68cdf9b8c46389b1e1a87bc2084b53e7
dan [Tue, 6 Dec 2016 19:33:42 +0000 (19:33 +0000)]
Add missing nul-terminator to a Tcl_AppendResult() call in tclsqlite.c.
FossilOrigin-Name:
0820f8b3dedfc846d187844847dfa8617539fc9a
drh [Tue, 6 Dec 2016 17:59:05 +0000 (17:59 +0000)]
In the LEMON parser-generator, fix the stack overflow processing so that it
correct invokes the destructor on the top-level of the parse stack.
FossilOrigin-Name:
e8247065cf1d929f42d13864f8a1886ed4d329cd
drh [Mon, 5 Dec 2016 20:16:04 +0000 (20:16 +0000)]
Fix a harmless redundant local variable declaration in the date/time function
logic.
FossilOrigin-Name:
b4bc40d1836d8ed0803b81a734ce48be8e9d434a
drh [Mon, 5 Dec 2016 20:06:45 +0000 (20:06 +0000)]
Work around a bug in the definition of "ino_t" on some versions of Android.
FossilOrigin-Name:
8df492c1711bfea250264fdaa4892e0842705f83
drh [Fri, 2 Dec 2016 19:07:03 +0000 (19:07 +0000)]
Simplify the date/time function logic for improved rebustness and also to
decrease the size of the binary.
FossilOrigin-Name:
6e144735ed0cd3d4461ae6a4d8034264563e3165
drh [Fri, 2 Dec 2016 17:08:27 +0000 (17:08 +0000)]
Extend the valid range of 'unixepoch' dates from JulianDay 0 through 9999-12-31.
FossilOrigin-Name:
768c9859b21a3c88be084d6dd87acab4211b3a87
drh [Fri, 2 Dec 2016 02:19:24 +0000 (02:19 +0000)]
Test cases for the improved LIKE/GLOB matcher.
FossilOrigin-Name:
0bdb7ae126d3909344640813489ee68ecad041c4
dan [Thu, 1 Dec 2016 19:58:01 +0000 (19:58 +0000)]
Avoid clearing the EP_FromJoin flag from terms in ON clauses when flattening
sub-selects. Possible fix for [
2df0107b ].
FossilOrigin-Name:
a427c4052820d90c3c8c23abf9097f973e564010
dan [Thu, 1 Dec 2016 19:38:05 +0000 (19:38 +0000)]
Avoid clearing the EP_FromJoin flag from terms in ON clauses when flattening
sub-selects. Possible fix for [
2df0107b ].
FossilOrigin-Name:
8bed4cd549759a93c4a087d8d8c08c0068ba8d59
drh [Thu, 1 Dec 2016 18:57:58 +0000 (18:57 +0000)]
Performance improvement for GLOB and LIKE matching for patterns with two
or more multi-character wildcards ("*" or "%").
FossilOrigin-Name:
2df0ebf95f6a25c77777c33685303e81550fd739
drh [Thu, 1 Dec 2016 18:49:40 +0000 (18:49 +0000)]
Faster version of patternCompare() that uses new return values rather than
an extra parameter to communicate wildcard information back up to parent
searches.
FossilOrigin-Name:
a1e2b6ce3af690ae91bda3d056357205c4018da7
dan [Thu, 1 Dec 2016 17:34:59 +0000 (17:34 +0000)]
Modify the patternCompare() function (used for GLOB, LIKE) to better handle
patterns containing multiple wildcard characters ("*", "%").
FossilOrigin-Name:
c5e5614d98a752738c081fecdd1e349a1a92b0e5
drh [Wed, 30 Nov 2016 16:54:52 +0000 (16:54 +0000)]
Add the remember(V,PTR) extension function which copies an SQL value into
an application variable.
FossilOrigin-Name:
d2d30914d81022d7d4e1670caf9326524520deaf
drh [Wed, 30 Nov 2016 14:47:37 +0000 (14:47 +0000)]
Fix then handling of the (oversized) integer literal -0x8000000000000000.
FossilOrigin-Name:
3816bb415ecfd4f36430d0fcbc878e382975de60
drh [Wed, 30 Nov 2016 05:08:59 +0000 (05:08 +0000)]
Change the OP_DecrJumpZero opcode back to its old behavior of always
decrementing, except top the decrementing when it reaches the largest negative
number.
FossilOrigin-Name:
9d0d8c2e7c529562889de02346733dcb532e9388
drh [Wed, 30 Nov 2016 04:07:57 +0000 (04:07 +0000)]
More improvements to boundary cases in the date/time functions, flowing out
of branch coverage testing.
FossilOrigin-Name:
1218005ab7b52ef45db1354d17fdd8a1a1af9854
drh [Wed, 30 Nov 2016 01:05:41 +0000 (01:05 +0000)]
Prevent a warning about integer overflow when using a very large negative
LIMIT.
FossilOrigin-Name:
96106d5620eae51474234f4eec1d2c5bd570d486
drh [Wed, 30 Nov 2016 00:48:28 +0000 (00:48 +0000)]
Further changes to the date/time functions to suppress harmless signed
integer overflow warnings that could have occurred when doing out-of-range
date calculations which, according to the docs, give undefined results.
FossilOrigin-Name:
dc453b3403450b1d8cc53daf0721fed025b9053c
drh [Tue, 29 Nov 2016 20:39:48 +0000 (20:39 +0000)]
The documentation says that the built-in date-time functions give undefined
results for dates before 0000-01-01 and after 9999-12-31. Change the
actually implementation so that the answer given is really NULL. This also
avoids unnecessary hand-wringing over an signed integer overflow that might
otherwise occur when processing out-of-bound dates.
FossilOrigin-Name:
d410a839752153c6d8be08f758abfbc16475745a
drh [Mon, 28 Nov 2016 21:22:26 +0000 (21:22 +0000)]
Fix broken hyperlinks to the sqlite3_snapshot objection definition
in the documentation. No changes to code.
FossilOrigin-Name:
9021f6875f897d8b609ebcc04162dc6e0b529a4a
dan [Mon, 28 Nov 2016 14:52:23 +0000 (14:52 +0000)]
Simplify some code in fts5_expr.c. Add some extra test cases for the same.
FossilOrigin-Name:
7cc2d60dce90b8d4dca35708e33002ae6387806e
drh [Sat, 26 Nov 2016 19:44:40 +0000 (19:44 +0000)]
Add the sqlite3_snapshot_recover() interface and related functionality.
FossilOrigin-Name:
b70c85ce6d07b08e13f4ea99edb8f4855a6d7580
drh [Fri, 25 Nov 2016 20:20:40 +0000 (20:20 +0000)]
Clarification of the behavior of sqlite3_stmt_readonly() on BEGIN IMMEDIATE
statements. The is comment changes only - no changes to code.
FossilOrigin-Name:
a4205a83e4ed977a89ecae665604993711f7dd3f
drh [Fri, 25 Nov 2016 19:32:32 +0000 (19:32 +0000)]
Remove the OP_RowKey opcode. Use OP_RowData in its place.
FossilOrigin-Name:
6ac7b07a4aff2e1a9031289e3dafdb9ac0071c24
drh [Fri, 25 Nov 2016 19:18:28 +0000 (19:18 +0000)]
Refactor the sqlite3BtreeKey() and sqlite3BtreeData() internal interfaces
into sqlite3BtreePayload() and sqlite3BtreePayloadChecked(), respectively.
This is a continuation of the optimization started by check-in
[
2d831074cf ]. The result is a slightly smaller and faster binary.
FossilOrigin-Name:
49ebc219faea30eaa61def4a3fba2817b9c58a86
drh [Fri, 25 Nov 2016 17:03:03 +0000 (17:03 +0000)]
Small performance increase and size reduction in the OP_Column opcode.
FossilOrigin-Name:
a9498407e646305e7b60115d63e85c642bbd1c3f
drh [Fri, 25 Nov 2016 15:47:53 +0000 (15:47 +0000)]
Performance enhancement to sqlite3_snprintf().
FossilOrigin-Name:
c53dca7fadd81ea340fef776373cbb122c9ccd46
drh [Fri, 25 Nov 2016 15:11:26 +0000 (15:11 +0000)]
Performance improvement in sqlite3StrAccumFinish() for the common case where
no memory allocation is required.
FossilOrigin-Name:
b6acf5d4ef016326a079463e70e71c2fc95a352d
drh [Fri, 25 Nov 2016 14:30:42 +0000 (14:30 +0000)]
Add a comment to help clarify the EP_FromJoin hack in exprCodeBetween().
FossilOrigin-Name:
6df7c5747e0247b14bf015ef4320ddcf6fccf694
drh [Wed, 23 Nov 2016 23:18:45 +0000 (23:18 +0000)]
Fix the error message for invalid ".mode" arguments in the command-line shell,
so that it mentions the new "quote" mode.
FossilOrigin-Name:
9a603a18ef626b7d7a24b82eb961d6d8b4926195
dan [Wed, 23 Nov 2016 19:31:18 +0000 (19:31 +0000)]
Code constant vector components outside of any loops in CASE and BETWEEN
expressions. Fix for [
1a684656 ].
FossilOrigin-Name:
c08aff13ead3e6a8b92c0f031b08f7e556922e70
drh [Wed, 23 Nov 2016 14:19:11 +0000 (14:19 +0000)]
Correctly display the names of SQL functions in the VDBE_PROFILE output.
FossilOrigin-Name:
161192f17273f32f1b3b82d41135aaca047e9a83
drh [Tue, 22 Nov 2016 22:23:56 +0000 (22:23 +0000)]
Merge bug fixes and enhancements from trunk.
FossilOrigin-Name:
e2c4bdf54fc1b9605226c7d6c79ef4f8302d6213
drh [Tue, 22 Nov 2016 21:11:59 +0000 (21:11 +0000)]
Enclose the sqlite3WalSnapshotRecover() routine within
FossilOrigin-Name:
e7be3183eb25e0f9f04b9e251ff37fa5e50cc1a7
drh [Tue, 22 Nov 2016 20:29:05 +0000 (20:29 +0000)]
Add a new requirement mark for CAST expressions.
FossilOrigin-Name:
bee2859b953c935c413de2917588159d03c672d9
drh [Tue, 22 Nov 2016 19:15:05 +0000 (19:15 +0000)]
Update requirement marks to reflect changes in wording in the documentation.
No changes to code.
FossilOrigin-Name:
f5ac98efb5d5f7751c5c560bed9c7885e60ac4bc
drh [Tue, 22 Nov 2016 01:26:42 +0000 (01:26 +0000)]
Remove unnecessary OP_Close opcodes for a size reduction and performance
increase.
FossilOrigin-Name:
32be7aae92ee48bf2cd260ea41e79c2bc62738f9
drh [Mon, 21 Nov 2016 21:33:46 +0000 (21:33 +0000)]
Remove unnecessary OP_Close opcodes at the end of INSERT operations, resulting
in smaller and faster code.
FossilOrigin-Name:
abeddb6d5a4040e1d0a87a4f32ad79794ba0842b
drh [Mon, 21 Nov 2016 18:15:35 +0000 (18:15 +0000)]
Enhance speedtest1.c so that is works on older versions of SQLite, before
the introduction of the group_concat() aggregate function.
FossilOrigin-Name:
9979ba80a649ee61d9d174dc9d9fcab7e9fc1332
drh [Sun, 20 Nov 2016 17:59:59 +0000 (17:59 +0000)]
Fix harmless compiler warnings.
FossilOrigin-Name:
b3b7b42d9a4a0e7e2be8b2933328a7bec2f49a81
drh [Sun, 20 Nov 2016 12:00:27 +0000 (12:00 +0000)]
Prevent a possible use-after-free bug in the query optimizer.
FossilOrigin-Name:
0a98c8d76ac86412d5eb68de994658c250989349
dan [Sat, 19 Nov 2016 18:31:37 +0000 (18:31 +0000)]
Remove the requirement to open the wal file before sqlite3_snapshot_recover()
is called. Also add some comments to new functions.
FossilOrigin-Name:
28393c413cc4505b94411730e728583c5d4baaae
dan [Sat, 19 Nov 2016 17:30:57 +0000 (17:30 +0000)]
Test some extra error conditions in sqlite3_recover_snapshot().
FossilOrigin-Name:
db314213c08f27dd0ff5ede3c6a8eda36560809a
dan [Sat, 19 Nov 2016 17:20:28 +0000 (17:20 +0000)]
Add another fault-injection test for sqlite3_snapshot_recover().
FossilOrigin-Name:
7e040406138669bd67dd6ecae016b3e50dbfaaf8
dan [Sat, 19 Nov 2016 16:35:53 +0000 (16:35 +0000)]
Fix a problem causing sqlite3_snapshot_recover() to return
SQLITE_IOERR_SHORT_READ.
FossilOrigin-Name:
525f75fa9fd4a95acc3fb3b0a01dabe2be39b383
dan [Sat, 19 Nov 2016 14:53:22 +0000 (14:53 +0000)]
Fix a bug in sqlite3_snapshot_recover() that could cause subsequent read
transactions to use out-of-data cache entries.
FossilOrigin-Name:
9abeb7980a34cec11a3420e14ad98a4ec0d9c599
dan [Fri, 18 Nov 2016 20:49:43 +0000 (20:49 +0000)]
Add experimental sqlite3_snapshot_recover() API.
FossilOrigin-Name:
174a6076a8d7bebe5efebf55f3fdc5d87c589cc7
dan [Fri, 18 Nov 2016 18:43:39 +0000 (18:43 +0000)]
Require that the database handle be in autocommit mode for
sqlite3_snapshot_get() to succeed. This is because it may open a read
transaction on the database file.
FossilOrigin-Name:
83b658dad091211ade3594d1e8d00ce525882506
dan [Fri, 18 Nov 2016 18:22:05 +0000 (18:22 +0000)]
Add tests for snapshot interfaces.
FossilOrigin-Name:
1f7ee7af7b620262ae663d65889b6a87415d4a34
dan [Fri, 18 Nov 2016 14:38:41 +0000 (14:38 +0000)]
Enhance existing snapshot tests to serialize/deserialize snapshots. No new
tests.
FossilOrigin-Name:
16b9bf92741e4c62874cffd7c6a61763c5054c7a
drh [Thu, 17 Nov 2016 21:52:08 +0000 (21:52 +0000)]
Experimental changes for faster in-memory DB operation for large databases.
FossilOrigin-Name:
4fe94b0f1841180dfd8cac33838e335dc6a428bf
dan [Thu, 17 Nov 2016 20:05:00 +0000 (20:05 +0000)]
Fix a problem in rtreeD.test causing it to fail in OMIT_BUILTIN_TEST builds.
FossilOrigin-Name:
d6b3779e6dad038d8bc35139cf314bf1e6e91977
drh [Thu, 17 Nov 2016 13:54:21 +0000 (13:54 +0000)]
Change the --enable-debug option on configure so that it enables the
".selecttrace" and ".wheretrace" commands in the command-line shell.
FossilOrigin-Name:
2331192b4ca6a169b6ac0daafb21ceb7c390de65
drh [Thu, 17 Nov 2016 13:13:25 +0000 (13:13 +0000)]
Disable the query flattener optimization for SELECT statements that are on
the RHS of vector IN operators. This is a hack that fixes the bug
described in ticket [
da7841375186386c ]. A better solution that does not
disable the query flattener is needed, but this will server for the time
being.
FossilOrigin-Name:
005d5b870625d175fdf3c0e87d974006c569d9e1
drh [Tue, 15 Nov 2016 21:17:13 +0000 (21:17 +0000)]
Add a needed #include to speedtest1.c.
FossilOrigin-Name:
77aeb705c37b1bf61a05b5e4a09f5b5cd67d07bc
drh [Tue, 15 Nov 2016 17:37:56 +0000 (17:37 +0000)]
Experimental changes toward making snapshots serializable.
FossilOrigin-Name:
b6a81fa1fc1fb78a65894129851a4ec3986640de
drh [Tue, 15 Nov 2016 04:00:24 +0000 (04:00 +0000)]
Change the OP_Last opcode so that it is a no-op if the cursor is already
pointing at the end of the b-tree.
FossilOrigin-Name:
663473850c4274270445b3771911fa773a8c405f
drh [Tue, 15 Nov 2016 02:46:39 +0000 (02:46 +0000)]
Make the VACUUM command about 9% faster by avoiding unnecessary calls
to sqlite3BtreeMovetoUnpacked() while copying rowid tables.
FossilOrigin-Name:
5ed0bd387699a0f3b477d4f3cfcb460a6a44cb84
drh [Mon, 14 Nov 2016 20:47:18 +0000 (20:47 +0000)]
Add 8794 new test cases received from the OSS-FUZZ project.
FossilOrigin-Name:
03f75a67c320f21192d721a8c34d49dea48ffdbb
drh [Mon, 14 Nov 2016 20:08:00 +0000 (20:08 +0000)]
Fix a potential use-after-free error during parsing of malformed
CREATE TABLE statement.
FossilOrigin-Name:
c5dbc599b910c02a961675b12b273b8df6d29450
drh [Mon, 14 Nov 2016 18:27:41 +0000 (18:27 +0000)]
Enhance fuzzcheck.c to accept database-specific configuration parameters in
the option CONFIG table. Add the fuzzdata5.db fuzz database containing
test cases from OSS-FUZZ.
FossilOrigin-Name:
a71fad4538311ede111815d221d9eb8d9018092b
drh [Mon, 14 Nov 2016 17:25:57 +0000 (17:25 +0000)]
Fix the ossfuzz.c test module so that it does not segfault after a
"PRAGMA empty_result_callbacks=1;". Add the ossshell.c program for
simple command-line testing of ossfuzz.c.
FossilOrigin-Name:
6f2d43eca68175ed28abae3afa792095af906af2
drh [Mon, 14 Nov 2016 15:28:56 +0000 (15:28 +0000)]
Avoid unnecessary calls to sqlite3ExprCacheAffinityChange() when generating
OP_MakeRecord opcodes that do not change any register affinities.
FossilOrigin-Name:
e211c579b2f092e3283edd5fb9add7c5183bac35
dan [Mon, 14 Nov 2016 08:19:37 +0000 (08:19 +0000)]
Fix an fts5 problem causing a crash in phrase queries where the first token of
the phrase matches one or more rows but some other token within the phrase
matches zero.
FossilOrigin-Name:
e78f6f3bbf4781850960fe6741f7cba480f2c27d
drh [Fri, 11 Nov 2016 20:37:27 +0000 (20:37 +0000)]
Fix harmless compiler warnings in test code for MSVC.
FossilOrigin-Name:
7b76be4117f4e57091b03fafcf42d17bce81160d
drh [Fri, 11 Nov 2016 19:08:00 +0000 (19:08 +0000)]
Avoid storing redundant fields in sorter records when the sort-key
and data have fields in common.
FossilOrigin-Name:
b835cf3e507b910b6a3e0f802ce2c40a72d0c227
drh [Fri, 11 Nov 2016 19:01:11 +0000 (19:01 +0000)]
Enhance the OP_IdxInsert opcode so that it can used unpacked key values if
they are available. Update the code generator to take advantage of this
new capability. The speedtest1.c test is about 2.6% faster as a result.
FossilOrigin-Name:
925840cfdb969a76640a1247cc4a7b2c0de5cb74
dan [Fri, 11 Nov 2016 18:45:55 +0000 (18:45 +0000)]
Merge trunk with this branch.
FossilOrigin-Name:
dd62d2de6eb12dc1902d6df050c395b1dcac01b4
drh [Fri, 11 Nov 2016 18:19:05 +0000 (18:19 +0000)]
Remove obselete and unused logic in the update code generator.
Fix the sqlite3BtreeMovetoUnpacked() routine so that it remembers the
rowid of the row that it landed on.
FossilOrigin-Name:
1a587d72f981cb7064cfd8916a52a83ad9ba6074