drh
9a541c0361
Improve the sqlite3_result_pointer() interface so that it cannot be faked
...
using sqlite3_result_null() and sqlite3_result_subtype().
FossilOrigin-Name: c13264d5ef0470fb24e09f7bc12f19be3b77eab06d41f55607b38dddb532a132
2017-07-17 11:39:46 +00:00
drh
ae3ec3f920
Add an experimental "pointer type" parameter to sqlite3_bind_pointer(),
...
sqlite3_result_pointer(), and sqlite3_value_pointer(). The pointer type is
a string that must compare equal using strcmp() or else the pointer comes
through as a NULL.
FossilOrigin-Name: 211cce04e97d2e325a6ea3e99738fc71115d673dc13daeffb03ac3140deb11de
2017-07-17 00:40:19 +00:00
drh
fe8eadc94d
Merge the fix for ticket [a4e06e75a9ab61a12] from trunk.
...
FossilOrigin-Name: b64d64c84484162d1822430036ba0483365a39ef4cf82cd6a7b9436d9e9f50c8
2017-07-15 20:44:33 +00:00
drh
3963e584b4
Fix a register allocation problem in PRAGMA integrity_check that caused
...
the same register to be used for two different purposes on the first
ATTACHed database if the schema for the ATTACHed database was noticable
more complex than the schema for the first database.
Fix for ticket [a4e06e75a9ab61a1].
FossilOrigin-Name: 253945d480b052bfe311888022b5eb0be91c8c80cda05036e58207d57520262c
2017-07-15 20:33:19 +00:00
drh
e7c6f97b1d
Fix a missing \n at the end of a comment causing a line to be too long.
...
No code changes.
FossilOrigin-Name: 687bd478710eb827e041533eea67115464f5a0de767bb6cfdbe36a0d3c597fa1
2017-07-15 20:25:22 +00:00
drh
a4e54e868e
Enhance the showstat4 utility program to show the full precision of
...
floating point values in sqlite_stat4 tables.
FossilOrigin-Name: 5ec37c62f65b2870dcd7a906912da787367f3912a96b6f3536355fad65903575
2017-07-15 17:57:31 +00:00
drh
a4d770cf60
Minor change to one of the command-line shell test scripts to make that
...
script compatible with Tcl 8.5.
FossilOrigin-Name: 47cf83a0682b7b3219cf255457f5fbe05f3c1f46be42f6bbab33b78a57a252f6
2017-07-15 13:49:56 +00:00
drh
13c6fc5c6c
First release candidate for version 3.20.0.
...
FossilOrigin-Name: 035a86ec3e4abd2173bfd0d8666ec86bd85af414cb791e68e6334447ecd35b84
2017-07-15 13:35:17 +00:00
dan
cb0d3ba862
Fix another minor problem in test file like.test.
...
FossilOrigin-Name: 0953e74612358f48a9c9e3772876b514bc79784f277497121c59302a3106110c
2017-07-15 08:02:10 +00:00
dan
a50b309187
Fix test problems causing the "prepare" permutation test to fail.
...
FossilOrigin-Name: b61cc5a0f9f2c2d2175ad30fc3fa4cb2086dbb948d5a5cc538ac43b871bb5221
2017-07-15 06:35:15 +00:00
dan
04ed43d64d
Fix test problems with stmtvtab1.test under some permutations.
...
FossilOrigin-Name: ad6699d476b93131887e30475517764e281647f94df4a8248e2b88f1f14da91d
2017-07-14 20:53:21 +00:00
drh
858205d8bd
Fix a typo in a comment used to generate documentation. No code changes.
...
FossilOrigin-Name: 65f9f29c58f61646d700eee6610ce85b572306f0ce2f19bebfd37632523019e5
2017-07-14 19:52:47 +00:00
drh
749e4a9fd1
Identify requirements text in the SQLITE_DBCONFIG_ENABLE_QPSG documentation.
...
Add some implementation marks for SQLITE_DBCONFIG_MAINDBNAME requirements.
No code changes.
FossilOrigin-Name: ab165dcf35ae7385c9366853ce5648294bf5dc9aa9ffe1af84243e6fac3472fc
2017-07-14 19:47:32 +00:00
drh
3cef364966
Add requirements marks for some of the new features in the 3.20 release.
...
FossilOrigin-Name: 264238671379306b14d62a6ddaefd2a20acd34ca77276b6ce872253160fe0146
2017-07-14 19:22:08 +00:00
dan
380c7ce460
Tweak Makefile.in so that testfixture can be built with the
...
--disable-amalgamation configure switch.
FossilOrigin-Name: 394c6f4f4376bc3d7796ea4157ba2ae230b0ca950774eff127ae6ef8a7b08602
2017-07-14 19:12:26 +00:00
dan
0e6b83088f
Modify mkopcodeh.tcl so that it can handle "same as" opcodes with values
...
larger than the total number of opcodes.
FossilOrigin-Name: 1eb56fe0305f0841b14865b7560add3da529b211328f5fa171b9628418a6ed49
2017-07-14 17:50:11 +00:00
drh
c9fb27bfa8
In the LSM1 virtual table, dequote the filename before opening the file.
...
FossilOrigin-Name: 6ed4ef03ff6f22ae83a14facc48ce594911d7d7b37446436b68af3a822578fae
2017-07-14 15:57:56 +00:00
mistachkin
59541d70a8
Changes to the LSM1 Tcl tests to make things work on Win32.
...
FossilOrigin-Name: 7dc5e70ef1faa0b51a04abdfe1ee2f9ea5c2d0f99ea8ef6260b9de02500cf8b2
2017-07-14 15:45:27 +00:00
drh
a199ffca58
Include a hint in the header comment of the LSM1 makefile about how to
...
set the LSMOPTS variable.
FossilOrigin-Name: b5e3b264814cde9572130b70fc0d21ccebc2d7f5f0e7db50b6395cb63723383e
2017-07-14 15:42:11 +00:00
drh
aa15168983
Update the Makefile for LSM1 so that the LSMOPTS can be set prior to
...
including the Makefile, in order to add platform arguments such as -fPIC.
FossilOrigin-Name: fe319bcd7f85e9997babdb024ab350514524f5901903600fa9780bdcd1805098
2017-07-14 15:32:11 +00:00
drh
3eddffd8bb
Fix a typo in the header comment to the remember extension. No code changes.
...
FossilOrigin-Name: 604b9664f4dd6e8d188b5c57407edbbe0639345f8d30bf2d19016f8324934840
2017-07-14 15:18:51 +00:00
drh
e83b847b75
Change the name of the STMT virtual table to SQLITE_STMT. Also remove the
...
first column of that virtual table, which was a pointer leak.
FossilOrigin-Name: 1bc4e93407b7894b0271fbde3720930dcaadda6070e871d9719c4e8dc65b915f
2017-07-14 15:14:21 +00:00
drh
923260c865
Minor updates to requirements marks and documention. No changes to code.
...
FossilOrigin-Name: 8f6dd5e2907d6df230fcbceadd226496bcc35a33c117da58215f7d333c1cc7b8
2017-07-14 13:24:31 +00:00
dan
4b8035e69b
Add very simple tcl tests for the lsm1 extension.
...
FossilOrigin-Name: 5e0a97930b08fff1c3a29f5c8b2962b856e3302209228c0e71b9f1a1bd2a4be3
2017-07-14 11:40:48 +00:00
drh
17ca22616b
Minor tweaks to documentation. No code changes.
...
FossilOrigin-Name: d8cd0434f3451e27aefe38a1a9efdc4dfded2ea33baf25d82814c89264f3afff
2017-07-14 04:16:03 +00:00
drh
968d8715fd
Fix harmless compiler warnings in the readline tab-completion logic of the
...
command-line shell.
FossilOrigin-Name: 271ca4acfcff448cf863045595d2c2616decd13b6015d7db481c91e2ad5bb92a
2017-07-14 00:28:28 +00:00
drh
33b46eeb35
Improved documentation for the new sqlite3_bind_pointer() interface and its
...
cousins.
FossilOrigin-Name: 889968bdbf1c258238cb68d82f059e16366c4a40c2d541dd4a1811ab72e693cb
2017-07-13 22:39:15 +00:00
drh
4ba5f33f39
Improvements to the documentation for SQLITE_PREPARE_PERSISTENT.
...
No code changes.
FossilOrigin-Name: 265778142485882f39edfb5756175b2675c1993f0d6395dabbcbbb3767c6ec77
2017-07-13 22:03:34 +00:00
drh
06aecf0954
Fix documentation typo. No changes to code.
...
FossilOrigin-Name: 9319f7b71f68c9dc64c22c60b90650955b72f6bd9852d5ea86fa96a5c6fede37
2017-07-13 20:11:52 +00:00
drh
c9407508b1
Update header comments on the carray() and remember() extensions to bring
...
out the fact that the pointer arguments must be bound using
sqlite3_bind_pointer().
FossilOrigin-Name: 55f5396576d186f310cb0fa66fbdb8ea68c18a3d0fe5de4b395ea03c7aa04c9e
2017-07-13 19:11:13 +00:00
drh
96b10030e9
Add new interfaces sqlite3_bind_pointer(), sqlite3_result_pointer(), and
...
sqlite3_value_pointer() used to safely move pointer values through SQL without
exposing underlying memory address information.
FossilOrigin-Name: 72de49f204277191f62601cce70d5013ec30b564a01063f1e841019c78ae6c77
2017-07-13 18:09:36 +00:00
drh
4c997c6e75
Fix an incorrect type signature for the loadable extension pointer
...
for sqlite3_result_pointer().
FossilOrigin-Name: 0bd7875bd9948836a14061275eb8ddac627f562a49f59f400ec98c00e2be82c5
2017-07-13 17:56:52 +00:00
drh
5587d86ddd
Add the three new pointer interfaces to the loadable extension mechanism.
...
Update sqlite3_value_subtype() documentation to remove the statement about
it not being used internally.
FossilOrigin-Name: e5a518038fcb23376d2b17d4d70648320bc5540c5bd8b164201044ebe1ce45c5
2017-07-13 17:54:12 +00:00
drh
d43748aa98
Update the FTS3 extension to use sqlite3_result_pointer() and
...
sqlite3_value_pointer() for passing FTS3 cursor objects from the table
into functions such as snippet().
FossilOrigin-Name: 0fa2e170e5e078d155c98b212ade36bd8424502ae07f2d82ebf77a76f57586ba
2017-07-13 17:48:14 +00:00
drh
3fb406083a
Merge the latest changes from trunk.
...
FossilOrigin-Name: a54be6e041a9185787a22b86603dcb0654e5e4af71225b556d1b6279f8520ad8
2017-07-13 17:34:46 +00:00
drh
0c2433003d
Smaller and faster implementation for vdbeFreeOpArray() and freeP4().
...
FossilOrigin-Name: 0c80593520d30958231be41fc443209eb39e0b3ee0e66308c3ef3a0f4cb8ea66
2017-07-12 20:43:23 +00:00
drh
7ccf95dbab
Fix harmless compiler warnings about incomplete structure initializers.
...
FossilOrigin-Name: 604c11d1a39f09e47b6fcee0f8b1c1054f9dbbc7b2c1cf93312aeaa4b7095018
2017-07-12 18:05:54 +00:00
drh
980a89e630
Remove unnecessary EP_Leaf settings on the Expr object.
...
FossilOrigin-Name: f951c8b71b2369da62a329c792af5e3d3087bbe020f38c68ca1d0a594b904c08
2017-07-12 17:26:44 +00:00
drh
971ecd7eaa
The EP_Resolved flag on the Expr object is not required for correctness nor
...
performance, so remove it.
FossilOrigin-Name: 54f55d3b7973e326541a81bfb2e752a2f6618e4fec9a3631b95f28e12e9c6e34
2017-07-12 17:08:24 +00:00
drh
ec360a8d01
Clarification and simplification and result column naming logic.
...
FossilOrigin-Name: 68824a439b76a4cca05609a02de7abdc42bd1d26afbfcd047b90001c610d3c56
2017-07-12 14:10:19 +00:00
dan
47ebd4cadd
Fix a problem in an lsmtest test case caused by writing data in "text" mode
...
instead of "binary".
FossilOrigin-Name: 3e56a79ad8754e6da3181883154fa1c8b227a8d16c9b2a3eba925371595ae1f9
2017-07-12 14:03:13 +00:00
drh
f0f44b79c9
Compile cleanly with SQLITE_OMIT_UTF16.
...
FossilOrigin-Name: 783100b801703577e35ec12fe7623e1797e49699f3b8deb0694ef061a142b844
2017-07-12 12:19:33 +00:00
dan
1cd523cf0f
In lsm, attempt to unmap the database file before truncating it when
...
disconnecting. A mapped file may not be truncated on win32.
FossilOrigin-Name: 39069941e98605bc8c7c736819781761760ee2b83363471ceb6f19e5eb06b13a
2017-07-11 20:36:35 +00:00
dan
416b8694fa
Simplify the way in which the database file is truncated when the last
...
connection disconnects. Also ignore the error code from the xTruncate call -
as truncating a database file is always optional.
FossilOrigin-Name: b0a49d90fc91acca1306cf6145adc83acd368686768b7eb4a3b27515b3237396
2017-07-11 19:55:38 +00:00
drh
8999798e60
Fix harmless compiler warnings in the core.
...
FossilOrigin-Name: 55e93f256018757e5e1cb3b10ef48abf5914e7687419eae58b00998a37061261
2017-07-11 18:11:33 +00:00
mistachkin
ba334bb20d
Make win32GetTimeOfDay() in the lsm1 test code more portable.
...
FossilOrigin-Name: 2fe3a84330063378ca9fc5bfc8efe486c52d50b5c40be4f402a4f2318be69436
2017-07-11 17:54:27 +00:00
drh
db3e0456d2
Enabled the new sqlite3_prepare_v3() and sqlite3_prepare16_v3() interfaces
...
for loadable extensions.
FossilOrigin-Name: b9debd626a68c4bc0e5fdeb8d15a991cfe6f62f9586eda76c07a1c18e498e3c2
2017-07-11 17:28:27 +00:00
mistachkin
b7bfc3b12d
Fix a whitespace alignment issue in lsm1.
...
FossilOrigin-Name: a8e651e0e52b016c3939df3ee23b4981f1a8841c7ddd2981c1ef391feb559a5e
2017-07-11 17:06:42 +00:00
mistachkin
36c68234d6
Fix more harmless compiler warnings in lsm1, seen with MSVC 2015.
...
FossilOrigin-Name: 0f1307f1f5638c1c4f1ce2b89cdef7ce8b76dc2a38685cd1ca152cde9e8727da
2017-07-11 16:46:41 +00:00
mistachkin
1be5051923
Fix harmless compiler warnings seen with MSVC for lsm1.
...
FossilOrigin-Name: cf6da4a52f7f9047e653ef2972e4c0910b29d7182d789a9e30225dc1849e8779
2017-07-11 16:36:10 +00:00
drh
56eb09bc23
Add support for tab-completion (using the ext/misc/completion.c virtual table)
...
to the command-line shell.
FossilOrigin-Name: 95cd1d9f8baa6be305c9a8bfa26fef2a403f2d5b3b5c9c55382ec04f0bc98d40
2017-07-11 13:59:07 +00:00
drh
2ce15c3f4c
Change the src/shell.c file so that it is generated from a new script at
...
tool/mkshellc.tcl and the template file src/shell.c.in, and automatically
includes the extensions it needs out of ext/misc.
FossilOrigin-Name: 17e0bb12d82b510b86b6886b9fd0faf39b60b1374027344f89d7b89a32b842b9
2017-07-11 13:34:40 +00:00
drh
e2b01012bc
Fix a backup2 test case so that it works on FreeBSD.
...
FossilOrigin-Name: 724819b456ca7a5ca6d68415b3b3554741c3ddbb5c416cb6b6b5fc54177f426e
2017-07-11 02:53:38 +00:00
drh
f3c0009d8b
Add the "phase" output column on the COMPLETION table-valued function, for
...
debugging. Improved comments on the implementation.
FossilOrigin-Name: 0e2135552757cc6566ac959475d3b87254b6d462425ee6c457c743001f3370e2
2017-07-11 02:05:21 +00:00
drh
dc4dde6bd9
The COMPLETION virtual table now looks at the names of databases, tables,
...
and columns in addition to SQL keywords.
FossilOrigin-Name: 1cc97711fa86a3938f0930200476d1b0991e4b893a8be3a19015423a3de56bef
2017-07-11 01:38:45 +00:00
drh
3265b5649e
Incomplete implementation of the COMPLETION table-valued function. So far it
...
only works for SQL keywords.
FossilOrigin-Name: caefbc723b5f67afc5ef10b92b20400cbb76cb03e7e75e18d2726cc552083e09
2017-07-11 00:09:44 +00:00
mistachkin
b2950c48e1
Fix harmless compiler warnings in lsmtest.
...
FossilOrigin-Name: bd8a1fb9b33418717c786a7275f636cd4d5facd66de9a416f948b61c6490c743
2017-07-10 21:32:11 +00:00
drh
4a9e14077e
Fix errors in comments in the STMT virtual table. No code changes.
...
FossilOrigin-Name: 9a8f045d62f5c6593a5a2842e817b49fa9d00c74e329a15a326f74e583c1f767
2017-07-10 20:39:59 +00:00
mistachkin
240e7ef4bb
Minor cleanup and refactoring of the Win32 VFS for lsm1.
...
FossilOrigin-Name: bf7eda67c8124c3cd5d9150f2f2694cd3f991b20e0a527398885976d0d787242
2017-07-10 20:33:50 +00:00
drh
a868639656
Another spelling error in the README.md file.
...
FossilOrigin-Name: 0512937425df6f274153f1d822fc4fe358601c2944745c0039c40e645ebedd82
2017-07-10 19:54:48 +00:00
drh
e1869a91d6
Spelling error in README.md
...
FossilOrigin-Name: 12bc47c50252f1307b224d171069b93192d0c905aadf480829bba390c059aee4
2017-07-10 19:08:59 +00:00
drh
764fb30330
Yet another typo in README.md
...
FossilOrigin-Name: 75c9327b551d072effbb37efebf5fbe1a45965f89fe285df364dda06ca866cd7
2017-07-10 19:07:11 +00:00
drh
67d5bf9118
Fix another README.md typo.
...
FossilOrigin-Name: 20b1f0eff175aa8be9a7a631ede0a434f6c340fcdb931633e1f228d1fb35abde
2017-07-10 19:05:58 +00:00
drh
14d5ff4202
Fix an obsolete statement about Lemon in the README.md file.
...
FossilOrigin-Name: 4f6ce7a38baef24e00818926b9b8dc852334e3d4011f1d3a577c8c7e5f7ed93e
2017-07-10 19:03:04 +00:00
mistachkin
91ea8cf4ac
Cleanup header usage in lsmtest for files that require _O_BINARY.
...
FossilOrigin-Name: f3a6a64ec90e6cf24aadf62aef4f92104be5ba6790f7fca040eff7abc31f1061
2017-07-10 18:57:03 +00:00
drh
7ff64dc2bc
Updates to the repository README.md file.
...
FossilOrigin-Name: 7bfd3ab7996bf869eb2705495f3f2cd8bd6d1f4d029a1f26041e95049a9bfd3b
2017-07-10 18:52:29 +00:00
dan
ff7733db52
In LSM, avoid calling the VFS xTestLock method to test for a lock that
...
conflicts with one held by the same process. The results of such a call are
considered undefined (since they are different under win32 and posix).
FossilOrigin-Name: a82a9bea624caf6b24d8e3f3c596817968b258f06e54288022f6df8226281057
2017-07-10 18:33:41 +00:00
drh
dbc26722cd
Add the "--newlines" option to the ".dump" command in the shell to disable
...
the newline escaping mechanism.
FossilOrigin-Name: bde431b1e332feaeb516dc46d180e2b2f42820c471feed7eda89452ada898dc9
2017-07-10 18:04:41 +00:00
drh
90e39ec349
When multiple constraints need to be evaluated for a row, do any constraints
...
that involve correlated subqueries last. Hence, the priority is index-covered
constraints first, correlated subquery constraints last, and all others in
the middle. This is a
follow-on and improvement to the push-down optimization of check-in [d7bb79ed].
FossilOrigin-Name: c4cb90487f34937605732c3959891075e2aabfb0bd05e55c44565d65867093ea
2017-07-10 17:00:31 +00:00
drh
66a0bf31cc
Additional debugging Noop-comment in the constraint generator when
...
wheretrace is enabled.
FossilOrigin-Name: 0ca7474f05e9f27f53f8c71f5a3ff99963ffef9be9c147869e096246d552d6f1
2017-07-10 16:38:14 +00:00
drh
e24b92bce7
Small performance optimization in sqlite3WhereExprUsage().
...
FossilOrigin-Name: 38edc6770e54e456500e77389d42fdf39e9a7ed258a4e1fed3c6dd8fdf4dfcb7
2017-07-10 15:26:09 +00:00
dan
d3930b1266
Fix another problem on this branch.
...
FossilOrigin-Name: a4fc98113aeb10860834f68a2fdcef690ea15d8303d23b6dd416994a4b7edab6
2017-07-10 15:17:30 +00:00
dan
8674ec5a7f
Fix a problem causing non-covered WHERE terms to be evaluated before covered
...
WHERE terms.
FossilOrigin-Name: 7d3cb39f60951dcec1ff87da2c4ec998f993de5edf49ee5e5f480c6fe4e5a052
2017-07-10 14:39:42 +00:00
dan
ebc63013b7
When testing non-indexed WHERE constraints, test those that involve
...
correlated sub-queries last of all. This increases the chances of not having
to run the sub-query at all.
FossilOrigin-Name: 1f9c1f359e4693954ba7e2bc7b172ef34eb046e4ca2796df8336975b9d6aa92b
2017-07-10 14:33:00 +00:00
drh
9f6e14c1ef
For sqlite3TreeView() debugging output, show the Expr.flags field on
...
scalar subqueries.
FossilOrigin-Name: dc857a96b00f13ffdf77bc222bc5acbbe14a36ca51e5368b568b3177d1be737a
2017-07-10 13:24:58 +00:00
drh
ff4fa772f5
Update error message text for standard error codes to better describe the
...
latest usage of those error codes. Modify sqlite3_open_v2() so that it does
return a valid sqlite3 object in the event of SQLITE_MISUSE due to bad
open flags, so that sqlite3_errmsg() does not report "out of memory" in that
case.
FossilOrigin-Name: f27b6370407842e2c175ea4aa9ce018723c57eaac0cccc1f8399bc20f33324be
2017-07-10 12:07:53 +00:00
drh
e75be1aedb
Remove the error message text from disused error codes such as
...
SQLITE_EMPTY and SQLITE_FORMAT.
FossilOrigin-Name: 871752f2925ee14bdd3e994c00832d00860c03f6f28e63504aa6d35978b7f37c
2017-07-10 11:17:51 +00:00
drh
155507b344
Always make "column%d" column-names 1-based, never 0-based.
...
FossilOrigin-Name: 70096c505d702a9646da24613da387cee19afcf395d0294b3797c5ab50bb3ee2
2017-07-09 18:55:29 +00:00
drh
d7ca600ede
Make sure the columns of a VALUES() clause are named "column%d" even if
...
the VALUES() clause is a subquery in the FROM clause of an outer query.
FossilOrigin-Name: acf3b9cc9c3932431979995a1dceacc06c659ab400fad95ce3728ff8895a022b
2017-07-09 00:30:58 +00:00
drh
2aa31333c2
Add the --icc, --gcc7, and --orm options to the speed-check.sh test script.
...
FossilOrigin-Name: 70dae08a9a6e35416f7268b9a95f3c8562b74697918bd1e9d5b5cf4719b9d075
2017-07-08 22:30:30 +00:00
drh
12ca0fc259
Basic test cases for PRAGMA secure_delete=FAST.
...
FossilOrigin-Name: 0c246017b45c5290f3a7932dfce649f1a6d8f9afc00c6c3edf2ef06c17dbca1d
2017-07-07 22:47:32 +00:00
mistachkin
50963c9da8
Fix comment in the Win32 VFS for lsm1.
...
FossilOrigin-Name: 12a421bcacf72128426eeafed8663accd8f2ac7edb46f620b60b8239065e657e
2017-07-07 21:20:26 +00:00
mistachkin
85bd1cd52b
For lsmtest, use a more portable means of setting open() files to binary.
...
FossilOrigin-Name: aea6e0ffd33f41482f1b53b9f21b77add2865abda4eec1d9ee197177f74f43d0
2017-07-07 21:15:24 +00:00
mistachkin
1d91e9f26a
Adjust copy_file() lsmtest function so it works properly for locked database files on Win32.
...
FossilOrigin-Name: 54a3855583deac93c955ed77fe82be6a6b7aadd3fdb7e6b895888e2a4ff530bd
2017-07-07 20:35:14 +00:00
drh
08f1efeb16
Add the "PRAGMA secure_delete=FAST" option, which overwrites most deleted
...
content without increasing the amount of I/O. Deleted content might persist
on the free page list, however. And extra CPU cycles are used for zeroing,
of course.
FossilOrigin-Name: 38978ce65b280bb7cba3fc08ba91485fb1b84cd9fbba2e950ecf41c021ff452a
2017-07-07 20:06:28 +00:00
drh
a690ff360b
Change the error message text for SQLITE_ERROR to omit the part about
...
"missing database" as that meaning is now obsolete (since approx SQLite 2.0).
FossilOrigin-Name: 732f90d6327c5c6368fc8b4cc207bd644ef08e3ae6d2e7295258ab099deaba63
2017-07-07 19:43:23 +00:00
mistachkin
b11c650c01
Fix typos in Win32 VFS for lsm1.
...
FossilOrigin-Name: 0961ec873b78ad2da0ea9cdf2934bc8f08276375a153fe5d9fa8d4280328deef
2017-07-07 19:22:35 +00:00
mistachkin
73518c5876
Fix the memcpy calls in the lsmWin32OsShmMap function for lsm1.
...
FossilOrigin-Name: aa4890b9f9e9698c61d6ca0e24c26280f5e0a87a8c02865933ad483a1fd44d84
2017-07-07 19:12:55 +00:00
mistachkin
a2d85cbbfa
Enhance the MSVC makefile 'clean' target to handle lsm1.
...
FossilOrigin-Name: 2d6faebc319aefeab796c5f2ead4c3c3e2a9dd25c979a16bdb555a109135b13c
2017-07-07 19:02:51 +00:00
mistachkin
9a7a77ad36
Add support for LSM_DEBUG to the MSVC makefile for lsm1.
...
FossilOrigin-Name: 277a7fedafbe5b43d44086f3cb73e952873913bdc4b51041f45b6571b386d7d9
2017-07-07 18:31:51 +00:00
drh
a7a0bfab91
In the command-line shell, when running ".schema" give a sensible error when
...
the database file is locked.
FossilOrigin-Name: cc329eb8d65171f3f4fcb39b0e55ef85c97a77f3510cf864bbc1537f993d0074
2017-07-07 18:06:49 +00:00
mistachkin
9b8c5f6819
Fix the usleep() macro in the Win32 test code for lsm1.
...
FossilOrigin-Name: 63599fa524a7c72ffa5362041f2ec394d9af9c43025d8b6d5a34e98eb423d5ff
2017-07-07 17:57:21 +00:00
drh
d5eae667f4
Add new PRAGMAs: "function_list", "module_list", and "pragma_list". All are
...
enclosed within #ifdef SQLITE_INTROSPECTION_PRAGMAS. The compile-time option
is not on ctime.c yet, since these are still experimental and one can always
test "PRAGMA pragma_list" and see whether or not it returns an empty set.
FossilOrigin-Name: e0b6ae92adfae46f64fc2e2719e22e5467c34d49c1aeaec5cc5faf04258de0f7
2017-07-07 17:43:30 +00:00
drh
8ae11aac93
Add the "Pragma_list" pragma. Put all three pragmas created on this branch
...
inside of #ifdef SQLITE_INTROSPECTION_PRAGMAS.
FossilOrigin-Name: 2f3c3781ef3d66ecafef083d7144287ff23eea5a6d93b014dfeb2a8ac71f757e
2017-07-07 17:33:07 +00:00
mistachkin
e60092b90c
Improve clarity in the Win32 VFS for lsm1.
...
FossilOrigin-Name: 9c7a9e805d95d3d4a3f7e2d608280b7ca0dda01114e32cd366b1deb14e6e6839
2017-07-07 16:46:08 +00:00
mistachkin
baebf3cc4b
Add support for LSM_DEBUG_MEM to the MSVC makefile for lsm1.
...
FossilOrigin-Name: 3340de83df8c4fb19f729e6ff0838a9a03a1e701cdb40cb830e76f294198024a
2017-07-07 16:29:37 +00:00
dan
45158fa5d9
Remove a block from the Win32 VFS for lsm1 that is now superfluous.
...
FossilOrigin-Name: 5f726f2830dcf91f5e5c010b10761757f746d39b9dd2b8c9770452ce65bb1652
2017-07-07 16:27:43 +00:00
dan
3bc909b0af
In lsmtest, use an empty string instead of ":memory:" when requesting a
...
temporary database from SQLite. This prevents other test code from trying to
unlink() ":memory:", which fails on win32.
FossilOrigin-Name: 281ad505d7a112c5524ea9fb195dfc46f819a58f79f42b37b12fbfe46a089ff2
2017-07-07 16:09:24 +00:00
mistachkin
5bd9e61f05
Remove a block from the Win32 VFS for lsm1 that is now superfluous.
...
FossilOrigin-Name: db4a41408eff450ee429b936847313c2c92ba1f5b1fcbadaacaff3c08bfdd589
2017-07-07 16:07:53 +00:00
mistachkin
d429ec222c
Memory reallocation fix for the Win32 VFS for lsm1.
...
FossilOrigin-Name: 5a3140e4dedace6de4366a3c52e41b818b6d19f356fdab738c6605afc1b674fa
2017-07-07 16:06:30 +00:00
drh
40cf27cb63
Enhance the sqlite3VdbeMultiLoad() interface to automatically generate the
...
OP_ResultRow opcode on PRAGMA implementations, for a small reduction in the
library footprint.
FossilOrigin-Name: c46f0f076c674891e20240bad56693d891aedc43004bcf980a5d199515f23413
2017-07-07 16:00:53 +00:00
drh
ab53bb635c
Add new pragmas: "function_list" and "module_list"
...
FossilOrigin-Name: e5f01d7fde05fdb547f35816ff15c31a92c170b31877f4c640b7bc2be3f580b3
2017-07-07 15:43:22 +00:00
drh
4676462f92
Merge recent enhancements from trunk.
...
FossilOrigin-Name: 73d0fc027ddcc24e55cdc8c54443a96083cc9a29e57c0abe97e8586ff8a7f4c5
2017-07-07 14:26:43 +00:00
drh
d10866798d
Exploit the fact that Expr.pRight and Expr.x are never used at the same time
...
for a small performance gain.
FossilOrigin-Name: aacbb9a461fdb34c7f9c8ce348e44c3e96c93334f210d438d92bfac1794dc686
2017-07-07 13:59:34 +00:00
drh
c2d14a9a33
More efficient and compact implementation of walkExpr().
...
FossilOrigin-Name: 115d4b83392d346634866dd959bef30fca50db2e526df17eaeb3d94da7fc895e
2017-07-07 12:58:30 +00:00
drh
b98a2e351e
More aggressive use of EP_Leaf on expression nodes, to help prune searches.
...
FossilOrigin-Name: c1a1d68c8219c8072e60af5c46a30849ae9a04fa1a6b2a8b22b82fec069d691d
2017-07-07 12:43:57 +00:00
drh
3da70a6112
Very slightly smaller and faster sqlite3WalkSelect().
...
FossilOrigin-Name: 9bc65635b29a4991c7821ef0939975d007f9ac23716717699353ef3246e27791
2017-07-07 11:49:48 +00:00
drh
0db5bfe5de
Small adjustment to main.mk that facilitates giving non-standard compile-time
...
options to the shell.
FossilOrigin-Name: 7c7d53a9bbc27fde2dcc028cb7765c76cad0a784e53095b652c90d371968c53d
2017-07-06 22:43:41 +00:00
drh
a0c3927510
Change the (machine-generated) keywordhash.h file to increase the scope of the
...
tables used for keyword matching, so that the tables are accessible to
functions other then keywordCode().
FossilOrigin-Name: c5ed5ebdf660501fde7cc8aefaaaeae2a68e5899a64ac93f26684842a235281d
2017-07-06 16:33:14 +00:00
drh
9d8e401c2d
More compact implementation of the typeof() SQL function.
...
FossilOrigin-Name: efb4aab0caa4145732a5438cc2a193bc12c455b4007220564d240e75900ea8ad
2017-07-06 13:51:50 +00:00
drh
ebaaa67db2
Avoid unnecessary upper-to-lower case conversion for function names when
...
registering the built-in functions.
FossilOrigin-Name: 06269257647db51fbc9f8cda88abac5db28b6f917a509768af7686dfa2b94511
2017-07-06 13:23:26 +00:00
drh
3b02e0f615
Small size reduction in findCollSeqEntry().
...
FossilOrigin-Name: 55ecd30304517acd23f89b3450fd6a5e18ac2f79aa24a4ff693f8d71a49f7837
2017-07-06 03:06:20 +00:00
drh
666e86625c
Avoid unnecessary calls to sqlite3GetCollSeq() for a small performance gain.
...
FossilOrigin-Name: 503ba172e4c32e288abf006fc5cb53fd2b0313c4ee4c526c2d9c4c21b7178f2d
2017-07-06 02:49:26 +00:00
drh
07a3b11a50
Slightly more compact implementation of the byte-code generator for
...
the COMMIT and ROLLBACK commands.
FossilOrigin-Name: 4da663d9863004d8cef58259a043fdcf4f466f80d3714cf58321a52485be8766
2017-07-06 01:28:02 +00:00
drh
169a689f7b
Small performance increase in sqlite3SrcListAppend().
...
FossilOrigin-Name: 7b2623f1994384484cf31ae9e443ee20f19b278bf2e91898dbc01828822ddf91
2017-07-06 01:02:09 +00:00
drh
a35d851892
Make the hash table implementation a little smaller and faster.
...
FossilOrigin-Name: f762f1effe1ce893d6b67815ad8b585bae2c1621d9199dac9c85d39dad16e774
2017-07-05 23:33:33 +00:00
dan
adea0d1c39
Have fts3 virtual table cursors free internal resources when they reach EOF,
...
instead of waiting until the xClose method is called.
FossilOrigin-Name: b6b14ab6c8f9758a64e5fd29203f8fa610b5c4ef917de9be51ae55e072fad4ed
2017-07-05 18:48:07 +00:00
dan
7181395a4d
Fix a problem in lsmtest causing one test to fail for multi-threaded LSM
...
connections.
FossilOrigin-Name: 2bce64c8864b616f9ab0063f64d0ceb2f83e53e110970c6b3b11003cba5c8804
2017-07-05 14:29:04 +00:00
drh
269ba80469
Add the count-of-view optimization when compiled using
...
SQLITE_COUNTOFVIEW_OPTIMIZATION.
FossilOrigin-Name: d1ba200234f40b84327c7fc28c2584ed069da80e97578df71114d1a9ba9c559c
2017-07-04 19:34:36 +00:00
dan
431a53fde2
Fix further OOM handling cases in LSM.
...
FossilOrigin-Name: ca757c8665e27de884086b2aab2bd1db481e2d12f2afe136ec151bf5a0e65b91
2017-07-04 19:23:32 +00:00
dan
038af0bdc6
Fix a couple of problems in handling OOM conditions within LSM.
...
FossilOrigin-Name: 989a5c1745a7145c14c6d9b713176ecba6b99296de8bdd09f666eeef10da9c2e
2017-07-04 17:25:45 +00:00
drh
92395c59ff
Fix a problem in the lempar.c Lemon template for YYSTACKDEPTH<=0 introduced
...
by check-in [36e54cd8b1fb37]
FossilOrigin-Name: 268a40f44cea6c3f561b7f54c90d631877be44292911424bac24f72c5ee87d60
2017-07-04 12:50:00 +00:00
drh
518ee8f06f
Fix compiler warnings in LSM1, especially in the test logic.
...
FossilOrigin-Name: 9bd3be92b8add7bd0d7bc4b0742b2dd227ebb8d67a839b78f26f2b06b47490f2
2017-07-03 21:09:28 +00:00
dan
45408a108f
Fix a bug in lsm queries on levels undergoing incremental an merge that
...
contain range-delete markers.
FossilOrigin-Name: b2c2487928becbea5a932895d153709c98a057a3c71c2600e165478562e9f7c5
2017-07-03 20:19:28 +00:00
drh
cde336e0dc
Attempt to improve documentation on sqlite3_column_ and sqlite3_value_
...
interfaces.
FossilOrigin-Name: 9111ac69bf307997e590bc9459222661fc79f549b3c493168a654a5046e6e4ad
2017-07-03 17:37:04 +00:00
dan
05dda7ba8e
Add more tests for LSM log file recovery. Fix a problem in recovering log
...
files that contain range deletes.
FossilOrigin-Name: e34eafd4c5b2bbf2735e136ad69b67bb4288ad4d01a0128d8e107ac46209a182
2017-07-03 09:00:18 +00:00
dan
24f6904e99
Fix a memory management problem in lsm log recovery code.
...
FossilOrigin-Name: dd55af30b4440bba1b97c2155b9f499d791cd7d8bae8341972c41439fdc41edc
2017-07-01 20:59:06 +00:00
drh
c7b1ee5f6e
Enhance the RTree module to detect node truncation early and report an error.
...
FossilOrigin-Name: 66de6f4a9504ec2670b7273de8fb6955c80e03f7f73414ea6b80fd8a99f75976
2017-07-01 15:21:17 +00:00
drh
3561dd4afe
Update the carray() and remember() extension functions so that they user
...
the new sqlite3_value_pointer() interface.
FossilOrigin-Name: a99fa94db7185b8eaf3c9b184cb1479f8b3d5781f71f1717a4b3f2dd1d184fe4
2017-06-30 23:46:16 +00:00
drh
3a96a5d919
Add APIs for binding pointers that can be used by app-defined functions.
...
FossilOrigin-Name: d9f4a831ba957ead3890b36d0e33e30cfa4c79b7de6400e623b9746a0a5a02d0
2017-06-30 23:09:03 +00:00
drh
fd76b71cac
Improved documentation for sqlite3_value_type().
...
FossilOrigin-Name: 0db20efe201736b3ebb177948f6a440ce28e62454536a8496fae64a3b55cb702
2017-06-30 20:11:45 +00:00
mistachkin
04222ce52e
Add some assert() statements in the Win32 interface for lsm1.
...
FossilOrigin-Name: d076d58ff108d286f7ac1f81e1ce945d6f4a4f5f97e3b8d5cee6f8d9a6c48d8f
2017-06-30 19:22:33 +00:00
mistachkin
88f769f967
Fix some minor typos in lsm1.
...
FossilOrigin-Name: 0ef777d7474383c0211b19baa4a161cf7fce6570f384dfef368cdab45c1a0f01
2017-06-30 18:12:09 +00:00
dan
a5b55e370f
Avoid constantly freeing and reallocing small internal buffers associated with
...
LSM cursors. Instead, allow them to persist for the lifetime of the cursor if
they are LSM_SEGMENTPTR_FREE_THRESHOLD (default 1024) bytes or smaller.
FossilOrigin-Name: bacfe8cb3e4d3be736c6789b2ce55ef5603e5c7a289b05b37cae2203cd7f2290
2017-06-30 11:44:11 +00:00
drh
a501f7dab4
In the command-line shell, add the -quote option to start up in quote mode.
...
Enhance the ".mode" command so that it reports the current output mode if
given no arguments.
FossilOrigin-Name: 5e3f9ea5c4fad35fe02a12d59114e94ee00e0a09c1840c88908a4c282e2f4625
2017-06-29 21:33:25 +00:00
drh
c31b79d2a4
Remove the ".explain" command from the ".help" output of the command-line
...
shell, though keep the implementation around for backwards compatibility.
FossilOrigin-Name: 7782c04e9b2c0e95b5ac2a38876c1a233becfd892140bc6844790d62aeaff4f7
2017-06-29 21:11:27 +00:00
drh
e755072c3b
Some simple tests for the STMT virtual table.
...
FossilOrigin-Name: a26e17ee56d3c019fc4772fcf95480b4515eea6cfc74c3d494be0d1941e49666
2017-06-29 20:31:01 +00:00
dan
d681d3472d
Avoid reading or writing the 32 locking bytes at the end of the first meta-page of an LSM database.
...
FossilOrigin-Name: 3ed6877f89106131fd030c183fac036fed7231cd92dc4715e87a34a045500bdf
2017-06-29 20:23:32 +00:00
dan
28508ddb42
Avoid reading or writing the 32 locking bytes at the end of the first
...
meta-page of an LSM database.
FossilOrigin-Name: 2b5df3e8a80ae5c0415081dd9b29acaad1464be2e7971399e52c1c98408322d9
2017-06-29 20:13:44 +00:00
mistachkin
97e8b3ea32
Fix issues in the POSIX and Win32 interfaces for lsm1.
...
FossilOrigin-Name: 38ec41416679e8280d77c8a4913aa6a321784b1237a3fe409b8e256c5f4513de
2017-06-29 19:08:52 +00:00
drh
1d1982c324
Edit comments in sqlite.h.in used for generating documentation, to improve
...
the description of the new sqlite3_prepare_v3() interfaces, and other
miscellaneous cleanup. No changes to executable code.
FossilOrigin-Name: 284707a7b3514a55cce24292e45632b7033d6edcff5b27deac5118b27c7b2954
2017-06-29 17:27:04 +00:00
mistachkin
de680efbc3
More updates to the Win32 interface for lsm1.
...
FossilOrigin-Name: cae647696769c9fcdc3beafdfdf74d8384217f4b22820e4545093bea7be58f7c
2017-06-29 16:51:52 +00:00
mistachkin
c2586f77ad
Correct typo in the Win32 interface for lsm1.
...
FossilOrigin-Name: 1b4facb1ad0085aa52e63d4d432179467ddc2a69b668d49d86e65ead66a73f57
2017-06-29 15:57:42 +00:00
drh
01e6d540a7
Add interfaces sqlite3_prepare_v3() and sqlite3_prepare16_v3() with the
...
extra prepFlags argument. Add the SQLITE_PREPARE_PERSISTENT option as
one bit in that argument. Use the new option in FTS3, FTS5, and RTREE.
FossilOrigin-Name: 03977248e6fdaa9b35c15e5dd9bb89552f2f0a913cc31609b5af1e2347b67d38
2017-06-29 15:24:57 +00:00
mistachkin
14e61df283
Further corrections to the Win32 interface for lsm1.
...
FossilOrigin-Name: 4df6e2476ce93b9ca7a6959c8c2d6ef2c30395984b007d74166031dcf09d54b4
2017-06-29 15:13:48 +00:00
drh
c6603af755
Rename the "stmts" virtual table to just "stmt" without the final "s".
...
FossilOrigin-Name: adfdb80105c46ac42b71132c80a91dbd5b1c9ff241fb4fbb5d04641a88898d90
2017-06-29 14:33:51 +00:00
mistachkin
3881d23c72
A couple fixes for the Win32 interface for lsm1.
...
FossilOrigin-Name: ebbd98e941d8a8ea97b434c29b70095515af0adab1977aa4d37fe74a7401f846
2017-06-29 14:17:48 +00:00
drh
c79983312f
Add the stmts virtual table to testfixture builds. Add new compile-time
...
options SQLITE_ENABLE_QPSG and SQLITE_ENABLE_STMTSVTAB to ctime.c
FossilOrigin-Name: 60c628293a1d8a1505e1a36dbd01b1f62bcfd7915e144044c92385423cbf8e07
2017-06-29 13:41:59 +00:00
mistachkin
2ca62cb102
Compilation fix for lsm1 using MSVC.
...
FossilOrigin-Name: b7794cc5d5abc13c6301c8d5c1b330405432c047f154083430fd15823221e552
2017-06-29 13:35:44 +00:00
drh
e4b45f536e
Add the LSM1 extension.
...
FossilOrigin-Name: 824e83274c04d24fd854bc7376c958ea6b05862efc562a3dfed0fc888fd96cc2
2017-06-29 13:19:55 +00:00
drh
366050e89a
Add the "stmts" virtual table to the amalgamation, activated when compiled
...
using -DSQLITE_ENABLE_STMTSVTAB. Add the SQLITE_STMTSTATUS_REPREPARE and
SQLITE_STMTSTATUS_RUN statistics outputs from sqlite3_stmt_status() and add
corresponding columns to the stmts virtual table. Change the numeric value
of SQLITE_STMTSTATUS_MEMUSED to get it out of the way of counter values.
FossilOrigin-Name: 88976ae31c2cbc8b75f162140d1356132f69e5b30786e39ad8ca5a1774b03621
2017-06-29 13:13:33 +00:00
drh
3039e3698d
The query planner examines the values of bound parameters to help determine
...
if a partial index is usable. Reprepares may happen if the bindings change.
This behavior is disabled by the QPSG setting.
FossilOrigin-Name: c322bfa27e88fc9e2c969c1e4ce12a7d541bd2f30e133d267eb2d15fd3477fde
2017-06-29 12:59:40 +00:00
mistachkin
d90dbb8c1c
Implement xUnlink, xShmMap, and xShmUnmap for lsm1 on Win32.
...
FossilOrigin-Name: 680cc064c9e809ddc643074b5e65677f484d904b3d52826f6def480ddaa8f0ab
2017-06-29 12:54:58 +00:00
drh
00d11d400b
Add the SQLITE_STMTSTATUS_REPREPARE and SQLITE_STMTSTATUS_RUN options to
...
sqlite3_stmt_status(). Use this for two new columns in the stmts virtual
table.
FossilOrigin-Name: b0b0c8f8d548ef78584ab714ab120b01c1b83fc0d8ae2fd7626b970bab9fca58
2017-06-29 12:49:18 +00:00
drh
5aa307e2a6
Fix the exprCompareVariable() routine so that it works for non-UTF8 text.
...
FossilOrigin-Name: 25acd9658be792d686b3ebfaa8c3692f9830e043538ed0afecf97110a07758a4
2017-06-29 01:23:12 +00:00
mistachkin
cffbd543d3
Implement xRemap for lsm1 on Win32. Also, zero file handle when closing it.
...
FossilOrigin-Name: 93c9aa7d9aea46b331c53ff579ef704e88ce90f96600b69479a87a4bb4ca2a91
2017-06-29 00:20:42 +00:00
drh
c080422642
Alternative implementation of exprCompareVariable(). Need to run tests on
...
both this branch and the original to see which one to go with.
FossilOrigin-Name: b959c6297c151150ea2dca24aa1f68f3bd76dd6620eb6c03f8dfa59fdd5c13b2
2017-06-28 21:47:16 +00:00
mistachkin
44ab70db7e
Implement xLock and xTestLock for lsm1 on Win32.
...
FossilOrigin-Name: 9112117dad8085c385aa614cd982b307f5822761607ba358f34df7848c549134
2017-06-28 21:36:40 +00:00
drh
3e380a4485
Make the query planners use of partial indexes based on bound variables
...
responsive to the SQLITE_DBCONFIG_ENABLE_QPSG setting.
FossilOrigin-Name: a934dd14ac55177ac541423f4a077484bb3b461b60c9c2e88d067cca922fa2bc
2017-06-28 18:25:03 +00:00
drh
37f906087b
Merge the in the latest enhancements from trunk.
...
FossilOrigin-Name: 8f63c5863231eba7f853f9587b58a81102c31708402fa9962a6e91aa622fad13
2017-06-28 18:07:29 +00:00
drh
d0bbe4e9c2
Incorporate recent trunk changes.
...
FossilOrigin-Name: 62b8269ba2ff71e2daaa86688698896badd6f6e34ab42fbf92dda7fcda73a230
2017-06-28 15:56:58 +00:00
drh
f00f530b7d
Build the "stmts" virtual table into the amalgamation. It is active only
...
when compiled using SQLITE_ENABLE_STMTSVTAB. That option is supplied to the
command-line shell.
FossilOrigin-Name: 0ff057d86e42e518fda22bfbf5f1977ab6bd0a74a9211ff259ee7e8a7ce98b58
2017-06-28 15:47:29 +00:00
drh
2fb960b545
Fix harmless compiler warnings in the CSV extension.
...
FossilOrigin-Name: f02a54599de7620438aecd3753199fc52ce8919d7503bb8b2f5592b0e51dbf8c
2017-06-28 15:17:31 +00:00
drh
8b471e7e79
Faster parser stack overflow detection.
...
FossilOrigin-Name: 36e54cd8b1fb374fd41e3e09b34b86e34327bf07c9e4bfec58382163c5c5d279
2017-06-28 15:01:35 +00:00
drh
6559e2cec7
Minor tweak to the SQL grammar to make the parser tables a few bytes smaller.
...
FossilOrigin-Name: cc4810b23e683e8c359f7c1a562338ec8501e43cac3475b2be002568fca5e6a4
2017-06-28 14:26:37 +00:00
drh
6be95366c7
In the lemon-generated parser, store the number of symbols on the RHS of each
...
rule as a negative number and add it to the stack pointer, rather than storing
the value as a positive and subtracting it. This makes the parser faster.
FossilOrigin-Name: b362f0d8ed34839bf3b29d10ed0853ab94245fba135ccd28e619caa6ee6992d5
2017-06-28 13:47:56 +00:00
drh
bd8fcc130a
In the lemon-generated parser, automatically promote SHIFTREDUCE actions on
...
nonterminal systems to pure REDUCE actions, for a performance enhancement.
FossilOrigin-Name: c46d94a8cde816ca383e771721ebd4900de77950cba700e35a26f70fd5b794a4
2017-06-28 11:56:18 +00:00
drh
6e11b16282
Simplify error handling logic in sqlite3_exec() to save about 40 bytes.
...
FossilOrigin-Name: 6480916c7266437cf8a70e5db2ca5c753ad71c361b68e41cbf8572f77c271920
2017-06-28 01:21:16 +00:00
drh
59a386ea03
Minor code simplification in the ALTER TABLE logic.
...
FossilOrigin-Name: bfc4e7f30e4654b9603457fb6a4136828e346dcfe4e313fdf56ed62d131b7156
2017-06-28 01:12:53 +00:00
drh
3144df1264
Avoid an unnecessary call to sqlite3XPrintf() in the code generator, for
...
a performance improvement.
FossilOrigin-Name: 29d6ceb3838394d902e248d1eab627625a857dccb5ed0bb66161a13fafc500c8
2017-06-28 00:55:50 +00:00
drh
a5e906f307
Add SQLITE_DBCONFIG_ENABLE_QPSG that forces the query planner stability
...
guarantee. This is the fix for ticket [b9f010107724c]
FossilOrigin-Name: b82efd2a24914ace39acf99df75175042471fd73a8d31d66a40b15f63b342e10
2017-06-27 23:36:44 +00:00
mistachkin
ec99c0f632
Improve a local variable name.
...
FossilOrigin-Name: d0f6973d93c36451bf64f47de9a88abec613a624603033bf6717f5071139b6d2
2017-06-27 22:33:06 +00:00
mistachkin
b5fdc26c21
Initial work on porting lsmtest to Win32.
...
FossilOrigin-Name: 7e669d9bfab237ff7ece821cf95cfd3bb753b1882b9a86044b7d4579808aecf4
2017-06-27 22:27:54 +00:00
mistachkin
59b1dd3830
Implement xFullpath for Win32.
...
FossilOrigin-Name: dbe9c8aa8d70051fafec569054eeda6c02efe9d036ab6beada00da3ed42e52d9
2017-06-27 18:15:38 +00:00
dan
210ec4c855
Fix a virtual table problem that can occur when the vtab is on the RHS of a
...
LEFT JOIN and there is a MATCH constraint in the ON clause, or when the vtab
is in a sub-query that is the RHS of a LEFT JOIN and there is a MATCH
constraint in the WHERE clause of the sub-query.
FossilOrigin-Name: 87b381663398f029f52cb5598aadd069b03034b6f833ce80ba762b406075a44e
2017-06-27 16:39:01 +00:00
mistachkin
8e1ddde079
Minor corrections to the previous check-in.
...
FossilOrigin-Name: e1cf8a78a0bbd7b05cefab22a5c9676098887ee9811d37330ce89b3367856f92
2017-06-27 06:28:00 +00:00
mistachkin
02679b0466
Work in progress porting lsm1 to Win32.
...
FossilOrigin-Name: 2017636e93cf810fe4d1247c18de9f316fca037035a026f77c4588563d7bf0cc
2017-06-27 05:59:47 +00:00
drh
af38cdbc08
Add the -withoutnulls option to the "db eval" method in the TCL interface.
...
FossilOrigin-Name: 18f0616e15684ca327fb10a1d133331af1d3b75f609498982290f6ad69fcaced
2017-06-26 21:08:32 +00:00
drh
d5fbde80a2
The ".import" command of the shell, and the csv virtual table extension both
...
ignore a single UTF-8 BOM at the beginning of their input.
FossilOrigin-Name: 7c15d762d99c2e3e534cd35dfe25ddcd317637eb1f2655fd24c2dd5f9d5a7613
2017-06-26 18:42:23 +00:00
drh
7df7475d0d
Make sure sqlite3VdbeSetVarmask() is never invoked when QPSG is enabled.
...
FossilOrigin-Name: ebcfa73e1c8ebb4fc371a6dcf77f97b6e06e405a299c66182aa4b20423d519ec
2017-06-26 14:46:05 +00:00
drh
169dd928c5
Add the SQLITE_DBCONFIG_ENABLE_QPSG option to activate the query planner
...
stability guarantee. This involves refactoring the sqlite3.flags bitvector
to carve out a free bit to use.
FossilOrigin-Name: 7076e8283ebae1b45a5d85d9538b49b6da399d38c3c6935de100f948f814f6a9
2017-06-26 13:57:49 +00:00
dan
4261a4065f
Remove an invalid assert() from lsm test code.
...
FossilOrigin-Name: ca8a7e995c3da10ba05e3b7d4818c633fe5ba6d6f9351b67017a2603b50b903d
2017-06-26 11:46:01 +00:00
dan
3a31c67aae
Fix another problem with multi-threaded mode in the LSM test code.
...
FossilOrigin-Name: 461ced77d93e84f09bfb4291999cd0245506fa9a8369049fd68968bbcf18d41b
2017-06-26 08:24:35 +00:00
dan
e6f98bcf09
Update a test case to reflect the fact that the lsm blocksize is configured in
...
KiB. And defaults to 1024, not 2048.
FossilOrigin-Name: d7015475f121db1f56060716cd8adb73e9b52016890ec9018b620ef9d7d4fbff
2017-06-26 07:31:28 +00:00
dan
07cae6ae74
Fix some compiler warnings in lsm_file.c.
...
FossilOrigin-Name: 23f16382ed47a90bf5e6c1684d54d28484dca46fea20ca0f131bd477cf222bfb
2017-06-26 06:53:24 +00:00
drh
a22dd3860a
Disable shell tests for the .schema command if virtual tables are not available.
...
FossilOrigin-Name: c8186874b3fec737445ad5c4ba3eaecd922af664b387d89dc31eea60476a0294
2017-06-24 19:21:48 +00:00
dan
5aa550cf3b
Consider the values bound to SQL variables when determining whether or not a
...
partial index may be used.
FossilOrigin-Name: 7b59c353b805c64689b4ae9df347705acbb5f116346ad77af8ce087da7893747
2017-06-24 18:10:29 +00:00
drh
7f2d1cd2b0
Make sure the config.h header is included by ctime.c, if that header exists.
...
FossilOrigin-Name: c2ea62937ec8fabec72d3c7cd38d8e2cabbb5ce48638f8ce7ebefd6cd2716fd3
2017-06-24 16:35:00 +00:00
drh
54ac445d53
Query planner tuning: When deciding between two plans with the same cost,
...
bias the selection toward the one that does not use the sorter.
FossilOrigin-Name: f0ec36d479ac4efaa0efd0594d032dd7b8ccdf84a4dc3644cd688762186fbcca
2017-06-24 16:03:18 +00:00
drh
45e7d7dd1c
Make sure enough memory is allocated for pathological quoting cases when
...
computing a quoted table name in the command-line shell.
FossilOrigin-Name: 0583b84ab444db3ae3c93db619b67bf84b0305ab989200e77214e02ff2dc923a
2017-06-24 13:31:40 +00:00
dan
65c2a71042
When generating individual loops for each ORed term of an OR scan, move any
...
constant WHERE expressions outside of the loop, as is done for top-level
loops.
FossilOrigin-Name: 712267c9c08fdcef5d59cedc672657b55fd6a77472711711599f0bd653e6d880
2017-06-23 15:47:05 +00:00
dan
c456a76fb3
When generating individual loops for each ORed term of an OR scan, move any
...
constant WHERE expressions outside of the loop, as is done for top-level
loops.
FossilOrigin-Name: e4a022be4b069b08cfdfda5295461676b99d28e17bbbedfbcb362dec69de59bd
2017-06-22 16:51:16 +00:00
drh
c45fdb2a7f
Enable pragma virtual tables for the integrity_check, quick_check, and
...
foreign_key_check pragmas.
FossilOrigin-Name: 118f7bb33a6f78951bbffa957f48015d1bce5aaf9246a99262a90bc8ad52e5a3
2017-06-21 01:36:30 +00:00
drh
f383f35e6c
Rename the azCompileOpt global constant to avoid a harmless compiler warning
...
about a name conflict with a local variable.
FossilOrigin-Name: 94e420ecfb4ec047eb7d1d3125ca8487c90d466760b7f7183759ff922bd868d1
2017-06-20 18:19:16 +00:00
dan
bd11a2acbb
Ensure that the query planner knows that any column of a flattened LEFT JOIN
...
can be NULL even if that column is labeled with "NOT NULL".
Fix for ticket [892fc34f173e99d8].
FossilOrigin-Name: 483462682d3a57fb9dd85b4772596e9738f1694a454b8ebbc480b9452733e88d
2017-06-20 17:43:26 +00:00
drh
a5907a86b8
Experimental "PRAGMA secure_delete=FAST" pragma. The intent is to overwrite
...
deleted content with zeros without increasing the amount of disk I/O.
FossilOrigin-Name: f1682f0faf1a93ded066464b1ddd5f987e21ee0f6bb5e828ed31c3ad903cf2c3
2017-06-19 11:44:22 +00:00
drh
40db2fd7a3
Fix a missing comma in the previous check-in.
...
FossilOrigin-Name: f3db02f49073c3f08c3fd7816d85e5472d5e22df20d862fe4886eb2a97efb15f
2017-06-17 18:49:50 +00:00
dan
ea03adc6b2
Rework the code in ctime.c a bit to report on more compile time options. And
...
to only output configuration options passed in to SQLite, not the default
values of #define symbols set automatically. Also generate the large array in
ctime.c using new script tool/mkctime.tcl, instead of entering it manually.
FossilOrigin-Name: 9a443397a6b110f60cae32e1f758914d72931e16ddb423e4d4a119df526bf340
2017-06-17 17:55:33 +00:00
dan
814aad618c
Ensure that the value of the THREADSAFE symbol is always included when
...
reporting compile time options, even if it was not explicitly configured.
FossilOrigin-Name: 95141c642697dc037e57f9e4992ff3460155995d3caef6259235601ee722cb93
2017-06-17 17:29:24 +00:00
dan
f417f28bd7
Add extra test cases for sqlite3changeset_apply() and ALTER TABLE ADD COLUMN.
...
FossilOrigin-Name: 603838fc9a65adda831a6a17b31b2e80f5b56e5946a9f0c1fa2c83d2f2a67f6a
2017-06-17 16:39:10 +00:00
dan
da1f49b83f
Rework the code in ctime.c a bit to report on more compile time options. And
...
to only output configuration options passed in to SQLite, not the default
values of #define symbols set automatically. Also generate the large array in
ctime.c using new script tool/mkctime.tcl, instead of entering it manually.
FossilOrigin-Name: bc1951d699e6eeacbe15776a37cd0f5cf3f09eb85d3ae01cff43293cb286fcd7
2017-06-16 19:51:47 +00:00
drh
ba87c6c2cd
Minor refactoring change to clarify how ATTACH works. No functional changes.
...
FossilOrigin-Name: 3944a32e1dd90ff903bcbaaa7cb497cebcfcb2ba2a326726ec2268505e524ae3
2017-06-16 18:31:30 +00:00
drh
76cf858d3d
Prevent pagesize changes on VACUUM in encrypted databases even when running
...
the VACUUM on an attached database.
FossilOrigin-Name: 11693849342a308ad929e2d9ead67faabacb523af76128c6973ed6cc8b62c11e
2017-06-16 13:43:37 +00:00
drh
0942559a14
Move the "shell_add_schema()" SQL function used by the ".schema" command
...
of the command-line shell to a different spot in the shell.c source file
so that it is not in the middle of an unrelated module.
FossilOrigin-Name: 254617a1ccfa1736d4e53d670d80319c79c4d93ebf1de69d89ebdba3949bc270
2017-06-15 16:56:05 +00:00
drh
f217f3b68c
Fix typo and improve the wording of the description of "Metadata" in the
...
output of the sqlite3_analyzer tool.
FossilOrigin-Name: ca1ff70780e07e5ee930fe7972db02e887d9b085d8ab78e878d7f966b6d684d4
2017-06-15 16:45:23 +00:00
drh
b74013300c
Merge the latest changes from trunk.
...
FossilOrigin-Name: 60105c2253d0b617037e975b0d0b729bcb59b950aa2c33d8891394ad45aabb69
2017-06-15 15:06:26 +00:00
drh
90cdec0672
Fix harmless compiler warnings in the shell.c file
...
FossilOrigin-Name: 9afd7a2ffd3a39456190ad05e85ff6485298aae262d9e0698a58c1d73507a36f
2017-06-15 13:07:56 +00:00
drh
594ccd09b1
Improvements to the ".tables" command in the command-line shell so that
...
it shows the name of all schemas if the name is anything other than "main".
FossilOrigin-Name: c7f778b7cee16a1dcebccd256408ee1d08ef2b62e388a9ebba5738a0a89bf3a0
2017-06-15 12:50:47 +00:00
drh
20c9c3f4eb
In the command-line shell, enhance the ".schema" command show that it
...
shows the schema for ATTACH-ed databases in addition to "main".
FossilOrigin-Name: 48e086284a76da10a85315bc992e2294bd4711e35ec5a5abaa16e39a6a69d206
2017-06-15 12:21:09 +00:00
drh
c74d962a1f
Enhance the sqlite3_analyzer.exe utility so that it computes and shows the
...
number of bytes of metadata on btree pages and per table and index entry.
FossilOrigin-Name: 43ad41efa9e1fdd79a9804197a227491236495f14ed56c656224d6ce181703c1
2017-06-15 00:52:03 +00:00
dan
2ebf8f474e
Fix sqlite3rbu_close() so that the pzErrmsg parameter may be passed NULL.
...
FossilOrigin-Name: c433672dd8ab625628bde2f4f40a2dc000ed915dbe91833d3f753d8ab51baf25
2017-06-13 16:52:34 +00:00
drh
6e3bccd5c9
Fix the processing of double-negatives in WHERE clause constraints with
...
STAT4. Ticket [cfa2c908f2182]
FossilOrigin-Name: 35b34bdf0843b49be39e13ed212e918c2d45afdb8374b5cd02ba6d2d5b16b3b9
2017-06-13 04:31:54 +00:00
drh
56790ea567
Fix an off-by-one error that messes up the display of loop codes in the
...
".wheretrace" debugging output for queries with more than 62 candidate
loops when SQLITE_ENABLE_WHERETRACE is on.
FossilOrigin-Name: 0bbdaf2801e4102d952db65e53962e534b67b8b72e76fadb4ce404a6249129d9
2017-06-11 20:17:02 +00:00
drh
eafc6dfe2b
When reusing a materialized view, make sure the estimated number of
...
output rows is correctly initialized to avoid confusing the query planner.
FossilOrigin-Name: 87aceb417a813a2925b636cffa660fe25f3b7e3b3c84bb2108951bf0af644376
2017-06-11 19:51:36 +00:00
drh
e46c63d565
Fix the sessiondiff test module so that it does not run if the session
...
extension is not enabled.
FossilOrigin-Name: 8f92b7a6223a69304dc8a6ab3b43a49cbb87f572a1e65d8a0c6dc09fca38e1a8
2017-06-11 19:40:34 +00:00
drh
c62aab5ba8
Fix a potential null-pointer deference following OOM introduced by
...
check-in [e39795d7] (unreleased).
FossilOrigin-Name: a2f77285fa44df86863eed576271f1030ec60f15480daf175908c5082c27774b
2017-06-11 18:26:15 +00:00
drh
e9acf4b48e
Merge enhancements and fixes from trunk.
...
FossilOrigin-Name: 3fd050c343256c0748256ef183b46df04d9e0da0f81b841dbd336034402b36ab
2017-06-09 15:14:41 +00:00
drh
c097b309aa
Update the documentation to make it clear that the table name parameter
...
to sqlite3_table_column_metadata() may not be NULL.
FossilOrigin-Name: 2881ab1ed24ed72760086785bdf224c4e687cf39a02fd349ae13c6e1235e24da
2017-06-09 11:43:53 +00:00
drh
c5d353fb33
Adjust the implementation of the ".selftest" feature of the shell to avoid
...
using the deprecated sqlite3_get_table() interface.
FossilOrigin-Name: 3168e2c92ad0a0dafc78a27ee1d87ac89f426585f506f418a0182141335dc68b
2017-06-09 02:27:49 +00:00
drh
d96cc6fbcb
Add a testcase() to confirm that an OOM on sqlite3DbStrNDup() is handled
...
correctly in trigger.c.
FossilOrigin-Name: 343e55992f503efa662e49bb0f3c0d798defd0a11f2ee1c36968902fa7e06823
2017-06-08 14:35:21 +00:00
dan
ca66f6c6f4
Ensure pointer map entries are always added when a row that does use overflow
...
pages replaces one that does not in an auto-vacuum database. Fix for
[fda22108].
FossilOrigin-Name: b30dfba811cb531b09ff2e71a1a18ed53c816cb39155dd52ca3e2701425fe17b
2017-06-08 11:14:08 +00:00
drh
cc97ca4c08
In SQLITE_DEBUG mode, attempt to log the page number of the database that
...
contained the problem when SQLITE_CORRUPT errors are seen.
FossilOrigin-Name: e39795d7d798d5249c7bd2a0f6ff891b455f4300a3d638c39a4668323b367666
2017-06-07 22:32:59 +00:00
dan
41ac439dbe
Fix another lsmtest build problem. Add the "-trans BOOLEAN" option to "lsmtest
...
speed2".
FossilOrigin-Name: 61853bc171e7c3af1db6a33ac8b1ad21e1c08e8d6b317fe061fdcd89c9a42e88
2017-06-07 19:46:18 +00:00
drh
0282c03abc
Merge in trunk enhancements.
...
FossilOrigin-Name: f8bbb608cbf6c245628e3d362e9181fb3dc402b1d8241bcb687caf395f63c916
2017-06-07 16:25:25 +00:00
drh
d1417ee1cb
Add the SQLITE_DEFAULT_ROWEST compile-time option for changing the estimated
...
number of rows in tables that lack sqlite_stat1 entries.
FossilOrigin-Name: 234ede26e30f20e6c33002739ed8be35dbfb5c77700bd857ff31072b9b7df347
2017-06-06 18:20:43 +00:00
dan
3b328522f4
Fix a threading problem in lsm test code.
...
FossilOrigin-Name: 501238b9fbb4eece084b4bfce84a5f37a986f34db8081df517e60ef81f357454
2017-06-06 16:14:49 +00:00
drh
cf1393df94
Fix a subtle bug in the remember UDF of the kvtest.exe utility program.
...
FossilOrigin-Name: 9eea3670e77e2f831b7c00ae2d65a5583f9cad626d9ab286f92582ef29ecd4e3
2017-06-05 19:20:35 +00:00
dan
b1d66c5986
Fix a bug in test_fs.c that occurs when the first component of a path contains
...
a GLOB or LIKE escape character.
FossilOrigin-Name: 73c70590d7689806901378cd2a7e167ec4339f886031369266e07868acd23b93
2017-06-05 16:33:53 +00:00
drh
a4327e65bb
For the kvtest utility, add the --vacuum option to "kvtest stat" and also
...
run PRAGMA integrity_check with "kvtest stat".
FossilOrigin-Name: f3c25df4562efda2adeb211a4cc893246354917849a0fa4d95da3d7970e9588e
2017-06-05 13:28:17 +00:00
drh
64bf76d2b2
Fix the column width deduction logic in the command-line shell to account
...
for multi-byte utf8 characters.
FossilOrigin-Name: ed0842c156ab1a78d5d00d3a55dab5e3f08cd349328d606724688f1528df3f6b
2017-06-05 12:29:26 +00:00
drh
3b77506ba5
Omit some of the fstree tests in vtabH if the PWD contains LIKE wildcards.
...
FossilOrigin-Name: ead29f9cb757a5f9921086e3bb4998f60e0d6cfcf41ef0f9a230b365b6226947
2017-06-05 10:31:03 +00:00
drh
4c88348729
Initialize a variable to zero to prevent an (incorrect) compiler warning of
...
it potentially being uninitialized.
FossilOrigin-Name: 65182ce041b30cd0193b958eca975b720fe5200a868baba1e633e49433d86813
2017-06-03 20:09:37 +00:00
drh
5930f663a1
Fix the SQLITE_PTR_TO_INT macro so that works on recent versions of LLVM on
...
Macs.
FossilOrigin-Name: c4089ffbdb4b3467648c97044b0d3085da7128103079b686f608efde83c7df30
2017-06-03 19:16:29 +00:00
drh
629a75f69a
Remove unused header file from kvtest.
...
FossilOrigin-Name: dd7e043f7c9e16cd98a273b7105fa74bdd14a93db8cd5bde064cc1c40591155c
2017-06-03 18:27:49 +00:00
drh
1346fdad65
In kvtest, add the ability to work with a hierarchy of files on disk,
...
in addition to having all files in the same directory.
FossilOrigin-Name: f568f666c85ab9b80592927dc033cfd65bd4415576cf5b3beaf300d68a8e074e
2017-06-03 17:24:04 +00:00
drh
16d62901a3
Add the --nocheckpoint and --multitrans options to kvtest.
...
FossilOrigin-Name: 5828633c2392274b6863b50eaffbb2a176a4d892e83542824a9a3f0d1b62c967
2017-06-03 15:17:21 +00:00
drh
59ce97a013
Merge all recent trunk enhancements.
...
FossilOrigin-Name: 1d23294d88b1a80fe1f5403ea4fd75e61bb4932d5b714ea450d1b4b84f0896ab
2017-06-02 23:44:38 +00:00
drh
f151890791
Add the --fsync flag to kvtest, and document the --nosync flag.
...
FossilOrigin-Name: 7fdc78a672b2ea6187dcb5fdf32f809bb8e4d501e2434f2233edc3bc2e3acc7c
2017-06-02 23:32:17 +00:00
drh
a2e71ced79
Work toward enhancing kvtest to measure write performance.
...
FossilOrigin-Name: fc73e7d2f16386f96c55c42f9830193f7c178521a7ad90c3117b85ef629b5ce4
2017-06-02 19:31:46 +00:00
drh
170ad68a40
Change the name of the OP_Seek opcode into OP_DeferredSeek for better
...
clarity of function. No functional code changes.
FossilOrigin-Name: ab33d299c7dab52703d06f3441c8a98c6c809b2612ec65d71aab2919bd2b1540
2017-06-02 15:44:22 +00:00
drh
6c2d94f928
Fix a typo in the header comment of the "series.c" virtual table extension.
...
FossilOrigin-Name: d637feb4e3032ee0067c204b56d2af5f7eab228e645f2e77b0b043c2b299724d
2017-06-02 13:16:54 +00:00
dan
38d6985509
Add test code for LSM to the ext/lsm1/lsm-test directory.
...
FossilOrigin-Name: bb7436e84a315baf05f00e6cab396017e3f287ea404d32e0cc4f389fa1194dec
2017-06-01 16:13:57 +00:00
drh
c5e56b3473
Add a comment to the Lemon documentation regarding the security of the
...
lemon.exe command-line tool.
FossilOrigin-Name: 4c2458c1908181dc2f6bc594395c06d015fcbd78f5d3472f07a6a3909be9673c
2017-06-01 01:53:19 +00:00
drh
2c2f392dca
Add interfaces sqlite3_prepare_v3() and sqlite3_prepare16_v3() with the
...
extra prepFlags argument. Add the SQLITE_PREPARE_PERSISTENT option as one
bit in that argument.
FossilOrigin-Name: 4a25c5883380fe5990d8180adb58c3bdc7a3d081bc4c69cd4de3cd57074fb251
2017-06-01 00:54:35 +00:00
drh
cdbb126be7
Add the SQLITE_STMTSTATUS_MEMUSED opcode to sqlite3_stmt_status()
...
for finding the heap memory usage by a single prepared statement.
FossilOrigin-Name: c26cf978eead1c9d265eddabaa421e7735b472fcf2792cd2bdeb0901bcf3fb44
2017-05-31 17:30:08 +00:00
drh
3528f6b62b
Add the SQLITE_STMTSTATUS_MEMUSED option for sqlite3_stmt_status() that reports
...
the amount of heap memory used for a single prepared statement.
FossilOrigin-Name: b57d510465458dec5b5fc778fd6e8833392964201f9febebf526e60a543da0c2
2017-05-31 16:21:54 +00:00
drh
6b37e0adc9
Add the experimental "stmts" virtual table for introspection of prepared
...
statements.
FossilOrigin-Name: cb4c5c66aba757356da3b8ec3c66a5c8c40e180b3360638ac634f7787404a5b1
2017-05-31 16:09:04 +00:00
drh
d4ab003d4e
Avoid allocating excess memory to the KeyInfo objects.
...
FossilOrigin-Name: df7859435161f3ecf36635ce574bf73573516a1f2c6e75be320619364e7067d1
2017-05-31 13:45:59 +00:00
drh
d5bdd5effb
Remove a completely unnecessary memset() from the INSERT code generator.
...
FossilOrigin-Name: 7d58836b9db1293a3a6581af4358b7c91a588efd5c9b2df384803f3855ff87a8
2017-05-31 13:27:15 +00:00
drh
b8a1290a28
Very small performance increase in sqlite3VdbeSetNumCols().
...
FossilOrigin-Name: 8885b4461044ae8ecdfe1b9aa47f4aad65efabc98e3fcd9e307a06504fab34c6
2017-05-31 11:24:13 +00:00
drh
02f18cc5ac
Reorder fields in the PgHdr object for a performance increase.
...
FossilOrigin-Name: 326e63d71e0e164c5bcd1f74772cb4071b82daf6f04a5d440b985bace5a4c941
2017-05-31 03:20:39 +00:00
drh
a8b9793c86
Avoid unnecessary memory zeroing during expression list allocation.
...
FossilOrigin-Name: de28e6514a42438411e2c9d833ba660108128ca86d0b90f32925fb73195f4862
2017-05-31 02:58:30 +00:00
drh
d03257c141
Size and performance optimizations to sqlite3ResolveExprNames().
...
FossilOrigin-Name: af8c0fed93c830c50641d95691bb507c31947a15529aba2a88bfaa66b3a3287a
2017-05-31 00:49:40 +00:00
drh
2ab792e4c0
Change sqlite3BtreeNext() and sqlite3BtreePrevious() so that they return
...
SQLITE_DONE if they have already reached the end (or beginning) of the table.
This gives a performance increase and size reduction.
FossilOrigin-Name: e972a3860892022d57b26ec44ce0fbadc61c1ff54b7a10b7e82390db88d323a7
2017-05-30 18:34:07 +00:00
dan
d26d2c7de2
Omit a test of codepoint 0x202F (non-break narrow space) from the fts3 ICU
...
tests. Different versions of ICU apparently handle this obscure codepoint
slightly differently.
FossilOrigin-Name: 69ae688982d6cb9f859f5643c315a1dc5ba76ad35553ecea8329a75ee70a87b1
2017-05-30 18:14:47 +00:00
drh
e70d01f143
More efficient error handling and reset in the binding mechanism.
...
FossilOrigin-Name: 9a3e3b34ba6eafce2f560c13225a3673e18d696b29295b59d958e938fa593baf
2017-05-29 22:44:18 +00:00
drh
1e669f02bc
Omit unnecessary fstat() calls for determining the database file size,
...
resulting in smaller and faster code.
FossilOrigin-Name: dd61c736775c53450821327495276485dced7935d0b4b5ebd17662731afc8adb
2017-05-29 17:59:29 +00:00
drh
8c9ed054b3
Fix an issue with OPT_FEATURE_FLAGS in configure.ac.
...
FossilOrigin-Name: 43ce3bd3a4b41ea757e308e563d6c1bf7f9c09f10e4766c536d0bf1042c45613
2017-05-29 17:43:06 +00:00
drh
77f6af2b96
Avoid unnecessary fstat() calls to determine the database size when
...
transitioning into a read transaction on a rollback-mode database.
FossilOrigin-Name: 6c3476b513965df22d648f9a1b99733af753b44d51163cc7d42a69bf562300e1
2017-05-29 16:45:45 +00:00
drh
5f5a2d1c3c
Avoid unnecessary calls to fstat() to determine the database file size.
...
FossilOrigin-Name: c733a1dea37e4678e7bd0d3d0ca9b8eae1fbdc28615f75d8f1e5141aa53567d9
2017-05-29 14:57:23 +00:00
drh
8abc54e2e8
Fix a typo in a comment. No code changes.
...
FossilOrigin-Name: cb29b838886769afe866b1172e3d5d7e36387149b79c51f91cf59da3f4a5f25b
2017-05-29 14:30:46 +00:00
drh
979dd1be57
Optimizations to the Walker object and its methods to make the code a little
...
smaller and to help it run a little faster.
FossilOrigin-Name: 6854a34ed708259f2280f7ee56cec09f7fc99810dc739dc2814ddeae286aa2c4
2017-05-29 14:26:07 +00:00
drh
d8a295669c
Correctly initialize the iSelectId of FROM clause terms that are a self
...
join of a reused materialized subquery. Without this, the EXPLAIN QUERY PLAN
output for the query will identify the subquery using the uninitialized
(and arbitrary) iSelectId.
FossilOrigin-Name: 43c9ae371f6250fee98a7c4011726eff8ad37f5a97add4f490ac3a2dd501a0d2
2017-05-29 13:09:24 +00:00
mistachkin
e16a350f17
Improve shell help text for the '.open' command.
...
FossilOrigin-Name: 7cc940a97efc096ff3725710f526c06f52453bd923fb9e825ce6990275df747a
2017-05-29 03:48:13 +00:00
drh
ae2ac854b3
Smaller and faster vdbeSorterCompareText().
...
FossilOrigin-Name: 542dc4c5eb87017fe03b6c181e779993aa84564785e1177ccf937d52f985593b
2017-05-27 22:42:36 +00:00
drh
14e845a9d4
Small performance increase and size decrease in the btreeInitPage() routine.
...
FossilOrigin-Name: 6f415833e0554706dcf04f68ecba4ca2e54c08f3bbf6a1dba182bb132c912a2e
2017-05-25 21:35:56 +00:00
drh
137c46f8b6
Merge the LEFT JOIN query flattener fixes from 3.19.2.
...
FossilOrigin-Name: 6513e4a121e32df7e5cd95f47cdf8049b85bdbcb378cf23db29838fb1143d3ce
2017-05-25 17:27:52 +00:00
drh
65ff63ea62
Version 3.19.2
...
FossilOrigin-Name: edb4e819b0c058c7d74d27ebd14cc5ceb2bad6a6144a486a970182b7afe3f8b9
2017-05-25 16:50:27 +00:00
drh
dc6de47925
The SQLITE_EXTRA_IFNULLROW compile-time option causes OP_IfNullRow opcodes
...
to be issued for references to the right-hand side table of *any* flattened
join, not just LEFT JOINs. This puts extra stress on the OP_IfNUllRow opcodes
for testing purposes.
FossilOrigin-Name: 1a074c8a2bc0b28918ef905339d11a21d30101b4ea8c06c8b3faca7d17237538
2017-05-25 11:39:50 +00:00
drh
074ce1e7fd
The TK_IF_NULL_ROW expression node must be treated as a variable that
...
references the table Expr.iTable.
Proposed fix for ticket [7fde638e94287d2c].
FossilOrigin-Name: b30a364a12d9865242b1444984cd25ee126dc69108d5c6a2d4b35df184437fe9
2017-05-25 00:28:36 +00:00
drh
8389bff0a8
Increase the version number to 3.19.2 since ticket [7fde638e94287d2] is
...
going to necessitate another patch release.
FossilOrigin-Name: c315727acd5fffe6e83ad9a5e84360d5cfa9aa8faa10d4970ea9823c7e8126ee
2017-05-25 00:12:04 +00:00
drh
f43ce0b445
The TK_IF_NULL_ROW expression node must be treated as a variable that
...
references the table Expr.iTable.
Proposed fix for ticket [7fde638e94287d2c].
FossilOrigin-Name: 77fc23013cebc7797985864b91d78db5d0e2469511732044ebfaf02b891c979a
2017-05-25 00:08:48 +00:00
mistachkin
831265f962
Fix harmless compiler warnings in FTS5.
...
FossilOrigin-Name: 57a60e959c198b87ed29fab14356f89e0ea7cdb1dd99adbea45b40e8d0cb310a
2017-05-24 15:32:44 +00:00
drh
6fb139e087
Version 3.19.1
...
FossilOrigin-Name: f6d7b988f40217821a382bc298180e9e6794f3ed79a83c6ef5cae048989b3f86
2017-05-24 13:08:33 +00:00
drh
63ad86e70e
Fix a problem in STAT4 equality estimation for multi-column indexes
...
introduced by check-in [3e0590dee0e68cc1599].
FossilOrigin-Name: cfb0d9e0207128b1c2b48689288a849b19dbc00a22cfaca26eec4bfc773629f8
2017-05-24 04:18:00 +00:00
drh
ce13b99f99
Remove the msvc.h header file from the autoconf tarball.
...
FossilOrigin-Name: 84996aef68adeabc8bd97cad269188c67de628f776337a25ec2d63bc956cee78
2017-05-23 20:00:00 +00:00
drh
92b71757f7
Do not use strcpy() in the (obsolete) amatch extension.
...
In releasetest.tcl, run Apple tests using -Os instead of -O1
FossilOrigin-Name: 4440e42031b9cb0edf9a8621cd4f46f209392940ec5b9eefcf8c1e3fef5f7b76
2017-05-23 19:35:20 +00:00
drh
3c790f2a83
Disable the LEFT JOIN flattening optimization for aggregate queries, as it
...
does not currently work. Further fix for ticket [cad1ab4cb7b0fc344].
FossilOrigin-Name: 05ada741554b9fd00befcf7b4083637f53de68699ae5210ac18e0773ad1a9910
2017-05-23 15:33:41 +00:00
drh
1d1fc5e385
Disable the LEFT JOIN flattening optimization for aggregate queries, as it
...
does not currently work. Further fix for ticket [cad1ab4cb7b0fc344].
FossilOrigin-Name: 44b21e35c92137cc519d0cc87c627cc531d0bd442a7b9a7356fa2c6bc5f70fb6
2017-05-23 15:21:37 +00:00
drh
7c1544e051
Ensure that the expression rewriter inside the query flattener decends into
...
the substructure of the TK_IF_NULL_ROW operator. This is a continuation
of the fix for ticket [cad1ab4cb7b0fc344].
FossilOrigin-Name: 28d2902d8f4dfbbfc610f271e00d353b0baae386b56b482f96b88836410be129
2017-05-23 12:44:57 +00:00
drh
eff0a7b25e
Ensure that the expression rewriter inside the query flattener decends into
...
the substructure of the TK_IF_NULL_ROW operator. This is a continuation
of the fix for ticket [cad1ab4cb7b0fc344].
FossilOrigin-Name: 941d8142b7c9a96ff143d1add3c86cf42d61fd08e532d400dac555f23eadbcfb
2017-05-23 12:36:13 +00:00
drh
f352cf57e3
Change the version number to 3.19.1.
...
FossilOrigin-Name: 16656b8ff5cf79565b0b30f804f5f924fabfe989fdf00a2e7c30fe4438143981
2017-05-23 01:35:22 +00:00
drh
44bdc92938
Remove a surplus semicolon, which was harmless on gcc and clang but caused
...
compile-time errors on msvc. This only comes up using the encryption extension.
FossilOrigin-Name: 4510d55d1e2e23d4a4470dbd414161beec2ceefb7537fd66ea3c347e11624dfc
2017-05-23 01:30:26 +00:00
drh
10d33c1781
When flattening a query, make sure iTable attribute of TK_IF_NULL_ROW
...
operators (that result from a prior flattening of a LEFT JOIN) are updated
correctly. Fix for ticket [cad1ab4cb7b0fc344].
FossilOrigin-Name: 919d36e6ea112c8c94f01e02611c48e78c441657e6898a466cfc39f1e0001403
2017-05-23 01:29:35 +00:00
drh
3f1e9e00e6
When flattening a query, make sure iTable attribute of TK_IF_NULL_ROW
...
operators (that result from a prior flattening of a LEFT JOIN) are updated
correctly. Fix for ticket [cad1ab4cb7b0fc344].
FossilOrigin-Name: 92c178507df553e4f1110342c8f9b11b3ee37989e1d634fcaccabf657befa22f
2017-05-23 01:21:07 +00:00
drh
d4fb196531
Remove a surplus semicolon, which was harmless on gcc and clang but caused
...
compile-time errors on msvc. This only comes up using the encryption extension.
FossilOrigin-Name: 987a2b5537254b1fe843eb798d7eb7f04dbe1e32fb827cfb9e1e1ef6c2096759
2017-05-23 00:32:56 +00:00
dan
07d0f15e93
Fix incompatibilities between the "sqldiff --changeset" command and the
...
sessions module. Specifically, allow sessions to process changesets containing
tables with zero operations on them and have sqldiff output the expected
output for tables with multi-column primary keys.
FossilOrigin-Name: 0bb23c48064cc64134697469f3f4d2d3610b9e6c7a0dc54a3c47a00bd6c2a860
2017-05-22 18:09:00 +00:00
drh
453ca043a2
Add the ".cd" command to the command-line shell.
...
FossilOrigin-Name: 5fe28e15b1d6d8a588fcaf93c6035c0e0ab7bcad1067c7933cd430d2e04bbbd8
2017-05-22 18:00:34 +00:00
drh
ee841262d9
Increase the version number to 3.20 for the next release cycle.
...
FossilOrigin-Name: ab471f61ef7d9ed1bf937d5e458f720d12209712a015786434edc818a98168c9
2017-05-22 17:39:37 +00:00
drh
d758722449
Merge the last-minute 3.19.0 changes into trunk.
...
FossilOrigin-Name: e6ba2a93a8d28074ff134dd43c142315de291b7c0a38ecc692863c33975c71c7
2017-05-22 14:04:46 +00:00
drh
2435fa6916
Version 3.19.0
...
FossilOrigin-Name: 28a94eb282822cad1d1420f2dad6bf65e4b8b9062eda4a0b9ee8270b2c608e40
2017-05-22 13:58:13 +00:00
drh
44ec1d6eda
Include the "msvc.h" header file in the amalgamation tarball.
...
FossilOrigin-Name: 3dd6fe53c7ae6ebe2393e956d040e00b8cd0589674d20aafe1585aaa61325bbe
2017-05-22 13:06:45 +00:00
dan
21766c0c16
Fix a case where NULL was being passed to memcmp() following an OOM. This is
...
probably not a real problem, as the number-of-bytes parameter was passed 0 in
this case, but it was causing a santizer complaint.
FossilOrigin-Name: 3ea2bad27e516d5dbfa4a9cb0c767d6a8387280a7e4bbf2ae80cd318da670d66
2017-05-22 08:04:09 +00:00
drh
78436d4c66
When planning a query using sorting, resolve ties in the solver by selecting
...
loop plans with the smaller unsorted cost.
FossilOrigin-Name: f261678c90297f9767040c577796cc1d4db598aa44b0de6906cb73eaef377dee
2017-05-22 00:45:15 +00:00
drh
d8025e43ae
Prevent a possible NULL pointer dereference in the OP_Found opcode that
...
can follow an OOM error. Problem found by OSS-Fuzz.
FossilOrigin-Name: 50ad60ded54aa22dfdf519ed5da6451de790e22a972ff299f7976fbdce7a0579
2017-05-19 23:04:04 +00:00
drh
e46515b53f
Prevent a possible NULL pointer dereference in the OP_Found opcode that
...
can follow an OOM error. Problem found by OSS-Fuzz.
FossilOrigin-Name: c2de178fe7e2e4e0d764e7e6ac637cfc8c053580c43f7246318dafad2974de3c
2017-05-19 22:51:00 +00:00
drh
bcbb066534
Improved comments on one routine in the query planner. Improved diagnostic
...
output for ".wheretrace". No production code changes.
FossilOrigin-Name: 946b87a5282f00d8c532a51f4390e6de781b9a0d6626cb3c077c5622895dc540
2017-05-19 20:55:04 +00:00
drh
748465b49e
Fix a documentation typo. No changes to code.
...
FossilOrigin-Name: 68942a4feeb83e6e1a32d9bd724ae1d72669949adcfad07fb05b0ac48daf5151
2017-05-19 20:47:54 +00:00
drh
8c3bde05ce
Branch for the 3.19 release.
...
FossilOrigin-Name: f2b829ec52c2037eba4feb9427c56d84aca736cb5fc841dfe91cfff22cf660c1
2017-05-19 20:46:27 +00:00
dan
22025ef198
Fix some problems in fts5 code detected by -fsanitize=undefined.
...
FossilOrigin-Name: 35f721045dfe3f82e016938ab1a668bfc37b6b57b8813cc963ef640ec82de58d
2017-05-19 12:32:32 +00:00
drh
1e1c4226ee
Fix a documentation typo. No changes to code.
...
FossilOrigin-Name: cfa4aa203646f44b303138c25672293bb87d97126fe2030d4709e8ad7814a807
2017-05-18 18:17:55 +00:00
dan
9ea258d712
Update the tool/warnings.sh script to automatically use the right options on OpenBSD..
...
FossilOrigin-Name: 7940bff32aa6ea868a53680822d148b7ec7a075c01ae9e0d5ad9859bcc339054
2017-05-16 09:49:42 +00:00
drh
dd1bb43ab5
Fix the build so that it works again with SQLITE_OMIT_SUBQUERY.
...
FossilOrigin-Name: bb0d9281588b8cc24bf2f1f10d0c56277004226adaa2ce5037782503b283b45d
2017-05-15 15:12:24 +00:00
drh
96a27f4cbb
Improvements to the omittest.tcl script.
...
FossilOrigin-Name: 0f05d7e93a73bbeac0a09bbd614287507355a7d75fc7b98729bcf7607fc8e125
2017-05-15 15:05:48 +00:00
mistachkin
c8d3e836ca
Make sure the 'sqlite3changegroup_*' functions are included in the SQLITE_APICALL handling.
...
FossilOrigin-Name: a123cb93307a6c48bd711d6af9828c87a1365e023f6fe4ca6eae264c8ec5e0c0
2017-05-12 14:05:11 +00:00
dan
ee3333b202
Add another test case for the new authorizer functionality.
...
FossilOrigin-Name: 339df63f4064f3b9c8d4e8b82e72d00b49d9406bc350b14809a4caf7ddc4b736
2017-05-11 19:09:19 +00:00
drh
9715f0e544
Enhance the json_extract() function to reuse parses of the same JSON when
...
the function appears multiple times in the same query.
FossilOrigin-Name: 3ba9e7ab79e32090a71c7aa152da9bd5951940ae5e2cf433bceadeb6bfca193f
2017-05-11 18:42:19 +00:00
dan
6b4fbabd6a
Do not save the state of an fts5 merge operation mid-way through an input
...
term, even if no previous entry for that term has caused any output. Doing so
may corrupt the FTS index.
FossilOrigin-Name: 9a2de4f05fabf7e725666fb8824ae1adad56834d7ae4f2e118375bb6f9c0ae77
2017-05-11 18:14:06 +00:00
drh
3fb153cb29
Cache the JSON parse used by json_extract().
...
FossilOrigin-Name: 44ca6c2c4639f3c50ae9233ee299ff0fc4566462c31f28d8676f8de7ffdcd7f0
2017-05-11 16:49:59 +00:00
drh
f7fa4e71f4
Negative N values in sqlite3_get_auxdata() and sqlite3_set_auxdata() can be
...
used to access an auxiliary data cache over all functions in a single prepared
statement.
FossilOrigin-Name: ff5306752e83e760255a10f20168c0f090929a4fee2a5f720dfab36f0ee72fae
2017-05-11 15:20:18 +00:00
drh
9418921c59
New requirements marks and documentation for the authorizer.
...
FossilOrigin-Name: 3980ea0911b3ad3f86d7a7bdc6503f233315c274f473e18831e13eda2c238eeb
2017-05-11 13:43:57 +00:00
drh
ee92eb80db
Improvements to the sqlite3_set_authorizer() documentation.
...
FossilOrigin-Name: 47629b1911e52445aad8ea969137bddf0019c55b4a4f0de8e77decb6a434c8a2
2017-05-11 12:27:21 +00:00
drh
2336c935af
Change the SQLITE_READ authorization call for unreferenced tables to use
...
an empty string for the column name, as this is less likely to impact legacy
authorization callbacks that assume column names are always non-NULL.
FossilOrigin-Name: 4139953ab528f20fa346409810edcb22adb6c1edc9d22f40b1b077ef842a2441
2017-05-11 12:05:23 +00:00
drh
e694139788
Rename fields of the internal AuxData object to make them unique and easier
...
to search for.
FossilOrigin-Name: 2be9850cef6492e168243807c34af72119ffbe414027a12c4eda6c421b5b950d
2017-05-10 19:42:52 +00:00
drh
0d236a8bb0
Improved documentation for the SQLITE_READ authorizer callback. No code changes.
...
FossilOrigin-Name: 92c5ea7047323d10f762877c5f56d20a3e609e8b55efcfe4880ef3048821ac1f
2017-05-10 16:33:48 +00:00
drh
701caf1eb1
Invoke the SQLITE_READ authorizer callback with a NULL column name for any
...
table referenced by a query but from when no columns are extracted.
FossilOrigin-Name: 92ab1f7257d2866c69eaaf4cf85990677b911ef425e9c5a36a96978cccfb551c
2017-05-10 16:12:00 +00:00
dan
7b458519f2
Fix a couple of test scripts so that they work with
...
-DSQLITE_DISABLE_FTS4_DEFERRED builds.
FossilOrigin-Name: 30018d31068f3182d713a6cf09753b27b16a6f912d39a5e6c1363da83bec3125
2017-05-10 13:36:04 +00:00
drh
e4eb0497d8
Avoid unnecessary codec operations on in-memory subjournals.
...
FossilOrigin-Name: 199b2a84992823b4687588a5ba20bec9c42579887068ac21caf08df3895f41ed
2017-05-10 12:58:34 +00:00
drh
614c6a09f7
Do not invoke codec macros for in-memory subjournals.
...
FossilOrigin-Name: d2bb0066f7c8413ef9992e6b07641cdf40ad260778074bd83cc22dcaba87860b
2017-05-10 12:49:50 +00:00
dan
2617c9bdd8
Do not invoke codec macros when reading or writing an in-memory sub-journal.
...
FossilOrigin-Name: 2c145ee6c9e7916f022331453384cbe61ee3654c08a1b88467f85235b5bc18c4
2017-05-08 18:29:36 +00:00
drh
ffe280596e
Fix an obscure assertion fault that can follow an OOM. The problem
...
was introduced by check-in [a1cf44763277b6c7].
FossilOrigin-Name: 04e7e5650efffdce759b46999beb67c250af6cf394a7779ab861f210a84c134d
2017-05-06 18:09:36 +00:00
drh
f8a2e8c2d2
Fix requirements marks and harmless compiler warnings.
...
FossilOrigin-Name: 198ff4c01d86d193a54745764d69376cab8e94747a4daa444690f7e1ec87800b
2017-05-06 17:12:52 +00:00
drh
050b124ce2
Fix a collision of the "B0" identifier name between the termios.h header
...
file and the SHA3 implementation in the shell.
FossilOrigin-Name: b9a58daca80a815e87e541cb5fff9bc8b93f131d223f322c5b83dd5a5f0c0312
2017-05-04 11:13:50 +00:00
drh
30f01249a3
Remove the unused "sqlite3_stack_used" TCL command from the test harness.
...
FossilOrigin-Name: e24b73820cdca07eee87853fe6dd9f60d76e039eeb4aebef03654db3c7c94f14
2017-05-03 19:36:50 +00:00
drh
313e6fd222
Fix the sqlite3GetInt32() function so that it correctly returns 0 on a
...
zero-length input string.
FossilOrigin-Name: 05eba9e3a5f9bb2a40af1dacd885e1915fbcd20b9af4cf0eed79ac16dbeba31b
2017-05-03 17:44:28 +00:00
drh
ad012d09dc
Always enable URI filenames when compiling with SQLITE_HAS_CODEC. Also allow
...
plaintext keys using the key= query parameter.
FossilOrigin-Name: 31a51b4d168065fa59cc0e52ba798bd87ac82160c675bd531442b65133edb401
2017-05-03 15:54:53 +00:00
drh
e780764b4e
Fix the fts3EvalAverageDocsize() routine so that it returns errors from
...
sqlite3_reset() rather than always returning SQLITE_OK.
FossilOrigin-Name: 430f539cbb3f806fb89191e0b759a5f8b49d9e5b6c95fe9a4b55a1aa0875762a
2017-05-02 18:00:31 +00:00
drh
3f4df4c6f3
Reuse the same materialization of a view when that view appears in a query
...
more than once, such as in a self-join.
FossilOrigin-Name: 9e35c89dbe744312f612e507b51ff9a5bb656def75392d25bc19fc638548cd1e
2017-05-02 17:54:19 +00:00
drh
a1f5c0c90b
Move terms of the HAVING clause that reference only columns in the GROUP BY
...
clause over to the WHERE clause, resulting in a faster query plan.
FossilOrigin-Name: 47cbb471d056c8e1834a5ca72491404a3bfb273b5ff7bdd84b98d263938ea874
2017-05-02 16:55:07 +00:00
drh
ab314001b8
Additional comments on the sqlite3ExprIsConstantOrGroupBy() routine. No
...
code changes.
FossilOrigin-Name: 8424492eac506866d2918e5fe03c8f65fef960215d56012a3b52ed42789ed35a
2017-05-02 16:46:41 +00:00
mistachkin
8d5cee166e
Fix typo in comment. No changes to code.
...
FossilOrigin-Name: 6674814afb9e763e7f7060776586e26da28040b3208ce06c8a285dd647e5a53d
2017-05-02 01:30:44 +00:00
drh
c478c8daec
Remove an unnecessary branch.
...
FossilOrigin-Name: a33179596f534067a58d68b77160f11ab13272b29f912d7cbe15ea00bbf03ade
2017-05-01 19:53:12 +00:00
dan
4b2667c8b8
Enhance "PRAGMA integrity_check" to detect duplicate rowids within a leaf
...
page.
FossilOrigin-Name: adcad37b001d255299be716b16003b56ec1fba349ef73261ee0e543186c4f311
2017-05-01 18:24:01 +00:00
dan
874080bbb6
Clear the BTCF_ValidNKey flag set if a cursor is moved by
...
sqlite3BtreeInsert(). Fix for [f68dc596c4].
FossilOrigin-Name: a6727eef6d757a39ad23e5c8cbe960f5d909e5d37cb4e90bc3bdbb8bf58cd6f8
2017-05-01 18:12:56 +00:00
drh
ed71298085
Futher bug fixes to the function that determines when a materialized view
...
can be reused.
FossilOrigin-Name: c64fe3a1695925693385d313e9ad2a1d8cb37ddaa8cc19920ae0978c91bc4c2c
2017-05-01 17:04:35 +00:00
drh
33543c237b
Minor bug fixes and performance enhancement.
...
FossilOrigin-Name: b2aae559581d05e4e8caaddfbd137cb275d582e82d58872c6f42e462dc859b1c
2017-05-01 16:37:20 +00:00
drh
e08e8d6b61
Initial implementation of an optimization that attempts to reuse the same
...
materialization of a view on a self-join of the view.
FossilOrigin-Name: 478c34b9a8b5127d13024e10307aa832f160b89720c46424dd17555bd36f590d
2017-05-01 15:15:41 +00:00
dan
181a1167dc
Add extra tests for the optimization on this branch.
...
FossilOrigin-Name: 4921cd9520080f9baff70e548f64a56e2204b398b8397a2d318a98c32ec4b00c
2017-05-01 14:09:32 +00:00
dan
ab31a8450b
Automatically transfer terms from the HAVING clause to the WHERE clause of an
...
aggregate query in cases where the result of evaluating the term depends only
one one or more of the GROUP BY expressions (and on no other inputs).
FossilOrigin-Name: 5375a3ce56f1d993b13b469fe33ec7679948f53940f62a15ddbaeb8aaa26a22c
2017-04-29 20:53:09 +00:00
drh
7555581fc1
Add a single testcase() macro to the subquery processing logic.
...
FossilOrigin-Name: 4e1df76e3d85922648e0e1cce73a266c3b1ed4511ace259ec0a01d7693af9e6f
2017-04-29 19:29:49 +00:00
drh
bb6783b86f
Improvements to opcode documentation in the bytecode engine.
...
No changes to code.
FossilOrigin-Name: e54c9f8db5b2fa8ea82c6eab7482255431af16901f7992c9667b56a0e50a9f4f
2017-04-29 18:02:49 +00:00
drh
bc43995f99
Evaluate WHERE clause terms that reference only the index before evaluating
...
terms that require the table, and thereby avoid seeking the table row if
index terms are false.
This is called the "push-down" optimization in the MySQL world, we are told.
FossilOrigin-Name: d7bb79ed3a40419d143fbe35c310e51fe7b384a22f082a61ad788671d2d33ee0
2017-04-29 15:27:04 +00:00
drh
6ab3eb5d0e
Minor size and performance improvements to the push-down optimization.
...
FossilOrigin-Name: 91dfb61a1a25763bb0b5c1e353a9d584bc6de3f6eb445f54202ffe7f6fee6e8d
2017-04-29 14:56:55 +00:00
dan
6f654a40e8
Within a loop that uses a non-covering index test, test non-indexed terms that
...
can be tested without seeking the main table cursor before those that cannot.
FossilOrigin-Name: afe68f0a8060dc5c92cb1fb32a9f22bd36140cd2c0bb5b6cea853e169c5ed444
2017-04-28 19:59:55 +00:00
dan
4b17369579
Add new test file cachespill.test.
...
FossilOrigin-Name: 2d0b64316d66a362f5891ceb71a1fd8e4607732274b09b0a8472b97eef68ebc2
2017-04-26 17:21:33 +00:00
dan
b9e6a73866
Replace <fts5.h> with "fts5.h" in test file fts5_test_tok.c.
...
FossilOrigin-Name: 63d9ca5c7392e1efe3330689fe750310a952287e843b3242178724e8561fae0e
2017-04-26 14:34:04 +00:00
drh
69bfa55279
Fix a subtle bug in Lemon discovered and reported on the mailing list
...
by Kelvin Sherlock, who also suggested the correct fix.
FossilOrigin-Name: 304689f8acb53d68e1afed6e6c4332e78132e3d57071b8f94df0d13515b3b3d8
2017-04-26 04:32:17 +00:00
dan
a1188d6d93
When building an ephemeral table of integers, do not assume that the table
...
does not already contain N if the insert cursor points to N-1. Fix for ticket
[61fe9745].
FossilOrigin-Name: 1c1b0862236f564283be08338790d6494e705f1198547a59499e3f8c07f2cd99
2017-04-24 14:16:55 +00:00
drh
0c3233be0b
Fix an assertion fault found by OSSFuzz.
...
FossilOrigin-Name: e39769f442ea86273f8fb7bd2f249b7d760b2fe4bf9ec191ff91def8231f3f35
2017-04-22 00:20:49 +00:00
dan
39c9d3a367
Remove a NEVER macro for a condition that may be true as of [a47efb7c].
...
Problem reported by OSSFuzz.
FossilOrigin-Name: bdc50d8d127266d02b291f6bfcd4e35eb07994ce23987d6e3921124cd881929a
2017-04-21 17:03:32 +00:00
dan
0619838c55
Fix an FTS5 bug that could cause a prefix-query without a prefix-index on a
...
database that contains delete-markers to return extra, non-matching, rows.
FossilOrigin-Name: 840042cb2bed2924e2263f21887317f661e5a585c4466c3af25b91ed57a6b49b
2017-04-21 16:04:18 +00:00
dan
dc62daca86
Further improvements to coverage of fts3 module.
...
FossilOrigin-Name: 6b21d0fdebdccfaf63590d9ca9a279c22b8baec07c1a669b9f617f25bd857384
2017-04-19 13:25:45 +00:00
dan
a059e99ca8
Further modifications and test cases to improve test coverage of fts3.
...
FossilOrigin-Name: ea8a0d2ce0cb1ca3f4f18c72fb780d1c26792799acc87e6726f9eaccf2f178bf
2017-04-19 07:33:52 +00:00
dan
0027e98b85
Use sqlite3_table_column_metadata() instead of a SELECT statement to check for
...
the existence of a %_stat table in fts3. This leads to smaller and easier to
test code.
FossilOrigin-Name: dc2a48020a3c856a8b4cfa2309c290f0508b991e92cc0e4de680d19aae7872fc
2017-04-18 13:50:00 +00:00
drh
bff6fe1f40
Improved optimizations of views as the right operand of a LEFT JOIN.
...
FossilOrigin-Name: 41c27bc0ff1d3135cdb6273ede4595f5bb0c0e1e1d470ea1633cb525674cf431
2017-04-18 11:20:19 +00:00
dan
bda00fbdb7
Refactor the fts3ColumnMethod() function so that all branches can be covered.
...
FossilOrigin-Name: e47fdb493bd76d85f6f05771ee7a0b3ee31b1eb05839a60d2bdb47149ac692d8
2017-04-18 05:49:23 +00:00
drh
cfcca02765
Defer checking for null in the comparison operators, since that is an
...
uncommon case.
FossilOrigin-Name: 5684525613961fed9db6a4d10dbe25521201b24f08e011df3a20ac895316957d
2017-04-17 23:23:17 +00:00
drh
e2bc6552fe
Do not allow a Mem object to be both NULL and some other type at the same time.
...
FossilOrigin-Name: e698db1956bb3aba32cd3ec633ec20f5d19b1a10bc68d3772903bca3c87ee158
2017-04-17 20:50:34 +00:00
dan
4bee5599c0
Consolidate two branches of code in the "PRAGMA foreign_key_check"
...
implementation.
FossilOrigin-Name: 69f51f838abcf57b35e41f7a10fbb45f56536f93825aac865debc3c8315930be
2017-04-17 18:42:33 +00:00
dan
940464b1dc
Fix a problem in "PRAGMA foreign_key_check" in handling a WITHOUT ROWID child
...
table with an INTEGER PRIMARY KEY parent key. Also, if an FK violation is
detected in a WITHOUT ROWID child table, do not try to read and return the
rowid. The third column returned by "PRAGMA foreign_key_check" in this case
(WITHOUT ROWID child table) is now always set to NULL.
FossilOrigin-Name: 690870bd7b2e607b7992c4496c9f08c29eb72a36af002c606fd7aa3dcf94a2a4
2017-04-17 18:02:41 +00:00
dan
624edacf6a
Further improvements to test coverage in fts3.
...
FossilOrigin-Name: 352413eed469802665e7d2c17b7fe6e3a0b0b2209ce45bdc85fd4243cec50ea6
2017-04-17 16:07:25 +00:00
dan
ddf4747053
Improve coverage of code in fts3.
...
FossilOrigin-Name: 1a08a836fa919524216a16faf5212eebc9ad788c9e15463b68b0576dfccd4387
2017-04-17 13:38:09 +00:00
drh
6887e8facd
Fix the ".column" output mode in the command-line shell so that it correctly
...
counts and formats multi-byte UTF characters.
FossilOrigin-Name: f508aff8d1782abdff4d03726ae098607a0ee6cfd2e35b130097ee5043e98960
2017-04-17 13:18:42 +00:00
drh
b6d5a43b8a
In the showwal command-line tool, for unix builds, if the
...
auxiliary argument is of
the form "Ntruncate" where "N" is a frame number, then truncate the WAL
file after the N-th frame.
FossilOrigin-Name: 90015df30655d884ecf7ae61e588824696954252dc6b1a5f78cf2de8cb236104
2017-04-16 22:41:49 +00:00
drh
b65b3e429a
Add the anycollseq.c loadable extension in etc/misc
...
FossilOrigin-Name: d7b9813cb17615c3d00afd6994a4309d6d48c8e924b6cd813c543e1fa65c7719
2017-04-16 22:08:31 +00:00
drh
147fd88268
In the skip-ahead-distinct optimization, fix a bug in the logic that determines
...
when to invoke the optimization based on sqlite_stat1 statistics.
FossilOrigin-Name: 89f9e4363aa19f306e55f749c442eae2f8994f6a47c65e645a79b308b450d5e5
2017-04-15 11:53:47 +00:00
drh
a2e2d92b21
Fix to the decision logic for when to use the skip-ahead-distinct optimization.
...
FossilOrigin-Name: e50fd48969f99bc988389c53ff46714603b1d11de12c71b55c00cbee037f073c
2017-04-14 22:41:27 +00:00
drh
06f60d8e87
Remove end-of-line whitespace from lemon.c.
...
FossilOrigin-Name: d78355c85f49e139f1ac1a660563865350f0e442652b7bc50b684398f81cc602
2017-04-14 19:46:12 +00:00
drh
14d8855b8f
Fix some left-over K&R-C constructs in lemon.c. No changes to the core.
...
FossilOrigin-Name: a53799059d4ece246610b6c877ab7088ded3548cbca7149a03deea8ac0e27e68
2017-04-14 19:44:15 +00:00
drh
31d6fd5507
Add the TK_IF_NULL_ROW opcode to deal with non-NULL result columns in the
...
result set of a view or subquery on the RHS of a LEFT JOIN that gets flattened.
FossilOrigin-Name: 3a5860d86fadcf924316707918bf283d26c53b1473e5e67f5cff59d18c2a7742
2017-04-14 19:03:10 +00:00
drh
1a17b44231
When doing a DISTINCT query using an index, try to use the index to skip ahead
...
to the next distinct element, rather than doing a full scan of the index.
(This is the "skip-ahead-distinct" optimization.)
FossilOrigin-Name: f489b5bb6b35665befdd411c2c55df5258e83cba265d8c4427ba22529cf882a4
2017-04-14 17:30:43 +00:00
drh
399c7e21e4
An initial attempt to optimize VIEWs that occur as the right operand of a
...
LEFT JOIN. This particular check-in does not work correctly because it does
not deal with the case of columns in the VIEW that return non-NULL even when
all columns in the table of the VIEW are NULL because of the LEFT JOIN.
FossilOrigin-Name: 1838a59c8a1c151bd6fc822b0ffef661803cf0e4704c917e74a04567b81740b9
2017-04-14 17:18:45 +00:00
mistachkin
b1ed717f18
Make USE_FULLWARN=1 the default for MSVC and fix harmless compiler warnings.
...
FossilOrigin-Name: 6bf673767b8e5cedef1acff795cbe524fab8db2525c06424db4e038934a33936
2017-04-14 14:50:34 +00:00
drh
d97cda43ab
Enhance the sqlite3TreeView() display for Expr objects so that it shows
...
the iRightJoinTable value for Expr nodes that have the EP_FromJoin property.
FossilOrigin-Name: 5159cb8f2bcfb1f7114786ba23082d2b91a26e3a7ddfae75f8bd362792949d5e
2017-04-14 14:02:14 +00:00
drh
46967de2ec
Simplify the interface to the subst() routines that are part of the
...
query flattener by collecting common parameters into the SubstContext object
and passing around a pointer to that object.
FossilOrigin-Name: e651074be28b2077b8a298f513e2e699ceca99164ace9869ea50873c0637fd2e
2017-04-14 12:39:37 +00:00
drh
7c88bcd473
Remove an incorrect ALWAYS().
...
FossilOrigin-Name: f956f6ae6b0863c70c4a2b227338d5c332e87f2ec6f3fcdf2233c14c5b78ca2b
2017-04-14 12:27:45 +00:00
drh
571311502d
Fix a couple of unreachable branches.
...
FossilOrigin-Name: 1aa0ea8db7580aff8bed2f78117ed50019e5545cef48cab782f512a2599fd0c5
2017-04-14 00:45:51 +00:00
drh
172806e489
Fix the skip-ahead-distinct optimization so that it works with indexes that
...
have repeated columns with different collating sequences.
FossilOrigin-Name: ce1e2b88777e00a82c04abe5ba35eec81b5f324e462f099cd00b21054f369688
2017-04-13 21:29:02 +00:00
drh
c04ea80f64
Simplification of the skip-ahead-distinct logic. There is still an issue
...
with handling COLLATE.
FossilOrigin-Name: 57c5173b6376a76013b0611ce9770100bd8c04e80402e35d821d8614709f4795
2017-04-13 19:48:29 +00:00
dan
a74f5c2923
New test cases and minor fixes for the optimization on this branch.
...
FossilOrigin-Name: 70ac9ea1a6cb2f4906f00f1a04f668e5ba5eeed8d4d0fa4be57a9c9eb0683697
2017-04-13 18:33:33 +00:00
dan
d0a537100c
Reinstate the SQLITE_API qualifier on the sqlite3_delete_database() method in
...
test_delete.c. Accidentally removed by the previous commit.
FossilOrigin-Name: 59c70108fd179932ccdd860f93e1cd68b77476d3b1af1af00cf6e378c9984862
2017-04-13 15:51:27 +00:00
dan
44ae27ac32
Update the code in test_delete.c to use the "win32" VFS if SQLITE_OS_WIN is
...
defined.
FossilOrigin-Name: fa9bb7b768027677f7e7d5a196ba5b245dfc8d8986ccd101c8dab671bd15719d
2017-04-13 15:36:47 +00:00
drh
839fa6d814
Only use the skip-ahead-distinct optimization if the index has been analyzed
...
and we know that a skip-head is likely to skip over at least 11 rows. The
magic number 11 was determined by experimentation.
FossilOrigin-Name: 0cf16decd534bf2d66620c293f8c8987f356305f2d97f8fd12d260bda1571385
2017-04-13 13:01:59 +00:00
dan
929b695111
Allow a user column name to be used on the LHS of a MATCH operator in FTS5.
...
FossilOrigin-Name: 6f54ffd151b0eca6f9ef57ac54802584a839cfc7373f10c100fc18c855edcc0a
2017-04-13 09:45:21 +00:00
drh
8489bf5aff
Forward port the skip-ahead-distinct branch which was abandoned for some reason
...
that I do not recall. This port should have been achived by a merge of trunk
into the previous head of skip-ahead-distinct, but that did not work. So I had
to manually "rebase" the changes.
FossilOrigin-Name: 132339a1fb0b9664df4d3eefbed6e77ef100ba95a91dcc622da7bd3fcdfcd6af
2017-04-13 01:19:30 +00:00
drh
8671538cad
Fix a regression caused by the fix for ticket [6c9b5514077fed34551f98e64c09a1] -
...
control characters allowed in JSON.
FossilOrigin-Name: 8e7b611863247a3bf46a96ec4b47d24c0ae0d60c9cee968a1cfd1da157e7c9bb
2017-04-13 00:12:32 +00:00
dan
03155f659f
Update fts5 to support "<colset> : ( <expr> )" for column filtering, as well
...
as "<colset> : NEAR(...)" and "<colset> : <phrase>".
FossilOrigin-Name: c847543f8bb1376fef52bca72b4191162a32eb7e6c5f0cd1aa0ab116b3183396
2017-04-12 17:50:12 +00:00
drh
26849e14c2
Improved \n and \r escapes in the ext/misc/dbdump.c utility function. The
...
implementation of dbdump.c now matches the implementation in the CLI.
FossilOrigin-Name: f2643315bb41a71eebd79f5d671f9163187e299a52ff8a481186f1e8fa7e5262
2017-04-12 17:38:24 +00:00
dan
15e0f3d901
Avoid updating unaffected indexes on a table as part of an UPDATE that
...
requires foreign key processing in some cases.
FossilOrigin-Name: 7aae5c0f99aa2fda85654242cfc9e23a0f981d9ce4ab17610d619cd208540b3d
2017-04-11 20:48:30 +00:00
dan
940b5eaa5e
Avoid updating unaffected indexes on a table as part of an UPDATE that requires
...
foreign key processing in some cases.
FossilOrigin-Name: 477bea9ed0dd0fa69896bfd16d9b1d22170cbab784e3279ce65c29c47e032f34
2017-04-11 19:58:55 +00:00
drh
ff6d50e973
Limit the depth of recursion for valid JSON in the JSON1 extension in order
...
to avoid using excess stack space in the recursive descent parser.
Fix for ticket [981329adeef51011052667a9].
FossilOrigin-Name: 1f68c184596912d742b50b1ca38252a9e783aacf121619a27b17a7ae9f6df041
2017-04-11 18:55:05 +00:00
drh
e97c9ff49a
Smaller and faster implementation of exprMightBeIndexed().
...
FossilOrigin-Name: 76cd611d41465fcec61c21520d55172cb236530f38386b7d4a5544ba87de2353
2017-04-11 18:06:48 +00:00
drh
ef90a6b8dd
Very slight smaller and faster sqlite3SelectNew()
...
FossilOrigin-Name: 4143650c4ce32289d2301cdfc69bb10877246420f656bed122886f6803fc956a
2017-04-11 16:44:39 +00:00
drh
cbae543a5c
Add an ALWAYS() around an unreachable condition in sqlite3VdbeMemGrow().
...
FossilOrigin-Name: 0f3eb61f44c94234ffc14c3a493a27ec62c0d1e2bb62798f36eafa98ddcdc58e
2017-04-11 12:20:54 +00:00
dan
b8d29c2f75
Fix a segfault that could occur if an indexed expression was used in a
...
comparison operation within the result-set of a SELECT statement.
FossilOrigin-Name: d6bb7c42ff6309ce168ccdcf03b4cdabfccfc9e2a911d254ac7dc4fea4aa2bc1
2017-04-11 11:52:25 +00:00
drh
d6e992cb1e
When using an index on an expression, try to use the columns of the index
...
rather than pulling columns from the table and reevaluating the expression.
FossilOrigin-Name: a47efb7c8520a01110ce3b3531ebe1bab6720780d67fba001992c44c5807d332
2017-04-11 01:30:42 +00:00
drh
eac5fc0476
Improved comments. Fix a problem when an indexed expression is used in an
...
ORDER BY clause.
FossilOrigin-Name: c59eaf2b7cd2596733f349fc0fe979f71fd29bd73152a0c57066e0b69d5b7a4a
2017-04-11 01:01:27 +00:00
drh
2f8b37850c
Merge changes from trunk.
...
FossilOrigin-Name: 8978465f335925378d3aa99df6190ce6a1ee6b130205ccc493f2399803844760
2017-04-10 23:42:04 +00:00
drh
0415d826c0
Smaller and faster vdbeFreeOpArray()
...
FossilOrigin-Name: e052436d9f54b785facd661adc648512356b831c0547aa8f347ebf4bd8ef1254
2017-04-10 20:51:21 +00:00
drh
4c6463cc29
Slightly smaller and faster sqlite3VdbeMemGrow().
...
FossilOrigin-Name: efd1702ae8da8e0dd3d2ee7bd5a1bd8aeff2b370498e404041fcb406fdaf72e4
2017-04-10 20:27:54 +00:00
drh
2ac702d8c0
Add a new JSON test case to verify that all control characters are escaped
...
in the json_quote() function.
FossilOrigin-Name: 6ee12221fa252784c897a24ae8cff64dfe6149cbc9020abe14539df33202d892
2017-04-10 12:31:15 +00:00
drh
e12e24ded8
Change the JSON extension so that it disallows control characters inside of
...
strings. Fix for ticket [6c9b5514077fed34551f98e64c09a10dc2fc8e16].
FossilOrigin-Name: 475d8f82ec61a4ff3e6a7650731230ccecb6cc580d1397d189d0ba479d9bad4d
2017-04-10 12:25:05 +00:00
drh
7a6ea93fd8
Do not expose the name of the internal Mem object in the public interface
...
defined by sqlite3.h.
FossilOrigin-Name: 19dd753f9e50fee247b1ab141669817c7e88bc3f6d6065dba6c731db9f7a2409
2017-04-09 19:23:55 +00:00
drh
9fa866a8d9
Disallow leading zeros on numeric constants in JSON.
...
Fix for ticket [b93be8729a895a528e2]
FossilOrigin-Name: 204e72f0080e8f08f99978870bd3cb9d59b068ecffee82192d707c650548b43b
2017-04-08 18:18:22 +00:00
dan
a34adaf667
Expand on the comment above OP_Destroy to explain why it throws an error if
...
there are any active reader VMs.
FossilOrigin-Name: b9a8c2b9bec9f537b2d5aff6659a5748b1f70b53519a1f9dfceb5209154eca8e
2017-04-08 14:11:47 +00:00
dan
5b09d13a58
Have the rtree module close any open blob-handle within the xSavepoint method.
...
This prevents such an open blob handle from interfering with DROP TABLE
operations.
FossilOrigin-Name: fa4416adc2a9a3a80db1d5befc0b95c3d0fc41affe38f7f2f45cdfae3f1b49eb
2017-04-08 13:52:41 +00:00
drh
13fe138b0a
Fix the quoting mechanism for ".dump" so that it is not applied for the
...
".mode quote" output.
FossilOrigin-Name: 78c1e90305d48917d9423d8e50a7dfd15ec27aa93cb421610062229c7ede13a6
2017-04-08 13:42:55 +00:00
dan
be0bc8bb4d
Have fts5 close any open blob-handle when a new savepoint is opened. This
...
ensures that fts5 does not prevent DROP TABLE statements (which always open a
savepoint) from succeeding.
FossilOrigin-Name: a921ada89050ce1d162fd1b0056939573635e2cec7ac0c2a99ae924b3ae593f7
2017-04-08 09:12:20 +00:00
drh
297e2bdb8e
Make sure the RTree sqlite3_blob handle is reset prior to renaming the table.
...
FossilOrigin-Name: 1cdae2db3c54970a1811e597065724578408c84d49d75b8fe25d56281ddc2e94
2017-04-08 01:09:14 +00:00
drh
72507d431b
Fix the ".dump" command so that it works with ".headers on". Also fix the
...
display of ".mode insert" with ".headers on".
FossilOrigin-Name: a6ce57ee3c7f3527554a75cc1dd5ebcd33c944d4dca07b134d103596a2ae5b32
2017-04-08 00:55:13 +00:00
drh
98368eeb2c
Use replace() instead of char() to quote newline and return characters in
...
strings in the output of .dump, to avoid excess expression complexity.
FossilOrigin-Name: 7307352988174a6c2756dbbe200bf62a45fb4cc1da7faa2c6b0f75e229eab703
2017-04-07 20:20:08 +00:00
drh
f1824a77b0
Remove an unused token type.
...
FossilOrigin-Name: 13a422230dcf4a8a80434af97434d57e456dcaa6bf0c41e6859f37ded6fa96ca
2017-04-07 19:52:13 +00:00
drh
aca19e19a8
Proof of concept for the ability to use the expression columns in an index
...
on expressions in place of equivalent expressions in the result set or in
the WHERE clause. This check-in compiles but is mostly untested.
FossilOrigin-Name: a52ef2ad7c0e14b78b801f16a1f6ea8d8fa9ae5d7d810e18dd24c600b662a312
2017-04-07 19:41:31 +00:00
drh
6193d49cdf
Use replace() instead of char() to quote newline and return characters in
...
strings in the output of .dump, to avoid excess expression complexity.
FossilOrigin-Name: 4c2b572969ea2ed2a925444ecfa356aa877018cbb9c4f57d081ab4b535cd1dd0
2017-04-07 11:45:58 +00:00
dan
54e2efcd2f
Fix the ".lint fkey" shell command for cases where the child key is also an
...
INTEGER PRIMARY KEY.
FossilOrigin-Name: 48826b222c110a90996a84605318ea6b1e502b8c5129f4d561f8350dbdbcd264
2017-04-06 14:56:26 +00:00
dan
50da9382f9
Fix the ".lint fkey" shell tool command so that it works for foreign keys that
...
refer implicitly to primary key columns with non-BINARY default collation
sequences.
FossilOrigin-Name: 327eff25ba2420267cc8dc49dd3c3aab45f4bf9e060d1ad480e25d016d21f3ba
2017-04-06 12:06:56 +00:00
drh
6948ed5977
Remove a confusing and pointless sentence from the documentation for the
...
sqlite3_interrupt() interface.
FossilOrigin-Name: c5f1a2b6eb3df879d247a22b3f92f4f74fcf4f0d219450abc420ae6d02481324
2017-04-05 13:44:40 +00:00
drh
dbd6a7dc06
Split off sqlite3DbFreeNN() from sqlite3DbFree() and use it in cases where
...
we know that the argument to be freed is never NULL.
FossilOrigin-Name: ad90e8bb5e47945607c8fb47b6ade8cfc52a9b684805cc40132629be0ecc14cc
2017-04-05 12:39:49 +00:00
drh
ac48b751e2
Save a few bytes and a few CPU cycles in sqlite3ExprListDelete() routine.
...
FossilOrigin-Name: 9e6c939144a129b36bb119120442a4a021e00187783da211315d4bb13acd7c3a
2017-04-05 11:57:56 +00:00
drh
f4dd26c5a0
Remove a conditional made unreachable by the previous ExprList enhancement.
...
FossilOrigin-Name: a1cf44763277b6c745b5b5509ca9129b6c3231608b4d1c8aec2815b64b5a2a07
2017-04-05 11:49:06 +00:00
drh
43606175e2
Combine the ExprList_item objects and the ExprList wrapper into a single
...
memory allocation, for improved performance and reduced footprint.
FossilOrigin-Name: 2b6560ad88b92820c383bcdc1e30c06f8b081ef7c6d9b1af71d2bb76c83e35cd
2017-04-05 11:32:13 +00:00
drh
32d0eba4c2
Attempt to remove bash-isms from configure.ac. Use -O0 with --enable-debug.
...
FossilOrigin-Name: 71ed35ccf7c0f6c49118a44cf6621f46b9ea883e4a74d51b8b1ade6d9a95413a
2017-04-05 10:54:14 +00:00
dan
75f9558808
Fix a problem causing "PRAGMA integrity_check" to disable the xfer
...
optimization for subsequent VACUUM operations on tables with one or more CHECK
constraints. This could result in VACUUM producing slightly larger database
files.
FossilOrigin-Name: e5bb7db51cdfd8124c60329782798cea398733545594dab55cb892b2a08c4d29
2017-04-04 19:58:54 +00:00
drh
628dfe163f
Avoid an unnecessary call to sqlite3WhereGetMask() inside of whereShortCut().
...
FossilOrigin-Name: 5c11f4303f6a33d6358f451244551be63baf9afe5630332e60b349215e20a3af
2017-04-03 14:07:08 +00:00
dan
cfb3235752
Do not attempt to run sync2.test with SQLITE_DISABLE_DIRSYNC builds.
...
FossilOrigin-Name: 658f08ce84b45f057843263961f6c47a322f841764134ec38f35719f0f2042d7
2017-04-03 13:59:22 +00:00
drh
761f691d0e
Force a schema load prior to "PRAGMA optimize".
...
FossilOrigin-Name: 86897c24c0b35ffea8df72d86a099addf67de210c6568aaba22ef92f1a60c3cf
2017-04-03 13:33:51 +00:00
drh
1cc3a36d90
Fix typos in the documentation for OP_Column.
...
FossilOrigin-Name: 777b43e64ffb2fb80ba7b705c129c133bf9787993a66cde1759dc070b324b4b4
2017-04-03 13:17:31 +00:00
drh
caab5f42db
Slightly smaller and faster implementation for vdbeSorterCompareInt().
...
FossilOrigin-Name: 84fa069c5bdfe41d03d03875c9157cc6785150b677c04e40b8916ba5af073dc8
2017-04-03 12:04:39 +00:00
drh
8e633b3ba9
Remove an unnecessary setting of the Mem.enc field for the output of the
...
OP_Record opcode, for a performance improvement and size reduction.
FossilOrigin-Name: e6e36b288fdf21b7ff7f0bf85d2225b6505f54367b183c302c93c34a4a40b8b5
2017-04-01 20:44:26 +00:00
drh
662c50e067
Minor performance enhancements to the OP_Affinity opcode.
...
FossilOrigin-Name: c45cd3b947c0f03a688f827fddb4629a986788f0dd98d5ef899f11e68ff1c202
2017-04-01 20:14:01 +00:00
drh
96a7e28df6
Remove an unnecessary clearing of the Vdbe.iCurrentTime value.
...
FossilOrigin-Name: fcd2acdd6075aa9a7a66ce254eba77485f7b2804127e109c0309173488cd4b87
2017-04-01 19:45:20 +00:00
drh
b808d77771
Faster implementation for sqlite3VdbeIntValue() and sqlite3VdbeRealValue().
...
FossilOrigin-Name: 8698df60c23d4dcc80b58352c14ae80ec238cac496f8a87bd72a96fef61cc63f
2017-04-01 11:59:36 +00:00
drh
b6017a44c5
Remove unused fields from the BtCursor object.
...
FossilOrigin-Name: 1c0d82e0786ed22d07d774b8b166340fad97bcaab6016e395c469bcfcb7c77a3
2017-04-01 11:40:05 +00:00
drh
75e96b3100
Save a 78 bytes of code space and a million CPU cycles in speedtest1 by
...
storing the cell index for the leaf page in the BtCursor object in its own
field (BtCursor.ix), rather than as an entry in the BtCursor.aiIdx array.
FossilOrigin-Name: 2452f0617d1085689264b5f66681788cfe9e3b1a7b318307c93942b702a443df
2017-04-01 00:20:06 +00:00
drh
53b2459a36
Declare the Lemon-generated parser object as itself. (Duh)
...
FossilOrigin-Name: c8000e94cca59dabf83d6cb75b40441aaf793d29880582dc4baa17246449b5fe
2017-03-30 17:13:37 +00:00
drh
52105783fd
Increase the version number for the next development cycle.
...
FossilOrigin-Name: 9e550ccc29f317422dae3a4bb89a78b839330825fecd40a01d1a2acc719cef79
2017-03-30 16:51:35 +00:00
drh
ecc0f84d08
Ensure that the stack space used to hold the Lemon-generated parser object
...
is always 8-byte aligned.
FossilOrigin-Name: 1279de0b70cabf39899d92ece8852a780fd800bf3154971537b3427e5bd3ca50
2017-03-30 16:37:05 +00:00
mistachkin
b3d3bea31d
When compiling with MSVC, disable extra SELECT/WHERE tracing for dynamically built shells.
...
FossilOrigin-Name: a68919425c528b887e66b588a73a619f0506cb06855350e0ec8f844acf64d8f7
2017-03-29 23:22:18 +00:00
drh
9ca431aef8
Avoid unnecessary blob handle invalidation when changes are made to an
...
unrelated table.
FossilOrigin-Name: 4a01880b62706c12d6f16f7c2b5c8b0dc67a9a8a0a48c5b42451e1a133e85611
2017-03-29 18:03:50 +00:00
drh
4eb8d7fa89
Slightly smaller and faster implementation of pcache1InitBulk().
...
FossilOrigin-Name: 06c2b685e15b3ee045a3e7ea018701392771c7664e59a51c9aba87cdefeb37af
2017-03-29 17:06:14 +00:00
dan
9f549d548d
Fix some tests in malloc5.test to account for the sqlite3_release_memory()
...
change in the previous commit.
FossilOrigin-Name: d336858dfcfb9539c43582b1443911df825f9af7146957734bc6f01c8f4d98e3
2017-03-29 16:55:23 +00:00
drh
bf96228754
Fix the sqlite3_release_memory() interface so that it works even if
...
SQLITE_DEFAULT_PCACHE_INITSZ is non-zero.
FossilOrigin-Name: 5d902b7fea3144bf57f02aca87b9795fdcec4774310ade6ef01f37d206c3d74f
2017-03-29 15:18:40 +00:00
drh
0d8d9c9eff
Add the new sqlite3_set_last_insert_rowid() interface to the extension
...
loader thunk.
FossilOrigin-Name: 8469fc0d48d6af0accef9b8a84e08ad2ca32351907510d177b4ca4815c1ea7cb
2017-03-25 19:16:41 +00:00
dan
b9cd86a091
Do not run tests for ".dump --preserve-rowids" when testing
...
SQLITE_OMIT_VIRTUALTABLE builds.
FossilOrigin-Name: 55df410b2cd27dc4c7670bcc1196fa3a0e9e601fc24c42e53d6b0a26ee3e4b45
2017-03-25 18:31:42 +00:00
drh
34ad36bf81
Disable the new --preserve-rowids option on the CLI ".dump" command if
...
compiled with SQLITE_OMIT_VIRTUALTABLE.
FossilOrigin-Name: bd5bbe4eece9051cc8c27d834d22fb243d34f261641984555d02a27b7038d4f6
2017-03-25 18:15:05 +00:00
drh
3e7d012eb1
Make the default value for SQLITE_DEFAULT_SYNCHRONOUS a simple integer
...
literal, so that it does not show up goofy in the output of
"PRAGMA compile_options;".
FossilOrigin-Name: 833ab3212addc340ca8004e8d6a06cc5e51bf256f43dc73d87fbe67518a4891b
2017-03-25 18:03:26 +00:00
drh
2fb79e9b04
Fix two harmless compiler warnings.
...
FossilOrigin-Name: 32be9c3faaafd736da3f49d475dc9279af4e4ba38070b60033d898345080acf0
2017-03-25 12:08:11 +00:00
drh
ba7cce317b
Fix a harmless compiler warning in the JSON1 extension.
...
FossilOrigin-Name: c2c3dd84534bb5ea81c974847b74a166c9cba1545fc749ce625929f303bf22e4
2017-03-24 19:45:05 +00:00
drh
18333efd51
Previous check-in was not correct. This is a better fix for the OP_Once
...
problem of ticket [06796225f59c057cd120f1].
FossilOrigin-Name: 8194dd2814b0b3f8cffbcb16306f55aabf1c1508b9d27fa806f92f0e6ecd7631
2017-03-24 18:38:41 +00:00
drh
ab087d4e67
Fix the OP_Once opcode so that it works correctly for recursive triggers.
...
Ticket [06796225f59c057cd120f1].
FossilOrigin-Name: 2556014514f36808e6d18b25722eae0daeeb8fbb5d18af13a9698ea6c6db1679
2017-03-24 17:59:56 +00:00
drh
f9e91972c9
Add the RFC-7396 Appendix A test cases for json_patch().
...
FossilOrigin-Name: c5441d2df2526723f72610cc14dd243223663979e67ecdd76fe06fcd366f2b29
2017-03-24 13:31:47 +00:00
drh
29c9969871
Fix an error in the new json_patch() routine discovered by Ralf Junker.
...
FossilOrigin-Name: 9d5350418b2f6113e0b50c57e8a872006f27753067baf08ffdfa7943c0c9a148
2017-03-24 12:35:17 +00:00
drh
adc117d40e
Add the json_patch() SQL function to the JSON1 extension.
...
FossilOrigin-Name: 476088482024e411e2549b1697cdaf0124294c79d43f508c71c4eb66906a56fc
2017-03-23 23:44:55 +00:00
drh
37f03dfb1f
Change the name of the json_merge_patch() function to just json_patch().
...
FossilOrigin-Name: 04d4100445a3373986ee962618bc03ec304f6ba2f867c8e9eee415daffb593fc
2017-03-23 20:33:49 +00:00
drh
db528529bf
Improvement to the amalgamation configure.ac file contributed by
...
Bob Friesenhahn.
FossilOrigin-Name: bf28a55d8185e370fea39de297c37387f852f43fac0a316e5900e633f99b367f
2017-03-23 19:51:38 +00:00
dan
8fe3e9d882
Do not run test file autoanalyze1.test if OMIT_VIRTUALTABLE is defined.
...
FossilOrigin-Name: e1d06a573ee56bf6a14e4dc8086d6a4df1464f2914834cf4596a0a406688f608
2017-03-23 17:22:09 +00:00
dan
a77edc69ee
Remove an invalid assert() statement failing when VACUUMing a database that
...
contains an index on a column explicitly declared "COLLATE BINARY".
FossilOrigin-Name: 9f2e04d3c3526b5ff60d941aa6d5446f602cab37cb93972937f39eefabd6868d
2017-03-23 17:03:35 +00:00
drh
1fe162fd0c
Avoid redundant edits in the json_merge_patch() function.
...
FossilOrigin-Name: 4a8e6437dd610c5376a07867a73e5a7e2ea90357a018e1788ecce6f4e10bc939
2017-03-23 12:56:44 +00:00
drh
0002d246a9
Fix harmless compiler warnings in the new json_merge_patch() logic.
...
FossilOrigin-Name: 5d2cf5a2f8afd88d041d89b3936042ce5a43629d23c48738cb2791b24da3e6af
2017-03-23 00:46:15 +00:00
drh
bb7aa2d85e
Various fixes to the json_merge_patch() function.
...
FossilOrigin-Name: f49fd2554b0723eb7cf2fd765d655c6820833ee7e5f7d7629d98c27a6fffa1d9
2017-03-23 00:13:52 +00:00
drh
f07b249f92
Change the name of the new function to "json_merge_patch()".
...
FossilOrigin-Name: 53bf70f37bbca319ea35f70849e2a34ae628a504486158fdad5c4bb7431c68e0
2017-03-22 21:45:20 +00:00
drh
633647af75
Initial implementation of the json_mergepatch(A,B) SQL function.
...
FossilOrigin-Name: a267444039af519f088dd8f8ee33f686cc3071c087677075af2364ebc2587514
2017-03-22 21:24:31 +00:00
drh
701ff6ad2d
Fix harmless compiler warnings in the shell.
...
FossilOrigin-Name: a786829783ef65ef270ca360712364cbd47a540d31ed1547d50808aad698bea7
2017-03-22 12:51:34 +00:00
drh
918938f9c2
New simplified memory initialization for MacOS.
...
FossilOrigin-Name: 055b36f1c1593bb123f7319a07c476143d71af052b5b8d34afcd0d500f197882
2017-03-21 20:17:24 +00:00
drh
49297c86d2
Fix an incorrect assert in the ANALYZE logic for STAT4 on WITHOUT ROWID
...
tables.
FossilOrigin-Name: ad741976c8c29bcc94f9ea9ed7deb580bb00c8a81d1a7fba1a4e03849728433d
2017-03-21 18:56:52 +00:00
dan
119fc11eb0
Add short script ext/fts3/tool/fts3cov.sh. To help measure test-coverage of
...
fts3 source code.
FossilOrigin-Name: ee9588e873ffebcaa177957950cbb14924e154c391ed7f687116065064ff11b0
2017-03-21 17:19:31 +00:00
dan
a14b7e02e9
Do not run sync2.test as part of the "inmemory_journal" permutation.
...
FossilOrigin-Name: 9f680bc7c47f8391adba6ea2b4b2cb6a5a041e22753543d5224da6656c3762fe
2017-03-21 10:45:38 +00:00
drh
174f855306
Add the --native-malloc option to fuzzcheck. Fix ossfuzz.c and fuzzcheck.c
...
so that they both deallocate the temp_store_directory before closing.
FossilOrigin-Name: 0dd18ec882bb28a87629d6d8dfeb5ea5d82833634b3781a7d14b917272c4dfa0
2017-03-20 22:58:27 +00:00
drh
16f0582c1b
Fix the fuzzcheck program so that it can create new databases again.
...
FossilOrigin-Name: 021e8874a7d1bb94debae3ae04f83056a8573148ffc872cd76a186a2d22d0296
2017-03-20 20:42:21 +00:00
dan
74869e5e52
Avoid passing NULL as the second argument to memcpy() in fts3.
...
FossilOrigin-Name: 49b93d972de9649abfd6235b65dda1c9d468956671e50704afde6181ffa56dea
2017-03-20 19:35:30 +00:00
dan
6b904f5e01
Avoid a technically undefined right-shift of a signed value in rtree.c.
...
FossilOrigin-Name: a144875fe44ff3a30bab299d50b7dbec2ee21f8c73e692a71ee1f7c54b5f0c76
2017-03-20 19:26:27 +00:00
dan
920c83f18f
Fix some problems in fts3 found by address-sanitizer.
...
FossilOrigin-Name: 16a8e84fa7f67a467f824bdd7f72cbd6a6e95dab8cc7aa1e0e751720b98f3e31
2017-03-20 18:53:32 +00:00
drh
5f42995a0a
Avoid the possibility of signed integer overflow with oversized precisions
...
in %d conversions in the printf() implementation.
FossilOrigin-Name: ef3a7c877a7549b351aafd983cfa96c863eb2641b6218bdd5cb563f659f879d8
2017-03-20 16:34:18 +00:00
dan
5b3a3b359a
Do not run sync2.test as part of the "journaltest" permutation, as it uses
...
"PRAGMA synchronous = off".
FossilOrigin-Name: 285005a9bcb210bb2a9aa9fed6a19d4b78641a6e7622d469bd0d2a365b2c0735
2017-03-20 16:06:48 +00:00
drh
7adbcffcb9
Ensure that a "--" prefix is added to sqlite3_trace_v2() output for nested
...
SQL statements.
FossilOrigin-Name: 673a7b67c4828acaea3baebea500ef1f8ae763588b0d9c9f2ad6ed5ceb3cfee2
2017-03-20 15:29:28 +00:00
dan
154cc74601
Only run sync2.test on unix, as it depends on instrumentation in os_unix.c.
...
FossilOrigin-Name: ecb9321e18dd72ea18d197c61c4d69500e9c4282c0eac67822cb40b2710a2815
2017-03-20 15:11:40 +00:00
drh
978896e0eb
Fix the check.test script so that it works on Windows.
...
FossilOrigin-Name: 8822eb5d790bf8d4302c3f2dc05ab672193b309fb11771c4b3eea8a77f37e299
2017-03-20 14:44:07 +00:00
drh
d3d52ef147
Documentation fix: SQLITE_SOURCE_ID is a now a SHA3-256 hash.
...
FossilOrigin-Name: 2aa22509e7c8a1f09b16e4544c95d0b77503daed1f83106ccc18dee8bd9487a4
2017-03-20 13:03:39 +00:00
drh
a80e160634
Only do the specialized MacOS single-core zone_malloc initialization if
...
compiled with the SQLITE_MIGHT_BE_SINGLE_CORE flag. This avoids a (harmless)
warning about OSAtomicCompareAndSwapPtrBarrier() being deprecated.
FossilOrigin-Name: 4e6a03d9e12b120d15946b025f97a97697cb8e8af543c238ffda220c9e3f28f4
2017-03-18 13:59:46 +00:00
drh
46acfc2b47
Fix an error in the newly revised documentation for SQLITE_LIMIT_VDBE_OP.
...
No changes to code.
FossilOrigin-Name: f4cf8635e6fec6f04075cc067aaa71abc4f71739068e0ad2c44609dcb8691009
2017-03-17 23:08:11 +00:00
drh
544cab7651
Set a reasonable limit on the number of opcodes in a prepared statement
...
for ossfuzz.c. This should prevent timeouts in OSS-Fuzz when it generates
totally unreasonable queries.
FossilOrigin-Name: f74899ed2c78019abb406432a74dcd42a0ff8d9add005f8544dc4a8905f232eb
2017-03-17 22:51:28 +00:00
drh
1cb0266dcb
Begin enforcing the SQLITE_LIMIT_VDBE_OP. The documentation warned that this
...
day might come.
FossilOrigin-Name: ef5914617088cbf89bfae88f63ea959a07f02dff387ddc2b43948ad99c6a97b8
2017-03-17 22:50:16 +00:00
drh
f53524b4f7
Add the --show-errors and --show-max-delay command-line options to the
...
ossshell test program.
FossilOrigin-Name: 626bdca98e0cd78ae873d97e75bb7d544ca18759c9f1e67f4adf03daca7fe5bf
2017-03-17 14:59:40 +00:00
drh
59d705ab80
Fix the Makefile.in so that it builds the ossshell test program correctly.
...
FossilOrigin-Name: 36f5602ec9fb8e404c5250e18b1db877ac7bee643918b94afd51808134ea7900
2017-03-17 14:15:06 +00:00
dan
1f9144ed41
Fix a buffer overread in debugging routine sqlite3VdbeMemPrettyPrint().
...
Problem discovered by OSS-Fuzz.
FossilOrigin-Name: f336fba7d7d41b91a5000d01dddf785821fa79ea31dbd8d1f769d55f7e871896
2017-03-17 13:59:06 +00:00
drh
a3b2da9889
Fix a problem in the enhanced PRAGMA integrity_check where it verifies
...
CHECK constraints: Do not be confused by the reuse of the Table.pCheck field
by VIEWs with named columns. Problem discovered by OSS-Fuzz.
FossilOrigin-Name: 019dd3d5ba4a596c4ec3b5f0de8402c72196af0faca9138edbc0f1f4957cae60
2017-03-17 03:21:14 +00:00
dan
af3332989f
If the user has not set it explicitly, set the "PRAGMA synchronous" setting to
...
SQLITE_DEFAULT_SYNCHRONOUS when a database connection changes from wal to
rollback journal mode.
FossilOrigin-Name: 5c604479fda06714500959e121c719d1b6c8e54d1658eb9f560a4af95b7c5829
2017-03-16 18:55:21 +00:00
dan
fc8f4b658c
Fix a typo causing the build to fail if SQLITE_DEFAULT_SYNCHRONOUS==SQLITE_DEFAULT_WAL_SYNCHRONOUS.
...
FossilOrigin-Name: df39adeaa4d73a3d4ec831843b8ec7fd449f8b2137bdc7d7c320958d00e98db6
2017-03-16 18:54:42 +00:00
dan
f5da7dbb07
If the user has not set it explicitly, set the "PRAGMA synchronous" setting to
...
SQLITE_DEFAULT_SYNCHRONOUS when a database connection changes from wal to
rollback journal mode.
FossilOrigin-Name: 78030c0f52aa39fb2ab32c75c56e6bcefe6382b8df28b1909e3c911e42dbeca3
2017-03-16 18:14:39 +00:00
drh
b30574bcae
Simplified OOM detection in the instr() SQL function.
...
FossilOrigin-Name: 6d85eb5736781b43aa674d9544c7523b849b4e634f371702f8764b33e22e1e9f
2017-03-16 14:28:52 +00:00
drh
85c2dc0ae6
Fix an uninitialized variable reference in the text generator
...
for "PRAGMA vdbe_trace=ON" output.
Problem discovered by OSS-Fuzz.
FossilOrigin-Name: e3d487162d1596ce125644f754ed9531ef4412f31f6837c3e31b7542b90602fe
2017-03-16 13:30:58 +00:00
drh
970ea372c4
Fix a problem in the "showdb" utility that prevents it from correctly
...
decoding cells with no content beyond the record header.
FossilOrigin-Name: eb7680a1c047b2a33d6a0c9733fafaee11272377c627af10bbd541b6b7ed952b
2017-03-16 13:14:03 +00:00
dan
116b56a2cc
Fix a crash that could follow an OOM condition in the instr() SQL function.
...
FossilOrigin-Name: 6e59e903e4e956617bddef0b94e5cae02d724ac8145940b57ab5b0f628759736
2017-03-16 12:11:07 +00:00
drh
6f25936c9c
Updates to README files under the ext/ hierarchy. No changes to code.
...
FossilOrigin-Name: 029bc5d224bcbdcca2307710539b133c39e2a27b971c28b294a1f517b80cb418
2017-03-15 20:27:46 +00:00
drh
6295ff1d3e
Add the "Obtaining The Code" subsection in the top-level README.md file.
...
No changes to code.
FossilOrigin-Name: b1b1aa8b69aa80c83aec3380565f0b4ec0b6a6e033537becee098872da362e9a
2017-03-15 19:11:29 +00:00
drh
a5d75ba9ea
Mention the ".selftest" command in the ".help" output of the CLI.
...
FossilOrigin-Name: 37f766dbad1f99ff86dd1b771bf443036e928e5b4d8abe55bbe4acf3362c7be2
2017-03-15 14:20:34 +00:00
drh
7553c82894
Make "PRAGMA temp.synchronous=N" a no-op to ensure that the TEMP schema
...
always has synchronous=OFF. This fixes an issue discovered by OSS-Fuzz.
FossilOrigin-Name: bcf6bb08d8b07d3c4567bcd367f8d4011ce8baad28c25d4e8870bdf347dd48bd
2017-03-15 14:04:03 +00:00
drh
9c4527e57d
Improved header comment on the shathree.c extension. No changes to code.
...
FossilOrigin-Name: 84f2e3d5f611b35de16684956d842df6c93d858e8187f17eb27452758a752c57
2017-03-15 13:47:39 +00:00
mistachkin
943d825b54
Updates to the MSVC makefiles.
...
FossilOrigin-Name: 1e4b9e7c9ee32b985c440bf3eb65bbdf28055566e66b6feba438143a3ad8dd07
2017-03-14 15:27:56 +00:00
drh
29df8d1fc2
Add the dbdump.c extension that implements functionality similar to the
...
".dump" command of the CLI, though in a separate library.
FossilOrigin-Name: 2b9980a292d7f0d995b77d9b3fb217bb2206f6d452e036ac502fa06561af4c12
2017-03-13 22:10:05 +00:00
drh
4b34eb3bf5
Add dbdump.exe to the MSVC makefile.
...
FossilOrigin-Name: 59241a50ad1d6fe9f5804b73b3467dcd407d359ccbdcb9d72f2f6d94c90c1f40
2017-03-13 22:02:01 +00:00
drh
d3bc75fb94
Fixes to the dump logic. All appears to be working in preliminary tests.
...
FossilOrigin-Name: 007b11e301d444361c8eff8734dc2fb968a64343c177ff30cec74a0cf76099e8
2017-03-13 21:49:48 +00:00
drh
473af4fe03
First draft of the complete dbdump.c library.
...
FossilOrigin-Name: 84ea4fcc52d0af02648c52989c2e69f4961071e1620382555ec59a39161a7a7d
2017-03-13 21:26:41 +00:00
drh
688633cb9e
Infrastructure for an extension C-library to implement sqlite3_db_dump() and
...
a corresponding "dbdump" command-line utility - both of which do the same
work as the ".dump" command of the CLI.
FossilOrigin-Name: 74c5ace498f72d7f5495203678bedd0bc540211131a4e4db7b62115d5322a288
2017-03-13 19:26:34 +00:00
drh
d3bb79bd0f
In the output of the ".dump" command in the CLI, quote newline and
...
carriage-return characters using the char() function, so that they do not
get eaten by end-of-line processing logic in the OS or in other command-line
utilities and/or libraries.
FossilOrigin-Name: 68f6dc7af1013f296a11db14c007cc13cc3fe56832848bfed835ed8f74dcc676
2017-03-13 18:24:06 +00:00
drh
510b7ff536
Fix the sqlite3TreeViewSelect() routine so that it works with a null pointer
...
to the Select object.
FossilOrigin-Name: 9034cf7efc603864f51e931c7dc4fbbc2d01904e951e78c88d4d80f9936250e8
2017-03-13 17:37:13 +00:00
dan
c3becddb75
Fix a segfault that could occur following an OOM error in the
...
flattenSubquery() routine.
FossilOrigin-Name: c6dda3f752c184f441624c9993e77d5031063d79a0e177b6e25a9886514a742e
2017-03-13 14:30:40 +00:00
drh
bbc0177460
In the OSSFuzz test module, invoke the progress handler much more frequently
...
so that timeouts are detected punctually even if the test script is running
opcodes that individually take a long time (for example, an OP_Function opcode
that invokes "randomblob(1.5e6)").
FossilOrigin-Name: f3b6959c04c4ef7b8ff03582b867012a869d52b4a90a0d7ab079ee4c21be5464
2017-03-13 13:45:29 +00:00
drh
ba28b5ab0a
Fix a possible NULL pointer dereference in following an OOM error
...
in sqlite3ExprIsInteger(). Problem found by OSS-Fuzz.
FossilOrigin-Name: 5ec655e8e817c1ed3bfb2e576745a7cef441494ad7baf1bf9f8895e98ac19c5a
2017-03-12 20:28:44 +00:00
drh
1ed1e616f7
Remove an obsolete assert() in the IN operator code generation.
...
FossilOrigin-Name: 18bf6aca2ac86478fd12d5020f3a41cfd2bd2dc3defe2298411f79ad308a6f73
2017-03-12 19:39:00 +00:00
drh
202230ef5c
Make sure the translateColumnToCopy() routine in the query planner does not
...
try to access an array that failed to be fully allocated due to a prior OOM.
This fixes an issue discovered by OSSFuzz.
FossilOrigin-Name: 3299a26160c239255608d1e2b15a221e28b18a3d
2017-03-11 13:02:59 +00:00
drh
708b22b1e3
The output of the ".dump" command in the CLI quotes newline and carriage-return
...
characters using "char(10)" and "char(13)".
FossilOrigin-Name: 8b2954dd8376e2de985cf5dedeb6eec32c430505
2017-03-11 01:56:41 +00:00
drh
891d6b4e9e
Increase the number of significant digits in floating point literals on
...
".dump" output from the shell.
FossilOrigin-Name: 7359fcacaadc349f520536311dcd1d0b5cea7673
2017-03-11 00:46:57 +00:00
dan
1ba30db8bd
Remove the rbu_round_trip.tcl script. It is now part of project "test-dbs".
...
FossilOrigin-Name: b5bf2957677e8f2acd7426b302229a966de08fd9
2017-03-10 18:36:34 +00:00
drh
a6bf20b587
Fix an error in the SQLITE_MAX_MEMORY implementation resulting from a bad
...
merge. Update the OSSFuzz interface so that it times out after running
the byte-code engine for 10 seconds.
FossilOrigin-Name: f8560c60d10c0365b33342ab05b5a953987b0471
2017-03-10 17:03:11 +00:00
drh
1e45c7db56
Add the -DSQLITE_MAX_MEMORY=N compile-time option. The default is no limit.
...
FossilOrigin-Name: eabd4ef498a0f0d97d65e321c4d06ab90523ed61
2017-03-10 16:22:40 +00:00
drh
e43d6aee45
Add the SQLITE_MAX_MEMORY compile-time option that provides a hard upper bound
...
on the amount of memory that SQLite will use, per process.
FossilOrigin-Name: 77dfe2abdae88dea81217f352d87e5ba2c822715
2017-03-10 15:55:54 +00:00
drh
a2df53bd61
Enhance the ".stats" dot-command in the CLI to use sqlite3_status64() instead
...
of sqlite3_status().
FossilOrigin-Name: 118f5c0564fef70cbd06fc0d9dbb2baec162cc39
2017-03-10 14:36:10 +00:00
drh
f157d10f9f
Improvements to ".selftest --init". Tests are number in increments of 10
...
starting with 100. The tests are generated inside a SAVEPOINT. Errors are
reported during test generation. Tests can be appended to existing tests.
Add a test case to verify the schema.
FossilOrigin-Name: b044b152aac2ec606750940ea816ad4a4aef8eb6
2017-03-10 01:05:38 +00:00
drh
fb546afb4d
Remove the test/dbselftest.c program. In its place, add the ".selftest"
...
command to the CLI. The new CLI version is .selftest is slightly different
in that it uses SHA3 hashing instead of SHA1, so the new is subtly
incompatible with the old.
FossilOrigin-Name: f4fcd46f08ba59d2a3e772cad98383129f648386
2017-03-09 22:00:33 +00:00
drh
f8563c00b2
Fix the ".dump" command to correctly extract tail data from corrupt
...
WITHOUT ROWID tables.
FossilOrigin-Name: 6c627e50622d8bcd25ec7d5503f3fafd725673a8
2017-03-09 18:13:52 +00:00
drh
e6e1d124db
Begin moving separate boolean variables in the ShellState object of the CLI
...
into the shellFlgs bitmask.
FossilOrigin-Name: 50eec5d9aa38fab1a85d788356ffdaf6c35d9ece
2017-03-09 13:50:49 +00:00
drh
f80d4ff59f
Make sure the database connection is open prior to running the ".sha3sum"
...
command.
FossilOrigin-Name: 2ea300fb8f7c497f3f092dc91f4305d8431c27d9
2017-03-08 18:06:20 +00:00
drh
3ee83efec1
In the ".sha3sum" command, if there is a LIKE pattern, show the hashes for
...
each table separately. Without a LIKE pattern, show a single hash over the
entire database.
FossilOrigin-Name: 30f878832820ce7ccc4627c4f0f98fbe82f8b0f6
2017-03-08 17:56:54 +00:00
drh
1554bc8a2e
Add the ".sha3sum" command to the CLI - used to compute a cryptographic hash
...
of the <em>content</em> of a database file or of individual tables with in
that file.
FossilOrigin-Name: fc663799075a22b0a61a6a114116bb2d1b96d4ab
2017-03-08 16:10:34 +00:00
drh
4146b4e34a
Improved comments explaining the sha3_query() format. Fix a performance #ifdef
...
error in the sha3 implementation.
FossilOrigin-Name: 54ef7abd7f5b16f4b29c9519d283e142c9340fbf
2017-03-08 15:03:12 +00:00
drh
acc83d2e4f
Add the shathree.c extension for implementing SHA3() and SHA3_QUERY() SQL
...
functions.
FossilOrigin-Name: f7ca9193ddafd3676406bdfeb1b7d21182c2a3c1
2017-03-08 13:50:40 +00:00
drh
f42d318002
In the CLI, avoid unnecessary identifier quoting in the ".dump" output.
...
Also add new ".dump" test cases.
FossilOrigin-Name: de65f907610a59e64cbf2214789c11f7117a86a6
2017-03-08 12:25:18 +00:00
drh
e611f14471
Add the --preserve-rowids option to the ".dump" command in the CLI.
...
FossilOrigin-Name: c60aee24714a47ce12ee2a4dcefb9f55211d3761
2017-03-08 11:44:00 +00:00
dan
5cc95ebf37
Add test script ext/rbu/rbu_round_trip.tcl. Uses "dbselftest" to test that
...
"rbu" and "sqldiff" work together.
FossilOrigin-Name: 961e79da73b4550b3e5b0f9a617133a76485db67
2017-03-07 20:03:25 +00:00
drh
9b38d6660f
Performance optimization in the tokenizer/parser loop.
...
FossilOrigin-Name: 2cb71583d631cd417acbeebbb4ee950573a9deef
2017-03-07 14:38:52 +00:00
drh
567bd44917
Minor comment typo fixes. No changes to code.
...
FossilOrigin-Name: 01cd9fb176cde30658233e36aad44e4a5519612e
2017-03-07 12:18:23 +00:00
drh
a92b81f487
More size and speed improvements in the expression name resolver.
...
FossilOrigin-Name: e0a3d39f51a50420bae97e2bc9a8c01a5b0d3db8
2017-03-07 03:40:48 +00:00
drh
3cf48e3e89
Small size reduction and performance increase in the name resolver routine
...
for expressions.
FossilOrigin-Name: 1a3554e1d71b666325ff377fae5329d79ce5c05f
2017-03-07 03:25:52 +00:00
drh
59dbe3a5ef
Make the default MASK argument for "PRAGMA optimize" be 0xfffe, to allow for
...
future expansion of up to 14 new default-on optimizations.
FossilOrigin-Name: 73019a8bba29fd07f73559cd00d5346fa822b439
2017-03-06 23:51:16 +00:00
drh
e1f1c0802c
Fix a typo in a comment. No changes to code.
...
FossilOrigin-Name: ec529bf11b16c801ea438e57d208ff7e4cedf1f9
2017-03-06 20:44:13 +00:00
drh
cc98b1fc89
Add an initial implementation of the "PRAGMA optimize" command.
...
FossilOrigin-Name: 137aeb2b160888100bc1e871b00860149e5f6196
2017-03-06 17:33:58 +00:00
drh
063d57039e
Merge updates from trunk.
...
FossilOrigin-Name: 5f7fc79aa06ca9b79664c50c3c277c98a74ff9a0
2017-03-06 11:39:34 +00:00
drh
2996796dcf
If a reprepare is needed after binding to a variable with a number larger
...
than 32, set only the high-order bit of the Vdbe.expmask rather than setting
all bits. This could potentially result in fewer false-positive reprepares.
FossilOrigin-Name: 45797feefe90cb7da53256b0c42fdaa1221d0a27
2017-03-03 21:51:40 +00:00
drh
f3f883fcd7
Remove an redundant function call from the date/time function implementation.
...
FossilOrigin-Name: 4a04c48a311b19ba5e566877dc5baff543c41aba
2017-03-03 21:36:26 +00:00
drh
35a0925a23
Fix another corner-case for the 'start of ...' modifier in the date/time
...
functions. Related to ticket [6097cb92745327a1].
FossilOrigin-Name: 8831f4393dda42b3434e7767968caea84bbca2af
2017-03-03 20:43:43 +00:00
dan
30741eb0d3
Fix a case introduced by [4cd2a967] where a corrupt database could cause a buffer overwrite.
...
FossilOrigin-Name: 5d0455fece514552ad7f283d56526f53d7c688bd
2017-03-03 20:02:53 +00:00
dan
0e9b43ff85
Before beginning an incremental checkpoint in RBU, sync the directory
...
containing the target database file. This ensures that the new directory entry
created by renaming the *-oal file to *-wal is synced to disk.
FossilOrigin-Name: 915a9a28783fbb2f4c0794eb4264ce8c0b9d42f7
2017-03-03 16:51:46 +00:00
drh
9715f7f033
Fix a bug in the 'start of ...' date/time modifiers when they follow a
...
julian day number. Fix for ticket [6097cb92745327a1].
FossilOrigin-Name: 081dbcfb6d82528cefecb36c4491fa6e1a790b17
2017-03-02 23:40:21 +00:00
dan
1d62a66230
Fix another RBU case similar to the previous. This one for systems where the
...
sector-size is larger than the page-size.
FossilOrigin-Name: 4012bb3aa91927156ba149caa4e5c622b0729d79
2017-03-02 16:56:48 +00:00
dan
cb1b0a693a
When saving the state of an RBU update in the incremental-checkpoint phase,
...
sync the database file. Otherwise, if a power failure occurs and the RBU
update resumed following system recovery, the database may become corrupt.
FossilOrigin-Name: edee6a80e1cc7e6a2b8c3c7f76dd794fc8ab9a72
2017-03-02 14:51:47 +00:00
drh
1cfaf8eafb
Add an optional bitmask of allowed optimizations on the "PRAGMA optimize"
...
command. The 0x01 bit is Debug Mode.
FossilOrigin-Name: a35388eef4096c1856b025dbd90143409d4a72d3
2017-03-02 14:17:21 +00:00
drh
8d990b34db
Merge recent trunk enhancements.
...
FossilOrigin-Name: c60cdb47612c05c252613e50a8ac10635469fdfe
2017-03-02 13:22:04 +00:00
drh
76adb23980
Make sure the Vdbe.expmask value is set correctly in sqlite3VdbeSwap().
...
This fixes a problem introduced by [a8fd7052].
FossilOrigin-Name: 29f54b899e5cf22ece98ab41c39c41d75a4b228d
2017-03-02 13:13:30 +00:00
dan
2147221c36
Fix a use-after-free problem in the shell tool code that could occur if an SQL
...
statement were executed after an ".open" command with invalid options.
FossilOrigin-Name: ac760db0727209db0a816e112ea5f47e54d54dac
2017-03-01 11:30:27 +00:00
mistachkin
6e5688d375
Make PATH handling more robust in the batch tools for MSVC.
...
FossilOrigin-Name: 23a8917e848a999533bc66467f7cb2f4f3d45bc1
2017-02-27 17:16:27 +00:00
dan
81415257ec
Improve performance of fts5 writes by writing the "averages" record once at
...
the end of each transaction instead of every time the table is updated.
FossilOrigin-Name: 2b210d691462b463796e7948399133c296e89ebf
2017-02-27 17:06:56 +00:00
dan
8a89d834d6
Add an sqlite3_set_last_insert_rowid() method. Use it to work around fts4 and
...
fts5 modifying the last-insert-rowid unintuitively from within commit
processing.
FossilOrigin-Name: 952a3906b30a818e4574bb85f57150577d04f74e
2017-02-27 16:15:29 +00:00
dan
9c58b63c18
Add an sqlite3_set_last_insert_rowid() method. Use it to work around fts4 and
...
fts5 modifying the last-insert-rowid unintuitively from within commit
processing.
FossilOrigin-Name: fe41bb5632a5d438acfd682809f1bd12315b970a
2017-02-27 14:52:48 +00:00
dan
2efd3488ba
Remove references to special handling in virtual table methods from the
...
documentation for sqlite3_last_insert_rowid().
FossilOrigin-Name: 660f9569d76e4ff1f5bd4f37f640e6a4fc2cf87d
2017-02-27 12:23:52 +00:00
dan
70cdf38232
Add an 'extern "C"' block to header file sqlite3userauth.h.
...
FossilOrigin-Name: ffd61fb449a510b2fc90caf86b266733051cc365
2017-02-25 20:57:46 +00:00
dan
5328181db1
Optimize defragmentPage() in the case where the page contains either one or
...
two free-blocks and a small number of fragmented bytes.
FossilOrigin-Name: 4cd2a9672c59ea4b3b4cf3d2f139af3c18a8e833
2017-02-25 17:47:31 +00:00
dan
3b2ede1f03
Tweak the code on this branch to detect b-tree page corruption in the same cases as the trunk.
...
FossilOrigin-Name: f9863b39d96dce6cb5e49a5f3a445ff3d897a951
2017-02-25 16:24:02 +00:00
dan
e6d065a81e
Optimize defragmentPage() in the case where the page contains either one or
...
two free-blocks and a small number of fragmented bytes.
FossilOrigin-Name: 202b1c0276aec6b8da64d3277de1ad91c9d62d80
2017-02-24 19:58:22 +00:00
dan
bda4cb876c
Save a few bytes and a few cycles by setting Vdbe.expmask to zero for
...
statements prepared using legacy interface sqlite3_prepare().
FossilOrigin-Name: a8fd705258643863493476f8b42ee981608a339f
2017-02-23 16:30:16 +00:00
drh
555227bec0
Add two NEVER() operators in the sqlite3BtreeRowCountEst() routine.
...
FossilOrigin-Name: 7a959f6d1ea038988cdb4c02d6f37abaec2580a0
2017-02-23 02:15:33 +00:00
drh
bce0414844
Do a single OP_Expire at the very end of "PRAGMA optimize", and omit the
...
OP_Expire on ANALYZE commands invoked by the pragma.
FossilOrigin-Name: 188300a337c87b7ee0dd1f4b9a4f1bd80e70cca4
2017-02-23 00:58:36 +00:00
drh
2ead47cb49
Change the name of the analyze_as_needed pragma to "optimize". Enhance the
...
comment (which will become documentation, assuming these changes land on trunk)
to explain that the optimize pragma is likely to be enhanced in various ways
in future releases and that applications should not depend upon the current
behavior.
FossilOrigin-Name: 9fced545a6f80c55d6dc4a6106cb2d3569566b3e
2017-02-22 20:24:10 +00:00
drh
114ce7a4b1
Merge integrity_check and other improvements from trunk.
...
FossilOrigin-Name: fe073905081b421405ca425ca03c5b8b0ff5f2c8
2017-02-22 19:49:54 +00:00
dan
24d772cc27
Move a branch condition in analyze.c inside an #ifdef SQLITE_ENABLE_STAT4 block.
...
FossilOrigin-Name: d6afd98de3ee8b714dfd6477ead955096f623972
2017-02-22 19:41:16 +00:00
dan
bd1d270ec9
Improve the performance of ANALYZE when SQLITE_ENABLE_STAT4 is defined.
...
FossilOrigin-Name: 737a82444065752785c643b1d29ca097c828effb
2017-02-22 19:27:51 +00:00
drh
6bd166b81e
Improvements to PRAGMA integrity_check.
...
Verify CHECK constraints.
Verify NOT NULL constraints even on table that lack indexes.
Verify CHECK and NOT NULL constraints with PRAGMA quick_check.
FossilOrigin-Name: aa02bd3c95e374008b930d296c88dfafaf11c65a
2017-02-22 18:53:13 +00:00
drh
66accfc56b
Cleanup and simplification of the output row count limit control of
...
PRAGMA integrity_check.
FossilOrigin-Name: 5af7d72ed9ec758283d78ceb46627d72021c1c60
2017-02-22 18:04:42 +00:00
drh
8b174f2916
Fix integrity_check so that it verifies NOT NULL constraints even for tables
...
that have no indexes. Enhance quick_check so that it verifies NOT NULL and
CHECK constraints.
FossilOrigin-Name: 5264844b069cdc20f456acee9f5b2b97c986120d
2017-02-22 15:11:36 +00:00
drh
8a284dcefe
Enhance "PRAGMA integrity_check" so that it verifies CHECK constraints.
...
FossilOrigin-Name: 549bae0856004ff65b505175460abd598b30fe57
2017-02-22 14:15:37 +00:00
dan
1325adf5e9
In sqlite3VdbeHalt(), return as soon as possible if
...
Vdbe.magic!=VDBE_MAGIC_RUN. This makes sqlite3_reset() slightly faster in some
cases.
FossilOrigin-Name: 80adc0cb4ed7bacc54b15ac8b5b205403939c8c4
2017-02-21 21:24:05 +00:00
dan
f0e808c60b
Fix an FTS5 problem that could cause a crash when certain queries were
...
interrupted using sqlite3_interrupt().
FossilOrigin-Name: e400909f313c317b7b67be6eb867ed61df7383dc
2017-02-21 17:52:58 +00:00
drh
e324782254
Very small enhancement to dispatch speed for SQL functions.
...
FossilOrigin-Name: 3c3228ed16ed8a72630bd56bb9192ee3c7f82093
2017-02-21 15:27:22 +00:00
mistachkin
4689956b9e
Correct a harmless typo in the previous check-in.
...
FossilOrigin-Name: 1589db012ef1389bf84399fccf96d143b2ac4c0f
2017-02-20 23:32:04 +00:00
mistachkin
5e6710ab65
Avoid unsigned integer overflows for SQLITE_WIN32_HEAP_INIT_SIZE when the Win32 heap subsystem is used with very large values of SQLITE_DEFAULT_CACHE_SIZE and/or SQLITE_DEFAULT_PAGE_SIZE.
...
FossilOrigin-Name: 96b6a98e5e4cb0ddbfcd78b05bfbfcd8976e9f32
2017-02-20 19:13:37 +00:00
drh
7e84b377a9
Small grammar simplification.
...
FossilOrigin-Name: 0d8a868acd74fb1d076f23fda58b841bb7e6900b
2017-02-20 14:30:17 +00:00
drh
ad67e66dca
Merge fixes from trunk.
...
FossilOrigin-Name: ff213f2ef5bf96754a2264685d25546d8b5ccf0a
2017-02-20 13:11:07 +00:00
drh
99d5b4cde6
Updated comments. No code changes.
...
FossilOrigin-Name: e842ad391e62df273a5b1ed569d42ea46d03a99b
2017-02-18 22:52:40 +00:00
drh
4a54bb5794
Add the OP_SqlExec opcode and use it to implement "PRAGMA analyze_as_needed",
...
invoking ANALYZE subcommands as necessary. This simplifies the implementation.
FossilOrigin-Name: d386015f5e7ecdd951d70db56b7bbd858be7ad90
2017-02-18 15:58:52 +00:00
drh
eeea412a9d
Add the SQLITE_BUG_COMPATIBLE_20160819 compile-time option to omit the error
...
message when an unrecognized argument is provided to the VACUUM command.
FossilOrigin-Name: 491814272dce7e937b4734fcbc2ad69e12377b56
2017-02-18 13:47:11 +00:00
drh
dfe11bae99
Fix errors in the table resize detection.
...
FossilOrigin-Name: 4229caec0b60a1617b9d5ff94b47271cbd7be1e0
2017-02-18 02:42:54 +00:00
drh
182e84c116
In the analyze_as_needed pragma, avoid running unnecessary OP_LoadAnalysis
...
and OP_Expire opcodes. Make the analyze_as_needed pragma responsive to the
schema name.
FossilOrigin-Name: 882599a4a7ea92c9e7752e0745475508e58a11c3
2017-02-18 02:19:02 +00:00
drh
f196972c73
Fix the #endif location for an #ifndef SQLITE_UNTESTABLE macro in the
...
command-line shell.
FossilOrigin-Name: 8cc9d74c176a78aeebfbb39198c21b5dd547ff52
2017-02-17 23:52:00 +00:00
drh
5e98e838da
The analyze_as_needed pragma now responds to table size growth and will
...
automatically rerun the analysis after each 10x size increase.
FossilOrigin-Name: bfbdd07409688fac4ccddbab3639745f6152e23d
2017-02-17 19:24:06 +00:00
drh
72052a73a3
Add the "PRAGMA analyze_as_needed" command.
...
FossilOrigin-Name: e93db2373127d31d33ec46ef918fa9386bb664a6
2017-02-17 16:26:34 +00:00
drh
a3928dd7be
Set the TF_StatsUsed flag on tables when the query planner outcome is
...
affected by the sqlite_stat1 data. Also, change the column names of the
"PRAGMA stats" command so that they are not keywords.
FossilOrigin-Name: fb2b8ae8310e4ea4b42354bbf36c3084a9d5c6d7
2017-02-17 15:26:36 +00:00
drh
33bec3f5e8
Enhance the Index and Table objects so that they remember if their stats come
...
from the sqlite_stat1 table. Make the "PRAGMA stats" an SQLITE_DEBUG only
pragma. Add the flags column to "PRAGMA stats". These are all preliminary
steps toward a "PRAGMA analyze_ifneeded;" feature.
FossilOrigin-Name: 85026c8ee143bbd46565660fff8346ef81421546
2017-02-17 13:38:15 +00:00
drh
7898bfff26
Fix a test case that was made to fail by the LIKE optimization enhancement
...
in check-in [158290c0ab] but which went unnoticed because test builds were
running with ICU enabled and ICU disables the LIKE optimization.
FossilOrigin-Name: 218b2bbb0de07288889f6762d4461ea8acd78969
2017-02-17 02:04:31 +00:00
drh
2b44fd94ba
Enable the ".wheretrace" and ".selecttrace" extensions in the command-line
...
shell when compiled on Windows using DEBUG=3 or higher. Fix a harmless
warning in the shell that comes up when compiled this way.
FossilOrigin-Name: 8a03be1dc42737ba0712d33f639ea26dc243b20e
2017-02-17 01:43:51 +00:00
drh
e9ba910f0d
Change the name of WhereInfo.pDistinctSet to pResultSet, since it is now
...
used for more than just DISTINCT processing.
FossilOrigin-Name: 9fc5cd505fe6ab043519d68e999d2285e22452af
2017-02-16 20:52:52 +00:00
drh
5c258dc1cc
Change two MallocZero() calls into MallocRaw() to avoid unnecessary memset().
...
FossilOrigin-Name: ff5e733cbffd73faa4046e0f1c7f24bb6e131738
2017-02-16 17:18:07 +00:00
drh
c5f4816fc5
Fix a comment on a field of the ExprList object. No changes to code.
...
FossilOrigin-Name: bb8e264227175fc93f1c86a0083f8ad6c4ce2dc7
2017-02-16 16:26:53 +00:00
drh
6f271a421d
Increase Table.tabFlags from 8 to 32 bits.
...
FossilOrigin-Name: 7e14044c65f64322769bcad4640a5896be0a1687
2017-02-16 15:57:30 +00:00
drh
b6bf97b384
Remove two redundant initializations from the virtual table logic.
...
FossilOrigin-Name: 6bd82b95a6b78bb60569af4da58ef4b9f997fe7b
2017-02-16 15:06:06 +00:00
drh
44266ec651
Always use the IsVirtual() macro to determine if a Table object is a virtual
...
table. Slightly smaller and faster code.
FossilOrigin-Name: 6affb1c89d87288cad87dde5a533832cdf06b8aa
2017-02-16 14:48:08 +00:00
drh
3a3b420abb
Query planner optimization to detect empty tables in a join early and bail out
...
without doing excess work.
FossilOrigin-Name: 58797e9bafa95709e0f706a15f42f93b409e2db5
2017-02-15 22:36:15 +00:00
mistachkin
0d5b3b7665
Minor enhancement to mutex tracing on Win32.
...
FossilOrigin-Name: 830b9235673be55f0c932fb157de03725e648c25
2017-02-15 18:30:57 +00:00
drh
dc5ece86ae
Remove the CLANG_VERSION macro, since we have learned that version numbers in
...
clang are "marketing" and are inconsistent and unreliable. Builds using clang
will still use the GCC_VERSION macro since clang works hard to be gcc
compatible.
FossilOrigin-Name: 810d29320b853b3a01aa50d8f2a0bceacf79e0aa
2017-02-15 15:09:09 +00:00
mistachkin
d742367ab5
Further reforms to Tcl_*Alloc() usage.
...
FossilOrigin-Name: ee1e689633e517ce46307b9afbf1eda03482c928
2017-02-15 04:16:56 +00:00
mistachkin
dd22c09af8
In the blob test code, avoid crashing on low-memory systems by using Tcl_AttemptAlloc().
...
FossilOrigin-Name: 1d267757a89d9267ee9c201373f801eb9772ab04
2017-02-15 01:39:28 +00:00
drh
0c5cd969b8
Clarification of the help text for the command-line shell.
...
FossilOrigin-Name: ca4f1e4962df64ae756c286f3795af7d6f692cdd
2017-02-14 21:47:46 +00:00
drh
7e4acf7b44
Enable the SQLITE_ENABLE_NULL_TRIM option for WITHOUT ROWID tables.
...
FossilOrigin-Name: 54836270c9c0bfa5910f7ad74ec238b9d7ddee5f
2017-02-14 20:00:16 +00:00
drh
d2f92c26d5
More realistic lengths of string values in speedtest1 with --testset orm.
...
FossilOrigin-Name: e4731fd65f9698817690b741cc454f25e8e871e6
2017-02-14 16:30:13 +00:00
drh
a829054049
Fix a testcase number on the ORM testset of speedtest1.
...
FossilOrigin-Name: 58b2f911eec2e3eb9944dd6d8573ff5c7bd43f70
2017-02-14 15:58:58 +00:00
drh
a8207f488f
Add the new "--testset orm" to the speedtest1 utility.
...
FossilOrigin-Name: 1836adc1d1f8e496ae0a07bf0fc933a19dc8fee5
2017-02-14 15:57:11 +00:00
drh
d879e3eb8d
Change all legacy instances of "#if SQLITE_DEBUG" to "#ifdef SQLITE_DEBUG" for
...
consistency.
FossilOrigin-Name: 670f10b24230863688270d12ac519609ade2302b
2017-02-13 13:35:55 +00:00
drh
30a5831c45
Fix typos in using the MSVC_VERSION macro.
...
FossilOrigin-Name: f3b65926b1f439adb95e3bbce8e58785b8cf8427
2017-02-13 13:26:33 +00:00
drh
ac279be98e
Avoid a duplication #define in FTS5
...
FossilOrigin-Name: c447441cff1884d6fe5f0a76d64b3e7d908584a1
2017-02-13 13:20:02 +00:00
drh
f9463dfbcf
Fix indexes on expressions so that they can be actually used with
...
a COLLATE clause.
FossilOrigin-Name: e464b919f76520b45bb58983c6702db59d820ee4
2017-02-11 14:59:58 +00:00
drh
13ac46eea2
Ensure that indexed expressions with collating sequences are handled
...
correctly. Proposed fix for ticket [eb703ba7b50c1a5].
FossilOrigin-Name: 9689d04b8250139e32078b2aa9748edcc6231bcd
2017-02-11 13:51:23 +00:00
drh
653a5f4e71
Bump the version number up to 3.18.0.
...
FossilOrigin-Name: 7520c238558346d421e3c24cb7d17a54d1aa56b2
2017-02-10 21:40:04 +00:00
drh
1c84bd4787
Enhance the LIKE optimization so that it works for arbitrary expressions on
...
the LHS as long as the pattern on the RHS does not begin with a digit or
a minus sign.
FossilOrigin-Name: 158290c0abafde67ee3f2363f0b6646887841df3
2017-02-10 21:37:57 +00:00
drh
2c338a9d9a
Add the "," flag to printf().
...
FossilOrigin-Name: 064445b12f99f76e9a12957be97edd520ab3ae27
2017-02-10 19:38:36 +00:00
drh
a39284bfa8
Cleanup the usage of the SQLITE_DISABLE_INTRINSIC compile-time option.
...
Remove the SQLITE_RUNTIME_BYTEORDER compile-time option. Use
-DSQLITE_BYTEORDER=0 instead. Fix a bug in R-Tree that occurs when compiling
on a known little-endian machine without the use of intrinsic byteswapping
functions.
FossilOrigin-Name: 798fb9d70d2e5f95e64237b04d6692360133381a
2017-02-09 17:12:22 +00:00
dan
ad3b4c078e
Avoid preparing a SELECT statement each time an UPDATE or DELETE by docid is
...
executed against an fts3 table.
FossilOrigin-Name: 1afec5758b624e6a066d4e7ef50695095e9d7ff1
2017-02-08 19:12:36 +00:00
dan
18fdde21b8
Avoid preparing a SELECT statement each time an UPDATE or DELETE
...
by docid is executed against an fts3 table.
FossilOrigin-Name: 9962c10a5c6672bd82b2bf640d878fcdac0b815a
2017-02-08 19:10:47 +00:00
mistachkin
40b84365e4
Typo fixes in comment. No changes to code.
...
FossilOrigin-Name: c09dd5c0befaf5028abfead8114bd74a30ffe5d4
2017-02-08 18:13:46 +00:00
drh
087a29c78b
Always invoke the xRoundup() method of the memory allocator before calling
...
xMalloc().
FossilOrigin-Name: 77b470b0df73dc5ae5ad2f0170ef7c50558c7c88
2017-02-08 16:01:57 +00:00
drh
0356ebd0a5
Round up the size of all memory allocations to a multiple of 8 bytes when
...
using the system memory allocator.
FossilOrigin-Name: c46e06fab4465128ac3364bafef5fa3d016796d0
2017-02-08 12:18:05 +00:00
drh
ec26ce3328
When generating the hash on the sqlite_master table in dbselftest, use an
...
ORDER BY clause, since the sqlite_master table is reordered by VACUUM.
FossilOrigin-Name: c8bfd99b96608a08f934f46b4e1a4d0f1cc69ea7
2017-02-07 21:44:40 +00:00
mistachkin
953fbd16af
MSVC makefile enhancments for several command line tools and the session extensions.
...
FossilOrigin-Name: fc1dfe870279531d77ffb18a9ca4b4dcbc7aab8d
2017-02-07 21:09:34 +00:00
drh
134e527091
Fix harmless compiler warnings in dbfuzz.
...
FossilOrigin-Name: 61242267824135a9d5438ec15e3352a2f21dc2fc
2017-02-07 21:00:44 +00:00
drh
b67e175448
Fix harmless compiler warnings in kvtest.c
...
FossilOrigin-Name: db6b39937dd9d6fcd5fcc582c8dd529caad755da
2017-02-07 20:57:00 +00:00
drh
cbc65e5f4f
The dbselftest utility now generates hashes in the selftest table with --init.
...
It also accepts multiple database files on the command-line.
FossilOrigin-Name: e68829c9bbc69bf4a0dc057e0a6e977f2fac79be
2017-02-07 20:51:38 +00:00
dan
18b20c981d
Omit fts5fault1.test from the inmemory_journal permutation.
...
FossilOrigin-Name: cb1e83f9583bf93ce7583d9f5e97272e2d43cfb8
2017-02-07 19:36:14 +00:00
dan
a7fc253d42
Update a test parameter in malloc5.test to account for the increase in default
...
lookaside buffer size.
FossilOrigin-Name: be82d5ae20ba62a165bdc28766a8dc8049abcac6
2017-02-07 19:23:51 +00:00
drh
b9e9bc1de6
Add the initial version of the "dbselftest" utility program.
...
FossilOrigin-Name: 1fcac8365e0f7bcfd55442d718da6626c864d45a
2017-02-07 17:36:12 +00:00
dan
2e9dceb432
Update an error message in corruptC.test.
...
FossilOrigin-Name: 722e57fe61162a82b8001c7b1d3e06174caa90b9
2017-02-07 16:15:48 +00:00
dan
9fcb6ddc1e
Fix a build problem affecting non-amalgamation rtree builds.
...
FossilOrigin-Name: bb7f445ba1df53cd4a169612b18fc533016102b7
2017-02-07 14:45:18 +00:00
dan
821fad51b4
Fix a test case to account for the fact that sqlite3_blob_reopen() now returns
...
SQLITE_IOERR_NOMEM instead of SQLITE_NOMEM if an OOM occurs in the VFS layer.
FossilOrigin-Name: e11cc52389f61f6421179281877b119c02286121
2017-02-07 14:22:39 +00:00
drh
364ca6a90e
Fix SQLITE_BYTEORDER #defines in R-Tree when compiled separately from the
...
amalgamation.
FossilOrigin-Name: a136609c98ed3cc673c5a3c2578d49db3f2518d1
2017-02-07 13:51:48 +00:00
drh
edd9bcb372
Make the cellMargin() routine of R-Tree slightly smaller and faster while also
...
fixing a harmless compiler warning.
FossilOrigin-Name: 07fe6228208684d579c4f6c334c90eb6262a9233
2017-02-07 12:58:38 +00:00
drh
76f63789f2
Back out [ec8ff892ac] which is causing missed OOM errors on some tests.
...
FossilOrigin-Name: 0611770d6a2fcb9fa0bedee19df9916820ae8f3b
2017-02-07 03:44:42 +00:00
drh
b18bf843f7
Fix a minor typo in a comment in R-Tree. No changes to code.
...
FossilOrigin-Name: f77ee9e941f22b0b2e88871df4466fdde9cde131
2017-02-07 00:55:47 +00:00
drh
04128ace8d
Remove a small amount of unnecessary code from R-Tree.
...
FossilOrigin-Name: e5aea894267addb4dc9b21de24a20417b0be508a
2017-02-06 16:52:32 +00:00
drh
943aa77a8a
Add the "max-limits" utility program to the tools/ subdirectory.
...
FossilOrigin-Name: c54173b6c1acbb41ed9c323099e94b8e02c6c895
2017-02-06 15:27:44 +00:00
dan
809955b504
Fix a bug in kvtest causing "init --variance 0" runs to generate single byte
...
blob values only.
FossilOrigin-Name: 6b0276f968d3c6430076c6e540907cf840d0f398
2017-02-06 07:37:50 +00:00
drh
9630f3ba08
Remove incorrect testcase() macros from R-Tree.
...
FossilOrigin-Name: 853a58a75ecbd01ebbf7e07fbd8c4fc9bef54a99
2017-02-06 01:19:07 +00:00
drh
238390c3b4
Simplification to the error handling to extension loading in
...
sqlite3_open().
FossilOrigin-Name: ec8ff892ac9c6a8f81bcf69f1933f4bb69faa743
2017-02-04 20:15:51 +00:00
dan
ff677b20fc
Allow sqlite3session_apply() to apply changesets to tables that have been
...
extended using ALTER TABLE ADD COLUMN.
FossilOrigin-Name: b20ff81ff9c8af500ea96e0ba9d34524220a89f1
2017-02-04 17:33:30 +00:00
drh
fe05491b87
In RTREE, use an sqlite3_blob object rather than an sqlite3_stmt object
...
for reading content out of the %_node shadow table.
FossilOrigin-Name: 97ccf3e4de11ffea46993cb7fb7ab559b9810705
2017-02-04 14:24:05 +00:00
drh
010e312f8f
Close sqlite3_blob objects on xSync rather than waiting until xCommit.
...
FossilOrigin-Name: 95ee745fceb4a48c683f34c404c380fe5e7d684a
2017-02-04 13:12:12 +00:00
drh
88610c968e
Improved performance and stack usage when processing VALUES clauses with
...
a very large number of rows.
FossilOrigin-Name: 5706d4708a30eb54da0ecbb6eb02f54746c390d9
2017-02-03 20:54:57 +00:00
dan
067cd837fb
Avoid a performance problem when very large "VALUES(..), (..), (..)" terms are
...
used in queries.
FossilOrigin-Name: f5306ad6816cc377036685cdae227e762885229c
2017-02-03 19:16:39 +00:00
drh
59a40db3d2
Improved tests for the carray() table-valued function.
...
FossilOrigin-Name: 83a099f139aba03edac19c890a0019e922032a25
2017-02-03 15:16:25 +00:00
dan
a7466205ca
Modify the sqlite3SelectDup() routine to avoid recursing on Select.pPrior.
...
FossilOrigin-Name: a7674ead5be986c66f7d61d598adc7e5728bcd30
2017-02-03 14:44:52 +00:00
drh
1101ae4113
Ensure that all cursors have their positions saved prior to rolling back
...
a savepoint.
FossilOrigin-Name: 8e03a8e95fada5c24d369672a71f6e02288051da
2017-02-02 20:32:28 +00:00
mistachkin
07b139b8c1
Fix issues in the sha1 extension seen with MSVC.
...
FossilOrigin-Name: 5a0da77c22ebc7db5e63b1520d30f3ad97b9bb3b
2017-02-02 19:24:05 +00:00
drh
3accc7e1af
Remove the unused pReadNode prepared statement from each RTREE object.
...
FossilOrigin-Name: e51dc0ec60d45cd57564735b6b2bb254a588533e
2017-02-02 16:30:25 +00:00
drh
ce655a2367
Fix a potential uninitialized (though harmless) variable in RTREE.
...
FossilOrigin-Name: a1c74e09d63aca630d022ed074866433eed6b493
2017-02-02 16:08:27 +00:00
drh
413e207e31
The sqlite3_blob_close() interface can cause recursive invocations of
...
nodeBlobReset() in RTREE. Make sure that does not cause problems.
FossilOrigin-Name: 88333441cbf26bfde2acebf2a3f75b5ebbdfb0ae
2017-02-02 15:35:54 +00:00
drh
2033d1c8ca
Change RTREE so that the sqlite3_blob object is closed whenever the cursor
...
count drops to zero and there is not a pending write transaction.
FossilOrigin-Name: 9bb4eafe1a60176ed2e731bb7e3067c0b8a46615
2017-02-02 14:40:06 +00:00
drh
6d683c5c6e
Use the sqlite3_blob interface for reading values from the %_node shadow
...
table in RTREE. This is a work in progress. There are still some minor
problems.
FossilOrigin-Name: fc4917d730b29b0bf60fea5e0166728635783e9c
2017-02-02 02:28:45 +00:00
drh
2343c7eb3f
This is an experimental patch that ensures that all cursors have their position
...
saved prior to starting a ROLLBACK TO.
FossilOrigin-Name: 01d97e5b6502b1811b52a681f445e1aaae6c0ee6
2017-02-02 00:46:55 +00:00
mistachkin
6890d3e458
Fix harmless compiler warnings seen with MSVC.
...
FossilOrigin-Name: 0c66cf0f0a9ada2ddcb8d61001ef791b86226416
2017-02-01 23:06:17 +00:00
mistachkin
5f7b95f73b
Backout the change in [02f6293f27] as it causes MSVC to complain.
...
FossilOrigin-Name: aaae74d06f4865818465cfdb440258ae8a5b985a
2017-02-01 23:03:54 +00:00
mistachkin
2fa517bf2a
Fix C99-style variable declaration issue seen with older versions of MSVC.
...
FossilOrigin-Name: 54d285464a222c59327eb6c917c1cc0125a55a27
2017-02-01 22:59:29 +00:00
mistachkin
2e52532217
Fix harmless compiler warnings seen with MSVC.
...
FossilOrigin-Name: 997f765bc6706769ae15f3e719354473e02bd78b
2017-02-01 22:43:08 +00:00
mistachkin
8c5e8feb35
Add an option to the MSVC makefile to enable treating warnings as errors.
...
FossilOrigin-Name: 6a378c29b43d61313ca9daa599e59d8eeeed9a27
2017-02-01 22:32:49 +00:00
drh
31a1349515
Unwind the RTREE dimension loop inside of rtreeCallbackConstraint().
...
FossilOrigin-Name: 4854ea9c18e7d8066c90b41568d0fae97b01ea6d
2017-02-01 17:08:56 +00:00
drh
5db59b33c4
Completely unroll the dimension loop inside of cellArea() in RTREE.
...
FossilOrigin-Name: 3c4c0126c287f844220b65e00fec17c059fbb7c8
2017-02-01 16:41:30 +00:00
drh
0e6f67b754
Precompute the nDim2 value in the Rtree object and use that to make loops
...
over coordinates faster.
FossilOrigin-Name: f1f3c8cc733a05c12dd980f2dfa0ab4ccd76c04b
2017-02-01 15:49:02 +00:00
drh
03626e3812
Use compiler intrinsic functions (when available) for byteswapping in RTREE.
...
FossilOrigin-Name: 82fcd54a5941c20895ffc22d8009c1ebdae44eda
2017-02-01 15:24:32 +00:00
drh
1650fcb1b5
Fix the build by making the OPFLAG_ISNOOP macro available unconditionally.
...
FossilOrigin-Name: 510933cb24c5bf883265af3a6075e60a4b5ffa37
2017-02-01 15:19:29 +00:00
dan
f6c69221e3
Update the documentation comment in sqlite.h.in for sqlite3_preupdate_hook().
...
FossilOrigin-Name: 7f8570208c06c056d426e9299d9930181a0464f8
2017-02-01 14:19:43 +00:00
dan
f62154d4ac
Changes so that the pre-update hook and the sessions module work with WITHOUT
...
ROWID tables.
FossilOrigin-Name: 964bdc27f8f1b1db2e5c0c2a65c8156614cbe087
2017-02-01 14:10:24 +00:00
drh
14494fa712
More RTREE performance optimizations related to decoding values.
...
FossilOrigin-Name: c5395e7496d0cd593f5e16ee5f6719d020dc0c66
2017-02-01 02:25:28 +00:00
drh
35497fccbe
Improved comments on the statGet() implementation in ANALYZE. No changes
...
to code.
FossilOrigin-Name: 9663eea2a16bb4eec71476d307a3722a768308c3
2017-02-01 01:34:15 +00:00
drh
fcbd6cdb41
R-TREE optimization: unwrap the coordinate decode loop in
...
rtreeCallbackConstraint().
FossilOrigin-Name: 0bf7b51896ec441f62490964c7a44a3c75c6b7e2
2017-01-31 21:22:03 +00:00
drh
a4613e1f4c
Very small performance improvements and size reductions in
...
sqlite3VdbeExec() and blobSeekToRow().
FossilOrigin-Name: 85dddf2b453b8afaf1f485b96084d31e22f97dda
2017-01-31 19:10:42 +00:00
drh
baf5dec700
Simplifications to blobSeekToRow().
...
FossilOrigin-Name: 495ea824093ff535734c22c3115384c08f855c02
2017-01-31 19:02:15 +00:00
dan
610e17bd91
Add a speed-test program for the sessions module.
...
FossilOrigin-Name: 25f1275fe3e940c1d9a7b013cb3744304b2eda1e
2017-01-31 17:31:30 +00:00
drh
0caad09585
Remove a C99-style comment. Fixes to the kvtest-speed.sh script.
...
FossilOrigin-Name: 91eb6b628e278d20eccc647293e5b30765163e12
2017-01-31 16:49:01 +00:00
drh
d59bcbdee7
Remove another unnecessary local variable initialization from sqlite3VdbeExec()
...
FossilOrigin-Name: 2361b03b61311aab9b9ec9de040bbb73be31be0d
2017-01-31 16:43:36 +00:00
drh
78a9e92ecf
Remove an unnecessary initialization of the pOp variable in sqlite3VdbeExec().
...
FossilOrigin-Name: 02f6293f278f7b0a0f4876f5c6a0f4dc42620d79
2017-01-31 16:34:51 +00:00
drh
9dc7ad1d7e
Add the "stat" command to kvtest.c. Also add the --variance option to the
...
"init" command. Add the tool/kvtest-speed.sh script used for doing
performance testing on key/value access patterns.
FossilOrigin-Name: b63deed600b1a457a6960ebad5645f4de9c56e5d
2017-01-31 15:29:05 +00:00
drh
1379521f4a
Fix a typo in a comment.
...
FossilOrigin-Name: bd22bf9cbe028e9811ca3afaadafd90312cb0fc9
2017-01-31 15:27:04 +00:00
dan
6abc7a6b37
Merge latest trunk with this branch.
...
FossilOrigin-Name: 4a592abbc555fd3b70979b551b00c2ba631253df
2017-01-31 14:08:04 +00:00
drh
8e74e7ba4c
Further minor enhancement and size reduction in
...
sqlite3ExprAssignVarNumber().
FossilOrigin-Name: eacfdcf25796ea29b5e63499c3d7397498305ad9
2017-01-31 12:41:48 +00:00
drh
18814dfb7e
Performance optimization in sqlite3ExprAssignVarNumber().
...
FossilOrigin-Name: 5987ca1ff94ed3c1666f783bb15b16158aa7e1db
2017-01-31 03:52:34 +00:00
dan
cb9a364390
Experimental change to invoke the preupdate hook when WITHOUT ROWID tables are
...
written.
FossilOrigin-Name: 856f8604c59c8fdd9bfb7d86fc0e212f091ab49a
2017-01-30 19:44:53 +00:00
dan
e7eeeb99f7
Fix building with SQLITE_OMIT_FOREIGN_KEY defined.
...
FossilOrigin-Name: e93d2c49a44af994ff10cc9cc7eafacd5a4f73ab
2017-01-30 11:38:19 +00:00
drh
d26cc54183
In the amalgamation, allocate the parser engine object from stack rather than
...
from heap, for improved performance. This only happens in the amalgamation,
since otherwise the sqlite3RunParser() routine does not know the object size.
FossilOrigin-Name: 4fe879d4b5da6ae0688a7a99004683a234966597
2017-01-28 20:46:37 +00:00
mistachkin
51b15c3871
Fix a couple comment typos. No changes to code.
...
FossilOrigin-Name: 2a2e7d86b275c970726f642a37a098950a3b906e
2017-01-28 19:53:51 +00:00
dan
f64ece143c
Avoid redundant table b-tree cursor seeks in UPDATE statements that use the
...
two-pass strategy.
FossilOrigin-Name: dc555b1039c6930f6d15355c698ff917a85e8056
2017-01-28 19:45:34 +00:00
drh
6034d47618
Updates to the sqlite3_blob documentation. No changes to code.
...
FossilOrigin-Name: 426b440a5745f9c431c6a3d9ba542af61a6a83fb
2017-01-28 15:26:14 +00:00
drh
27c8467734
In the speed-check.sh script, automatically invoke "fossil test-diff --tk" on
...
the cachegrind output against trunk, if not generating a trunk run.
FossilOrigin-Name: aa1ab37100a91ab4bb91d50a1267c26967efcb21
2017-01-28 13:40:55 +00:00
dan
2d2e4f3895
Fix a typo in the docs for sqlite3_update_hook().
...
FossilOrigin-Name: 7c029655cc3369a1e46741fdd3701d36d420b28b
2017-01-28 06:50:15 +00:00
drh
cc04dacb85
Add the sha1.c loadable extension that implements the sha1() and sha1_query()
...
SQL functions.
FossilOrigin-Name: 24e77c1cef163a9822635570b3211789ff23d5c9
2017-01-27 19:27:38 +00:00
dan
50133dea28
Fix a problem causing the pre-update hook to be invoked by DROP TABLE
...
statements.
FossilOrigin-Name: fbb6bf1b69cfd581b4ffd778c344e3fbd9c9406f
2017-01-27 17:02:26 +00:00
drh
9ec82ff2ba
Alternative ICU fix (compare to check-in [50e60cb4]) that avoids casting
...
integers to pointers.
FossilOrigin-Name: d9752c8f7c55426fd7d2b877c5cc3784f93b5349
2017-01-27 13:14:12 +00:00
drh
7aee83b935
In the command-line shell, enhance the ".mode" command so that it restores the
...
default column and row separators for modes "line", "list", "column", and
"tcl".
FossilOrigin-Name: 58f02e6eae8fc9e2577fe435b0282fb46af3960d
2017-01-27 01:52:42 +00:00
drh
6ee610bfc0
Another micro-optimization in accessPayload(). Slightly smaller and faster.
...
FossilOrigin-Name: c012619b65d70b4ef6cf33532ef57d7f8ba42d74
2017-01-27 01:25:00 +00:00
drh
cdf360a0d5
Performance optimization in accessPayload().
...
FossilOrigin-Name: ebb1fd98d4e448aa6d8f1e5be7ddc5bedb3db95b
2017-01-27 01:13:49 +00:00
drh
42e28f12a3
Simplify the accessPayload() routine so that it always populates the overflow
...
page cache. In the one case where populating the page cache can lead to
problems, simply invalidate the cache as soon as accessPayload() returns.
This simplification reduces code size and helps accessPayload() to run a
little faster. This backs out the eOp==2 mode of accessPayload() added by
check-in [da59198505].
FossilOrigin-Name: 68e7a8c6765649195ef1ad9407d87d44a307b462
2017-01-27 00:31:59 +00:00
drh
945b094632
Remove an unreachable branch in the error handling logic for
...
sqlite3BtreePayloadChecked().
FossilOrigin-Name: 293bf3ed7e40745349c83b202b27ed1b48517e1a
2017-01-26 21:30:00 +00:00
drh
b7dab70a92
Improvement to the OP_Permutation opcode to prevent it from using CPU cycles
...
for initialization in prepared statements that do not use that opcode.
FossilOrigin-Name: b4a98f65564a0d9fba2fef95ebd00a39b3e1e572
2017-01-26 18:00:00 +00:00
drh
fae58d51ce
Remove the obsolete lastRowid cache from the sqlite3VdbeExec() for a size
...
reduction and performance improvement.
FossilOrigin-Name: b4803184652e5f4f823c1521412bc480baeb3dbf
2017-01-26 17:26:44 +00:00
drh
d08406477a
Performance optimization in sqlite3VdbeCloseStatement().
...
FossilOrigin-Name: 1e96e5ec1ee617cb5b5cbdc5a2ee79c8cc35821d
2017-01-26 17:11:18 +00:00
drh
83ec2761fa
Performance optimization to sqlite3_blob_read().
...
FossilOrigin-Name: 7459f4b7ed4007d9ec44c3bf0fcba04f5f8540a9
2017-01-26 16:54:47 +00:00
drh
8bb9fd3b45
Minor simplification and performance optimization for Direct Overflow Read.
...
FossilOrigin-Name: 3e96d6efa867b765c8acf1454014b1e71b2e4f21
2017-01-26 16:27:32 +00:00
drh
d930b5cb06
Make SQLITE_DIRECT_OVERFLOW_READ work for in WAL mode as long as the page
...
being read is not in the the -wal file.
FossilOrigin-Name: 9879be1899adf5634f551a2077b15ccb1133e4e3
2017-01-26 02:26:02 +00:00
drh
2b15f6e11b
Enhancements to the kvtest utility program. Add the --jmode option.
...
Improved output formatting.
FossilOrigin-Name: 62a4851ccf88837d1c16dae8204f7f264e80e3c9
2017-01-26 01:54:39 +00:00
drh
87f500ce43
Modify the ICU extension to use a static initializer, as VC++ complains about
...
a dynamic initialization. Maybe the dynamic structure initialization is a
GCC extension.
FossilOrigin-Name: 50e60cb44fd3687dde5551d02bad60c323beaabc
2017-01-26 00:58:27 +00:00
drh
d447dced96
Trim NULL values off the end of records when the SQLITE_ENABLE_TRIM_NULLS
...
compile-time option is used. Increase the size of the P5 operand to 16 bits.
Fix a problem with short records in the sessions extension.
FossilOrigin-Name: 4801bd59a01dcc11a3eb9e776e7599b36f162d2a
2017-01-25 20:55:11 +00:00
dan
7271d7a19c
Fix another pre-update hook issue, this time in sqlite3preupdate_old().
...
FossilOrigin-Name: c7651d21bfdfd9b8cf04b26e0264bc58c03d247f
2017-01-25 18:53:27 +00:00
dan
d47e1ccb57
Fix a test script problem in exclusive2.test causing it to fail on this
...
branch.
FossilOrigin-Name: f66614dc78e32d2d369518200b3322cd97990ffe
2017-01-25 18:12:46 +00:00
dan
2a86c1962c
Fix a problem with the pre-update hook on this branch.
...
FossilOrigin-Name: 6fc4fbfa29cfa795edf32e4a1f2d0eceb3007f68
2017-01-25 17:44:13 +00:00
drh
585ce1923c
Experimental enhancement to automatically trim NULL values from the end of
...
records, for a reduced disk footprint. This change also involves increasing
the P5 operand from 8 to 16 bits.
FossilOrigin-Name: 118ded403b95050b74ae2b03919c43d614094a32
2017-01-25 14:58:27 +00:00
drh
7888d14caa
Ensure that sqlite3_blob_reopen() correctly handles short rows.
...
Fix for ticket [e6e962d6b0f06f46e].
FossilOrigin-Name: 8cd1a4451cce1fe28f462800e2be1dee1735c0d0
2017-01-25 14:38:19 +00:00
drh
666d34c791
Fix SQLITEINT_H macro usage in two extensions.
...
FossilOrigin-Name: 0803390c152141c9ab4e7a28406b2a5d72a5c2fa
2017-01-25 13:54:27 +00:00
drh
210b0d0eb3
Ensure that sqlite3_blob_reopen() correctly handles short rows.
...
Proposed fix for ticket [e6e962d6b0f06f46e]. Further testing needed.
FossilOrigin-Name: 57d8dad35c2a9ab635e954dce7f3986ae1ca8ed2
2017-01-25 04:41:34 +00:00
drh
d1b2566b07
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.
FossilOrigin-Name: 175bda87288c7ce15b163316159f53a60822ccad
2017-01-23 19:11:38 +00:00
drh
bace324082
Add the --mmap option to the kvtest utility program.
...
FossilOrigin-Name: 4948f7e6d2a1cfce36a7aab2f5b65be07c285ac3
2017-01-23 18:40:15 +00:00
drh
6aabff38e9
Optimization: Try to avoid unnecessary btree searching when repositioning
...
a cursor to the next row.
FossilOrigin-Name: ee793d30c1dc1f78f49e6230d17750eceedbd8ed
2017-01-23 16:56:18 +00:00
dan
65c4c0b02d
Add the missing SQLITE_API symbol to test_delete.c (it is not added
...
automatically as this file is not part of the amalgamation).
FossilOrigin-Name: 7a4f512ddf9e7e718389c80930d6268ab598459c
2017-01-23 15:58:09 +00:00
dan
1b9fd2651b
Fix a problem preventing FTS5 from correctly passing the FTS5_TOKENIZE_PREFIX
...
flag to custom tokenizer implementations.
FossilOrigin-Name: 03c601344ed56b316bcc5fd02f6648b0009ba61b
2017-01-23 07:06:27 +00:00
drh
38305ab55f
Fix an uninitialized variable in the command-line shell.
...
FossilOrigin-Name: 06b8001ade62bc59e6ae20f761167a81d85a4272
2017-01-22 16:34:35 +00:00
mistachkin
35f30d3398
Fixes to documentation comments in the public header file.
...
FossilOrigin-Name: 772dcb08f400f20d4dbfb74df39de78da24ee5fd
2017-01-22 02:04:05 +00:00
drh
eacb4412b1
Fix an initialized variable in kvtest.
...
FossilOrigin-Name: ed62c5a6562262709128099f757ae60807a930d7
2017-01-22 00:11:07 +00:00
drh
7f11afaba1
A better implementation of the moveto-neighbor optimization that checks for
...
nearby rows on adjacent pages.
FossilOrigin-Name: 2c4ecb85a475b9063aa8a3bb517ac181a7ded649
2017-01-21 21:47:54 +00:00
drh
451e76d5b5
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.
FossilOrigin-Name: 8e5cfb2039126da7689c4b1c88760f10e1234eaf
2017-01-21 16:54:19 +00:00
drh
3b2936fada
Change sqlite3_blob_reopen() to call sqlite3VdbeExec() directly rather than
...
going through sqlite3_step(). Performance enhancement.
FossilOrigin-Name: 347df3c1fd7322e7aacaf1e9f8be81830947c482
2017-01-21 16:27:56 +00:00
drh
184d902db1
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.
FossilOrigin-Name: 0d1ad13a296b22d6fe36879b56f99bd6af1acd3a
2017-01-21 15:55:41 +00:00
drh
36cae856ee
Remove an unnecessary sqlite3_bind_int64() call from sqlite3_blob_open().
...
Also other minor refactoring of the sqlite3_blob implementation.
FossilOrigin-Name: 9d197a532349f4b1caf66bbed70ca46df86cb86f
2017-01-21 14:11:28 +00:00
drh
cd64553015
Minor performance optimization and size reduction to the accessPayload()
...
routine in btree.c.
FossilOrigin-Name: 264e5c10d7144910b3223b64546567fa20e4bc65
2017-01-20 20:43:14 +00:00
dan
dfd0de82f1
Fix a typo in the help message for kvtest.
...
FossilOrigin-Name: 8971d98f25a4f5fb060db8ed6a4b06f083122a50
2017-01-20 16:47:34 +00:00
dan
befcd8ad84
Add option "--stats" to test program kvtest. Specifying --stats causes kvtest
...
to output information similar to the shell tool option of the same name.
FossilOrigin-Name: 90291327fc127671d9847a4a2ce1ed47a408cfc6
2017-01-20 16:46:20 +00:00
drh
508286701a
Get the "--testset rtree" option working on speedtest1. Add the --rtree,
...
--lookaside, and --clang options to the speed-check.sh script.
FossilOrigin-Name: 87b640c8d07a76b2bc7e896e01965cc09e06f77b
2017-01-20 16:09:12 +00:00
drh
4df65fc20f
Minor performance optimizations to sqlite3_blob_open() and
...
sqlite3_blob_reopen().
FossilOrigin-Name: 52a61967d920047ea0b4409b79793e05c0128964
2017-01-20 00:40:26 +00:00
drh
8674e49214
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.
FossilOrigin-Name: 9ed38521617136223a667988aed40e25797faf84
2017-01-19 21:20:11 +00:00
mistachkin
2f31d02049
In the 'vtshim' extension, avoid accessing freed memory when handling errors from xCreate/xConnect.
...
FossilOrigin-Name: ffd559afd32dcdce9c733ebccdee88fda9b689cf
2017-01-19 18:20:36 +00:00
mistachkin
aac853bae8
In the 'windirent' test module, use a macro for the hidden/system attribute checking.
...
FossilOrigin-Name: a84a08d0716656dc0b26eafb1841c48d83c67ef2
2017-01-18 22:47:42 +00:00
mistachkin
d3e73d6c1c
Remove superfluous option to Tcl 'lsort' in the vtabH test file.
...
FossilOrigin-Name: b92cc6e58ae31cbe6600a522beb5485f7add04b2
2017-01-18 22:19:01 +00:00
mistachkin
7059138a08
Make the vtabH-3.1 test more portable and robust.
...
FossilOrigin-Name: d3c91c1fb345fbcbfc60a897bebf771c795430c9
2017-01-18 22:16:34 +00:00
mistachkin
8a9e83583b
Fix handling of initial hidden and/or system files in the opendir() implementation for Windows. No changes to non-test code.
...
FossilOrigin-Name: 26dd42b462dc621b8b0a2295fc91d3e61ac732b6
2017-01-18 22:16:20 +00:00
dan
25fd2e247b
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.
FossilOrigin-Name: 681d96eb822e606da53700867191d4738bda20c8
2017-01-17 10:41:42 +00:00
drh
c711f53f30
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.
FossilOrigin-Name: 7fd560c6d2ff470b755ad118287a0a8825b3009e
2017-01-17 00:10:58 +00:00
drh
de48a3f98a
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.
FossilOrigin-Name: 9b64af7b5201a8700ae9e384b04714ca18df7449
2017-01-16 18:10:17 +00:00
drh
da060052e3
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].
FossilOrigin-Name: 0613665274346917f5482f9210bf0c60a0fed7d9
2017-01-16 16:43:02 +00:00
drh
ce31643fd9
Add test cases for tickets [91e2e8ba6ff2e2] and [7ffd1ca1d2ad4ec].
...
FossilOrigin-Name: 9d0dfe0b088a5917afa06207ca3ac5618e3da82f
2017-01-16 16:01:50 +00:00
dan
ef2f5925d8
Fix a problem preventing resumption of RBU operations after recovering from a
...
process or system failure that occurs during the incremental-checkpoint phase.
FossilOrigin-Name: 97914266cb4ec63b0c9185ab139673139bd2f0ed
2017-01-13 18:24:37 +00:00
drh
be7a0cee4e
Fix the build for SQLITE_ENABLE_MEMORY_MANAGEMENT.
...
FossilOrigin-Name: 8c85b8fdd7f0ba65fba83361d361a567b797a184
2017-01-13 12:53:35 +00:00
drh
7b20a15d13
Remove a branch that is probably unreachable, and which adds no value.
...
FossilOrigin-Name: 9acc72381ccd5e36f3ffdf7e7fbefc5a15701eb4
2017-01-12 19:10:55 +00:00
drh
ae051a8970
Fix harmless compiler warnings in the UPDATE code generator.
...
FossilOrigin-Name: 385db266673abaf7013ffad09b28014c246547ef
2017-01-12 16:21:54 +00:00
drh
70d90a2c37
Remove an unnecessary corruption test from the btree balancer. If corruption
...
is present, it will be found harmlessly by later tests.
FossilOrigin-Name: bddf39562d08e259c43dd59b82afb62fe0eb2eef
2017-01-12 16:14:33 +00:00
drh
b701c9a6c3
Improved detection of cells that extend into the reserved space at the end
...
of the page while adjusting overflow page pointers during autovacuum.
FossilOrigin-Name: 8097712c9c1f4ea16bc5dd462da248ef98896061
2017-01-12 15:11:03 +00:00
drh
24be549329
Remove invalid test case from cursorhints2.test
...
FossilOrigin-Name: 163cc1b2f7100827d5803b81dcd97a1417744f66
2017-01-12 11:52:47 +00:00
drh
ea8f0a155e
Make sure Tcl_AppendResult() always has a NULL-pointer argument at the end.
...
FossilOrigin-Name: c07aef6f909fe35de110f0b180dbf5aa4c226af3
2017-01-12 11:50:08 +00:00
dan
ba47020b63
Changes to allow some multi-row UPDATE statements to avoid the two-pass
...
approach.
FossilOrigin-Name: 7ae6104a3e0d1d2cacfe2be732f0220a53908132
2017-01-11 21:03:53 +00:00
dan
e206ea7f48
Fix a problem causing the pre-update hook to be passed an incorrect rowid
...
value in some single-pass multi-row updates.
FossilOrigin-Name: 62257eb53c13d4c7ed128d5d89f6f10d4aff945c
2017-01-11 20:10:30 +00:00
dan
2c6fec21dc
Fix a problem with single-pass multi-row UPDATE statements that invoke REPLACE
...
conflict handling.
FossilOrigin-Name: 0a2b8e1b9dc600b5a93622e8eea6218649df5e0f
2017-01-11 19:03:08 +00:00
dan
372f942f17
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.
FossilOrigin-Name: cab86c90945126c24c40cf2dedd053a8c46d00d6
2017-01-11 15:42:14 +00:00
drh
785d8ed0d4
In the STAT4 computations, ensure that the aAvgEq values do not go negative.
...
FossilOrigin-Name: f58f75b5a06f88ba97bd1a02bee621c64691c6f8
2017-01-11 14:15:29 +00:00
dan
f91c1318f4
Changes to allow some multi-row UPDATE statements to avoid the two-pass
...
approach.
FossilOrigin-Name: 46db23ccd116ce5b9d949f9293be8a2818411b46
2017-01-10 20:04:38 +00:00
dan
f112f0b3de
Add a test case for ticket [25e335f802dd].
...
FossilOrigin-Name: e500c15a9f55aed1601f7c14169dd56fd76f1fdd
2017-01-10 17:37:49 +00:00
drh
8e36ddd37e
Throw an error if the ON clause of a LEFT JOIN references tables to the right
...
of the ON clause. Fix for ticket [25e335f802dd].
FossilOrigin-Name: c92ecff2ec5f178433d21f25c653d0fdd9128d7c
2017-01-10 17:33:43 +00:00
drh
1d21bac8aa
Avoid unnecessary calls to the xRoundup() method of the memory allocator when
...
the soft heap limit is not set.
FossilOrigin-Name: 4209b89eab01814228a178963238e0dffffad2a4
2017-01-10 16:09:46 +00:00
drh
d9bcb32ebb
Fix a potential assertion fault discovered by OSS-Fuzz.
...
FossilOrigin-Name: 71c03b59b645884ebd6b9e18713cd2eb8c949870
2017-01-10 15:08:06 +00:00
drh
e4a8b8769e
Remove a redundant assignment statement.
...
FossilOrigin-Name: a5fa09657bd6c4ea5fe6712b0f8af2170cbe0381
2017-01-09 19:55:19 +00:00
drh
7441df72be
Performance optimization and size reduction in the OP_Variable opcode.
...
FossilOrigin-Name: 237aa97452e20c312f256a8fd62531e3d447f84b
2017-01-09 19:27:04 +00:00
mistachkin
ab61cf7d93
Fix typo in a comment. No changes to code.
...
FossilOrigin-Name: d38fd22935b1572f4481b39c2f9274329b18ea99
2017-01-09 18:22:54 +00:00
drh
e7b554d615
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.
FossilOrigin-Name: 6e106acd74da3baa5c308a76443d2f0a7c904e5e
2017-01-09 15:44:25 +00:00
drh
f4e994b23a
Add the SQLITE_UINT64_TYPE compile-time option.
...
FossilOrigin-Name: a5fe03bc419d9c7e6068ed38810e3f183de179b5
2017-01-09 13:43:09 +00:00
drh
68116939eb
Improvements to the iIdxNoSeek optimization of sqlite3GenerateRowDelete()
...
so that it is automatically disabled for BEFORE triggers but works in all
other cases.
FossilOrigin-Name: 3178ec4c27efc4ff84bcd17ddb17ec50a6ac96b3
2017-01-07 14:47:03 +00:00
drh
4cef5b1c81
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.
FossilOrigin-Name: db2c0960ffb3b396b20e0441d3edb812254c82bc
2017-01-07 14:26:28 +00:00
drh
ad1d9a8707
Avoid an unnecessary btree seek while deleting an index entry due to a conflict
...
on a REPLACE operation.
FossilOrigin-Name: f0495c5133d0dc04d63521136d6b9ca440792cdf
2017-01-07 03:26:50 +00:00
drh
a67b5cb6b3
Avoid duplicate b-tree searches in the duplicate row detector used to
...
implement DISTINCT.
FossilOrigin-Name: d577dda0a7fbfacda57e8cad2bc4651d2a05d813
2017-01-07 00:56:01 +00:00
dan
e1ff3f5e11
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).
FossilOrigin-Name: 6696cd1878be4bd44a24841b04163e52d847711e
2017-01-06 13:49:40 +00:00
dan
1439a1e80f
Improve handling of corrupt data in fts5.
...
FossilOrigin-Name: 609ac1c73f7c2b48a571c178a72383996a9538fe
2017-01-06 11:55:03 +00:00
drh
3d775e7586
Clarify the documentation on sqlite3_column_count().
...
FossilOrigin-Name: 9ea0baddd893e54ec79399ae83033ae139650535
2017-01-06 01:09:43 +00:00
mistachkin
817be73bfc
Remove several non-portable tests for the deprecated temp_store_directory PRAGMA.
...
FossilOrigin-Name: 28d87789141d816e0bce6d3965ce84c79b803218
2017-01-06 00:02:51 +00:00
dan
2b64313b8d
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).
FossilOrigin-Name: 2f57939a5583ae420b525c7e0f0dcda8626fe992
2017-01-05 20:00:08 +00:00
dan
9e1ab1a8a4
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).
FossilOrigin-Name: 5c05d8ec5e895661dae2de30c73dfdeaff93511e
2017-01-05 19:32:48 +00:00
dan
ac56ab7e48
Fix handling the case where a sub-query in a FROM clause is itself a UNION
...
ALL, and one side of that UNION ALL is a query on a view that includes an
ORDER BY. Fix for ticket [190c2507].
FossilOrigin-Name: 590ca83b8e8cdd5d24ed7f10f43e540aa0627f22
2017-01-05 17:23:11 +00:00
drh
5f40cebf43
Fix problems in trigger and foreign key handling when doing REPLACE on a
...
WITHOUT ROWID table that has no secondary indexes.
FossilOrigin-Name: 571f166ea8721e2322965b6f23e758b78d13baca
2017-01-05 13:50:12 +00:00
drh
34d04d64f0
Ensure that the sqlite3_value_text() interface returns a buffer that is long
...
enough to hold the complete string plus the zero terminator even when the
input is a zeroblob. Fix for a problem detected by OSS-Fuzz.
FossilOrigin-Name: 2dc7eeb5b4d2eaf1d843eda56f339fd4cc80d78e
2017-01-05 07:58:29 +00:00
dan
f9a12a106b
Fix some problems with foreign key processing within REPLACE ops on WITHOUT
...
ROWID tables with no triggers or auxiliary indexes.
FossilOrigin-Name: c1220b1af62629d7fc2178512786d613cd7ea711
2017-01-05 06:57:42 +00:00
drh
801f55d837
Improved the comment on the block of code the provides the performance
...
optimization originally added by check-in [925840cfdb]. The original
check-in omitted condition 4, which was the cause of bug [30027b613b].
FossilOrigin-Name: c6506b82aa6583ccde5f673c79526d5f3920b67a
2017-01-04 22:02:56 +00:00
dan
4e1f0efb4d
Possible fix for 30027b61. There may still be problems surrounding foreign key
...
processing.
FossilOrigin-Name: 71ccb1f4c490fdebc7008e884384e7809b849742
2017-01-04 20:13:51 +00:00
drh
87e1e56b5b
Adjust filename creation in test_sqllog.c so that it uses leading zeros on
...
counters, so that files appear in order when sorted lexicographically.
FossilOrigin-Name: 8d670973595bd01ffc9b2ab53b965e6d6d22c573
2017-01-04 14:53:53 +00:00
drh
b005f9e620
Performance enhancements in the printf implementation.
...
FossilOrigin-Name: 82e4001b8caef7b31967f3edcbc1a545c081bdbc
2017-01-04 13:09:05 +00:00
drh
49c5ab243b
Factor constant functions out of the inner loop since they are more expensive
...
than the extra OP_Copy needed to move the result into place.
FossilOrigin-Name: 80ad317f89c46db0d0d252aefdc036a34a61183d
2017-01-04 04:18:00 +00:00
drh
ad879ffdb5
Clean up the implementation of constant function factorization.
...
FossilOrigin-Name: 2ab997e47998d261bd6190bbce5c09f3fbd4cfd3
2017-01-04 04:10:02 +00:00
drh
1e9b53f9bc
Attempt to factor out constant functions from the interior of table scans,
...
since functions can often be expensive to compute.
FossilOrigin-Name: 62e9270a8057d758621da33adb27fad14225f95d
2017-01-04 01:07:24 +00:00
drh
8236f688e8
Changes to the printf implementation for better performance.
...
FossilOrigin-Name: acdb8f6f10953ed4290aadc9e026edd57d1dd21a
2017-01-04 00:26:28 +00:00
drh
a3a40211bd
Use compiler intrinsic functions for signed integer math when overflow
...
detection is needed.
FossilOrigin-Name: d3ac32a6e7f1823450feb3d1089802542090d164
2017-01-03 21:57:11 +00:00
drh
7433ae5df6
Back out the use of __sync_fetch_and_sub() as it does not appear to work.
...
FossilOrigin-Name: 4c2efd4239bf07eb4b92d4af54edd68ee6312670
2017-01-03 21:50:49 +00:00
drh
5c6b944d16
Fix a typo in a comment.
...
FossilOrigin-Name: ae087123db8e7d47b25a8d0a98cfd62e85e42fc6
2017-01-03 21:03:37 +00:00
drh
b94f2eccc1
Use the CLANG_VERSION macro to control clang-specific features.
...
FossilOrigin-Name: f8ebeec211483503e135104ef977b3c384a1d789
2017-01-03 20:01:24 +00:00
drh
eea46aeafc
Use the GCC built-in __sync_fetch_and_sub() to make the sqlite3StatusDown()
...
routine atomic, and thereby avoid some mutexing.
FossilOrigin-Name: f69ce75b3d94331fdbfa2f3a27d61db24c285d2b
2017-01-03 18:05:04 +00:00
drh
4a47761e0d
Make use of the __buildin_OP_overflow() functions from GCC when doing
...
64-bit signed integer arithmetic.
FossilOrigin-Name: 82cbebb8ee4484f13e5f48d305e20e73063f273e
2017-01-03 17:33:43 +00:00
drh
5c41d00f42
Add the experimental affinity() SQL function when SQLITE_DEBUG is defined.
...
FossilOrigin-Name: bed0eaa5f50112e64fc97a2afdc9d56cf8f5026a
2017-01-03 14:45:35 +00:00
drh
5424075137
Put the affinity() function implementation inside of #ifdef SQLITE_DEBUG.
...
FossilOrigin-Name: f778f58ae4ea3e16f51b94591a2c1e563dcb0cde
2017-01-03 14:39:30 +00:00
drh
01e64a1704
Merge all the latest changes from trunk.
...
FossilOrigin-Name: c27cd8a8127b81d3176f6a5b9915c9b3c69574fb
2017-01-03 14:30:28 +00:00
drh
2710b14c45
Defer size checking on row-value assignments for when the RHS is a SELECT
...
until after the "*" wildcards have been expanded.
FossilOrigin-Name: 36944be6be5c42096f5da84187ff203af26b08ae
2017-01-03 13:45:22 +00:00
drh
b67343d075
Fix a typo on a comment. No code changes.
...
FossilOrigin-Name: abc27b6023e28a717bfa15648ddc152bda9c7b96
2017-01-03 11:59:54 +00:00
dan
f299edb0b0
Add test cases for the fix in [f12ed3ce]. No problems discovered.
...
FossilOrigin-Name: 548532fdcf84d565c17aed79a6b595e8b62a3ab4
2017-01-03 08:11:24 +00:00
drh
966e291160
Improvements to the way vector assignment size checking is done. Size checks
...
when the RHS is a SELECT are deferred until after "*" wildcards are expanded.
FossilOrigin-Name: 696219b11049930cdbc38f574820f4bbaf8621bb
2017-01-03 02:58:01 +00:00
drh
49cd39b48c
Fix the row-values in UPDATE statements within TRIGGER problem identified
...
by ticket [8c9458e7].
FossilOrigin-Name: f12ed3ce0bfb2d94c9baad23fdcbd816c72439a1
2017-01-03 01:24:10 +00:00
drh
b163748e88
Improved assert()s on the sqlite3ExprListDup() logic for TK_SELECT_COLUMN.
...
FossilOrigin-Name: 14da99d41f7968bf816203b4ae11c1f0d1ee0b5d
2017-01-03 00:27:16 +00:00
drh
90a7eae84c
Test cases for the row-value UPDATE TRIGGER fix.
...
FossilOrigin-Name: b9b964373c89a491649f366ad7d70ae4d69b891d
2017-01-02 23:43:03 +00:00
drh
3f50bb84f5
Put an ALWAYS() on an unreachable branch in the sqlite3ExprListDup() routine.
...
FossilOrigin-Name: 2caaaab5e07f6b76d66fbe4e93a4b956937427d8
2017-01-02 23:18:35 +00:00
drh
47073f62bf
Proposed fix for the row-value TRIGGER UPDATE problem described in
...
ticket [8c9458e7].
FossilOrigin-Name: 61a442ea2ceec2cbd327dae0ff5214e1f3c69ec0
2017-01-02 22:36:32 +00:00
drh
63a49ce0b2
Increase the version number to 3.17.0 for the next release cycle.
...
FossilOrigin-Name: 16415b5aad445c9e4e849018b48538d74eec8944
2017-01-02 19:10:14 +00:00
drh
56d65cd7b9
Provide the SQLITE_DEFAULT_LOOKASIDE compile-time option and make it's default
...
value be 1200,100 (raised from 512,125 in the latest release).
FossilOrigin-Name: 584da48f9e818f25134e0a62fb7e84f07019511f
2017-01-02 19:02:20 +00:00
drh
83a4f47d57
Change SQLITE_DEFAULT_PCACHE_INITSZ from 100 to 20, which is experimentally
...
determined to be slightly faster.
FossilOrigin-Name: 12d9493cb29307aec65ceccc68e802e4d0f18112
2017-01-02 18:40:03 +00:00
drh
38eef32172
Avoid unnecessary calls to sqlite3BtreeEnterAll() and sqlite3BtreeLeaveAll()
...
when no btree is using shared-cache.
FossilOrigin-Name: cfb3158204628eb2fd170090a7f212df0e4ce6c9
2017-01-02 18:19:29 +00:00
drh
197231b160
Add the --all option to the wordcount test program.
...
Fix the speedtest1 test program so that it builds on MSVC and so that
the --lookaside 0 0 option works.
FossilOrigin-Name: cb338f367e5408861bd7c0fbf74cebdbd8e3c515
2017-01-02 12:20:15 +00:00
drh
e772bc7d30
Version 3.16.0
...
FossilOrigin-Name: 04ac0b75b1716541b2b97704f4809cb7ef19cccf
2017-01-02 11:57:58 +00:00
drh
245ce62ea2
Detect row-value comparison size mismatches even when the size of one
...
operand is obscured by an unexpanded subquery.
FossilOrigin-Name: 2c4d167ccd4be591487f404de9ee629fd484c8bf
2017-01-01 12:44:07 +00:00
drh
e2b45d1789
Add the --help and --all options to the wordcount test utility.
...
FossilOrigin-Name: 18baeadfc89f6252e38dbc22904b11c5b56347ee
2016-12-31 21:55:23 +00:00
drh
aa430bfb00
In speedtest1.c, make the "--lookaside 0 0" option completely disable lookaside.
...
FossilOrigin-Name: 52b99bcbf18f34196ec29f829c6af539e0d05524
2016-12-31 18:37:50 +00:00
drh
eb25713e91
Minor #include change to speedtest1.c so that it will compile under MSVC.
...
FossilOrigin-Name: 8c28fde004678c85524770969eb001719b109179
2016-12-31 14:33:05 +00:00
dan
3043b53222
Fix a crash that could occur following an OOM in the group_concat() function
...
if the second argument is an SQLITE_BLOB value.
FossilOrigin-Name: 14d855d2b2b5b3485e0673d11405db7266b34c6d
2016-12-30 17:40:14 +00:00
drh
1d081ab39e
Strengthen the defense against OOM in the instr() SQL function.
...
FossilOrigin-Name: a0971e713682a73d8c7c20511db256c20d2f6388
2016-12-30 15:16:20 +00:00
drh
5f4ade0473
Add a test to ensure that the app-defined pcache xFetch() method is never
...
passed a key of zero.
FossilOrigin-Name: 0bdbe49c6d392c4c86a6c01219c9d91d150dea7d
2016-12-30 14:25:42 +00:00
dan
895decf6b5
Avoid passing NULL pointers to memcmp() or memcpy(), even when the
...
"number-of-bytes" argument is passed 0.
FossilOrigin-Name: 56ff72ab44288296efc99a608f7edc4346366a50
2016-12-30 14:15:56 +00:00
drh
d0d7e13511
Fix a harmless compiler warning in fuzzcheck.c
...
FossilOrigin-Name: 2842bc60538369f888c7df8365858c910322277d
2016-12-30 12:10:48 +00:00
drh
9c4dc22926
Disable the pagerAcquireMapPage() routine if memory-mapped I/O is disabled.
...
This fixes a harmless compiler warning on OpenBSD.
FossilOrigin-Name: 3e25ba6e42fba239795a465b8510386a361ee5be
2016-12-30 12:06:22 +00:00
drh
fb4e3a3bbb
Encode a 64-bit integer literal in date.c as a constant expression so that
...
it works on older compilers. Also fix a harmless compiler warning in vdbe.c.
FossilOrigin-Name: f57952bac652901e1bd48b68301941efbcf29dc4
2016-12-30 00:09:14 +00:00
drh
96ada59cbb
Fix harmless compiler warnings in the command-line shell and in Lemon.
...
FossilOrigin-Name: afcdc4a60e357d171156e0de705bf7ad1b37daab
2016-12-29 19:48:46 +00:00
drh
cae20d5cf1
In kvtest.c, use stat() instead of fseek()/ftell() to determine the size of
...
a BLOB to be read directly from disk. This makes the pile-of-files database
more competative against SQLite.
FossilOrigin-Name: a7dca29f03e037fe71cc600db97f8058e3bd28a4
2016-12-29 17:25:06 +00:00
drh
03d0c20bbd
Add the kvtest.c test program used to show that it is many times faster to
...
read thumbnail and similar BLOBs out of an SQLite database than it is to read
them as separate files from the filesystem.
FossilOrigin-Name: 8074d59cf177cb91ee371e2660f2c59ce540b7e2
2016-12-29 16:58:01 +00:00
drh
2f917e05d7
Add more detail to the header command to further explain how to compile and
...
use the kvtest.c utility.
FossilOrigin-Name: 55d29839c9fafe9e6a694f5790151d1f22396b01
2016-12-29 16:49:22 +00:00
drh
d7b9b97c3b
Fix kvtest.c so that it compiles using MSVC.
...
FossilOrigin-Name: e2bbeae7e77cde531885ca492494a02e5322154d
2016-12-29 16:18:35 +00:00
drh
6739c692ba
In kvtest.c: do not show the --cache-size setting on fopen() runs.
...
Show progress for the (potentially slow) "export" command.
FossilOrigin-Name: b0f58d2470e08b9c217afd19fcfde3e6d1007d1d
2016-12-29 15:26:50 +00:00
drh
61c565f63b
Improvements to the kvtest.c utility. Added the --cache-size option.
...
Additional reporting of version and settings at the end of "./kvtest run".
FossilOrigin-Name: f6fcac6ae8b3bffee6bf994eef2064affd301a95
2016-12-29 14:44:43 +00:00
drh
cac028ba19
Add the kvtest.c test program for measuring key/value read performance under
...
various scenarios.
FossilOrigin-Name: 489e0787c1ea47963174387e8ade6295ceff568e
2016-12-29 03:57:43 +00:00
drh
402124de5c
Do not allow the nockpt.test module to run under the inmemory_journal
...
permutation.
FossilOrigin-Name: a6af06f164b1f65779e2171ec4946119c66f9be8
2016-12-27 15:59:15 +00:00
drh
575242f66f
Allow sqlite3_interrupt() to be invoked on a database connection that is in
...
the process of being closed even if SQLITE_ENABLE_API_ARMOR is defined.
FossilOrigin-Name: 7854bee260996087bdb7f8729ba8cfb4f467f93f
2016-12-27 13:33:52 +00:00
drh
5ad74a761d
Adjust a corruption test case to accommodate the sqlite3BtreeInsert()
...
optimization of check-in [0b86fbca66].
FossilOrigin-Name: 4cb0945f13f2040c8b67936b950da48fc951d55d
2016-12-27 12:45:41 +00:00
drh
218c66e0e3
Disable new test modules nockpt.test and interrupt2.test for incompatible
...
permutations. Add a CORRUPT_DB term to an assert() in vdbe.c.
FossilOrigin-Name: a54e619e6f0266932c8873f9ac826fd042a0602f
2016-12-27 12:35:36 +00:00
drh
1aa346950e
Avoid a potential (harmless) signed integer overflow in memory usage
...
accounting when calling sqlite3_realloc() to reduce the size of an
allocation.
FossilOrigin-Name: 2d71cbdf6bc24f0269027c70b39ea7f342436bdb
2016-12-27 12:08:36 +00:00
drh
c595419910
Minor changes to make some newer test cases work under more compile-time
...
options.
FossilOrigin-Name: 382eea36c56f866efee1321f643687a4061e8b9e
2016-12-27 02:43:47 +00:00
drh
dfcfff646a
During fuzz testing with the fuzzcheck utility program, impose a record
...
length limit of 100MB and a limit on the length of LIKE strings of 50 bytes.
FossilOrigin-Name: edc9db41f3ee200ba44579a46ed8331bbbbf539e
2016-12-26 12:25:19 +00:00
drh
e6ce2b6704
Enable ossfuzz.c to build even if SQLITE_OMIT_PROGRESS_CALLBACK is defined.
...
FossilOrigin-Name: a37c00dcd192f9d610ecb91810ef57ef41d1f6a6
2016-12-26 12:14:44 +00:00
drh
9cc5b4eeb5
Remove an incorrect ALWAYS() macro from balance_nonroot(), which could result
...
in corrupt databases if it were optimized out. This ALWAYS was added
only two weeks ago (check-in [f9f2e23bbd68a]) and has never appeared in an
official release.
FossilOrigin-Name: e447b23cfd7bb31817e42adb3a98868d351c6b8a
2016-12-26 01:41:33 +00:00
drh
a1a523a5bb
Add the built-in affinity() SQL function.
...
FossilOrigin-Name: 57e40e1cb1bcd3dd8473d2fdeecc9c7ff3d6192b
2016-12-26 00:18:36 +00:00
drh
beaf514e23
Enhance the fuzztest utility with the --prng-seed option. Always reseed the
...
PRNG prior to each test.
FossilOrigin-Name: 8c5187f69d719b69aa6eaf2dc8f89243e5979222
2016-12-26 00:15:56 +00:00
drh
6a5a4208fc
Combine the implementations of the ".tables" and ".indexes" commands in the
...
command-line shell. The ".indexes" command now puts the indexes in multiple
columns, just like ".tables" and shows all indexes in all attached databases.
FossilOrigin-Name: def29333655691c7d54451193be13445a2857d29
2016-12-24 21:32:40 +00:00
drh
2951809ed4
The schema name "main" is always an acceptable alias for the primary database
...
even if the primary database is renamed using SQLITE_DBCONFIG_MAINDBNAME.
FossilOrigin-Name: 2f481b854f04bec546eb172d1b6dbc88067d3fda
2016-12-24 19:37:16 +00:00
drh
b20a61b704
Change the output format of the ".databases" command in the command-line shell
...
so that it shows the schema name, a colon, and the corresponding filename.
FossilOrigin-Name: 8558512e9ca343300a767ef23810f2d7b50fd925
2016-12-24 18:18:58 +00:00
drh
a4b81d2a44
In the command-line shell, improve the formatting to the ".databases"
...
command and on the ".tables" command, only show the schema prefix for
databases past the first ("main") database.
FossilOrigin-Name: c0d5626e274cbf8c2d2167183c4d6835d72dae57
2016-12-24 18:04:28 +00:00
drh
6bd4dc6dc4
Fill in missing opcode documentation entries for OP_SorterNext and
...
OP_SorterSort.
FossilOrigin-Name: 2940661b8c014b94973e05c44f1b1f4f443dbdd3
2016-12-23 16:05:22 +00:00
drh
cfdc235ec3
Use the VList object to capture the mapping between SQL parameter names and
...
variable numbers in a single memory allocation.
FossilOrigin-Name: 99fddf2ecb7202bfdf5ddc4cc1c4e155c883f7ec
2016-12-23 13:54:22 +00:00
drh
ce1bbe51b5
Add check to prevent a VList from growing after pointers to labels have been
...
taken.
FossilOrigin-Name: aa23d7eaf69f5ecbf9500b2353846094cae41e6c
2016-12-23 13:52:45 +00:00
drh
f326d66d61
Fix the VList object so that it actually works.
...
FossilOrigin-Name: 9dcd85698af46fd5ba34004ca690d368c4ae3078
2016-12-23 13:30:53 +00:00
drh
9bf755cc44
Use the VList object to replace Parse.azVar for tracking the mapping between
...
SQL parameter names and parameter numbers. There is a performance
improvement, though there are still a few hiccups in the current code.
FossilOrigin-Name: 68ecafa1425a41358c88f41efea3262f1b4490f2
2016-12-23 03:59:31 +00:00
drh
344a1bf133
Fix harmless compiler warnings.
...
FossilOrigin-Name: fa86db2f915c0a189c3be02b1aaa7f24d339d7d6
2016-12-22 14:53:25 +00:00
drh
cdfffed790
Change the default lookaside configuration from 500 slots of 128 bytes each to 125 slots of 512 bytes each. This uses the same amount of memory (64,000 bytes) but seems to perform much better in test applications.
...
FossilOrigin-Name: 52a12e47de88744187bd1c71f2820885cde414a8
2016-12-21 21:26:58 +00:00
drh
a582b01698
Simplifications to the way UnpackedRecord objects are allocated. Smaller
...
and faster code that also fixes a subtle (currently unreachable) bug.
FossilOrigin-Name: f7ab01f254cd9d7006b8dec29adb234a671b8e6f
2016-12-21 19:45:54 +00:00
drh
f99dd359d0
Change the OP_IfNotZero opcode so that it decrements register P1 by 1 rather
...
than the value in P3, and so that it only decrements if originally positive.
This avoids decrementing the smallest 64-bit signed integer.
FossilOrigin-Name: 165c044686212fbf7182dd560ad1e57eb4cc9838
2016-12-18 17:42:00 +00:00
drh
22d709dd91
Refinements to the new dbfuzz test program.
...
FossilOrigin-Name: 50325abe79b6a79b09ec6a1cee7d80ca02337428
2016-12-17 21:07:30 +00:00
drh
6918e2f9b2
Enhance fuzzershell.c to read and execute SQL commands in the autoexec table
...
of the database under test. Add the dbfuzz.c test program combining selected
features of fuzzershell.c and fuzzcheck.c.
FossilOrigin-Name: ef6e071a62cd79a0edbbef9f41ca9482540e5cb8
2016-12-17 20:27:22 +00:00
dan
11da002c02
Fix a problem in the shell tools readfile() command causing blobs to be
...
truncated at the first embedded 0x00 byte in release builds, or an assert() to
fail in a debug build.
FossilOrigin-Name: 8dedd6ad44bd1d103dced9d1350188cb2327128d
2016-12-17 08:18:05 +00:00
drh
d47c6c495d
Add the ".lint fkey-indexes" command to the command-line shell.
...
FossilOrigin-Name: 94689e3bdac2eabbcf1a51d741c2604ed4bd8a40
2016-12-16 18:43:49 +00:00
drh
3fd9f33bd1
Fix minor issues with the ".lint" command implemention in the shell and
...
the shell help text related to ".lint".
FossilOrigin-Name: 1268dc77712d85de0b62332c88b22f7489f4e87f
2016-12-16 18:41:11 +00:00
drh
186c930702
Built-in PRAGMA statements without side-effects can be invoked as
...
table-valued functions by prefixing their name with "pragma_".
FossilOrigin-Name: d66ec5cfb67c6c8134fb642e0c2f72113fe1b7fd
2016-12-16 18:14:19 +00:00
dan
3c7ebeb548
Change ".fkey_missing_indexes" to ".lint fkey-indexes".
...
FossilOrigin-Name: ee621ade38c11806e1df57c459da5f018a6d0670
2016-12-16 17:28:56 +00:00
dan
dd9e0be46a
Update .fkey_missing_indexes to use the built-in pragma vtabs.
...
FossilOrigin-Name: 3ab05987b0cc12af64bf32d885d04aff45d7a77c
2016-12-16 16:44:27 +00:00
dan
c17f6255a4
Merge the pragma-as-vtab change into this branch.
...
FossilOrigin-Name: 4ba45e722371ca4343e3563e7e1c2896b48c9a87
2016-12-16 16:13:45 +00:00
dan
69b9383edf
Fix a problem causing the planner to generate sub-optimal plans for some queries
...
that use recursive WITH sub-queries with LIMIT clauses.
FossilOrigin-Name: 053a149cc8244a7f85137129cfcb8622efe90306
2016-12-16 15:05:40 +00:00
drh
d8b7200b84
Fix an error in the way the "schema" argument to some pragma virtual tables
...
is handled.
FossilOrigin-Name: 546821e29edb0282a4b1d8f49512e36027a6bf6d
2016-12-16 04:20:27 +00:00
drh
30776acd74
Simplifications to facilitate full test coverage.
...
FossilOrigin-Name: 01afc515970a868c6a36d9a598453d0fde9e39ca
2016-12-16 02:31:50 +00:00
drh
9a63f09204
Minor bug fixes and enhancements to the pragma eponymous virtual tables.
...
FossilOrigin-Name: 3f8f461504139a4efea0e033e3a274cc4b2d3072
2016-12-16 02:14:15 +00:00
drh
c06bbceb9c
Merge enhancements from trunk, and especially the ability to use
...
temp.sqlite_master as an alias for sqlite_temp_master.
FossilOrigin-Name: 994a4401f5c34fed17af420761291b03072a5ea1
2016-12-16 01:09:22 +00:00
drh
e0a04a36a6
All temp.sqlite_master to be used as an alias for sqlite_temp_master.
...
FossilOrigin-Name: 8d646905b830d5bb29092e103ac5cb499b3c7e5a
2016-12-16 01:00:21 +00:00
drh
ae7045cd53
Fix the cost estimation in the BestIndex method of the eponymous pragma
...
virtual table implementation.
FossilOrigin-Name: 7126807a186746a8663fbaa267d63214d06476e4
2016-12-15 21:33:55 +00:00
drh
d7175ebeaf
The pragma as eponymous virtual table mechanism now appears to work.
...
FossilOrigin-Name: 2c274a1a7b57ef1208901fbc1d96d39c0d492652
2016-12-15 21:11:15 +00:00
drh
2fcc1590c4
Code to automatically create eponymous virtual tables for read-only pragmas.
...
Compiles, but does not yet work.
FossilOrigin-Name: 988a61e8b03f302c69d11898d1ea95f002cba1a5
2016-12-15 20:59:03 +00:00
drh
35a1895990
Do exponential rather than linear expansion of the SrcList.a array when
...
appending new elements, to reduce the number of malloc() calls.
FossilOrigin-Name: 4e3749127e7249f46e17bfabc614b0876f60565a
2016-12-15 18:59:14 +00:00
drh
c232aca184
Do more pragma processing from tables rather than in-line code.
...
FossilOrigin-Name: a88ca3524b97f296dffc68335466b3767a681747
2016-12-15 16:01:17 +00:00
dan
f9647b6625
Add the -groupbyparent option to the ".fkey_missing_indexes" command.
...
FossilOrigin-Name: 976c51b4836dfba2ce9b246334a85bda08ac526f
2016-12-15 06:01:40 +00:00
dan
35ac58eabc
Add the experimental ".fkey_missing_indexes" command to the shell tool. To
...
identify indexes that should be created on child keys if FK processing is to
be enabled.
FossilOrigin-Name: 7df23aca1f7c7b769d614d740b3fda3073f46ba9
2016-12-14 19:28:27 +00:00
drh
79df77821a
Refactor the Table.nRef field as Table.nTabRef for easier grepping.
...
FossilOrigin-Name: 9cae4c2e300e20304ced0dc8c1415c4922185928
2016-12-14 14:07:35 +00:00
drh
d07df8e76a
Increase the size of the reference count on Table objects to 32 bits.
...
FossilOrigin-Name: d08b72c38ff6fae6ddf7dc84a54f6d7189876289
2016-12-14 13:54:25 +00:00
drh
5ed7de09b0
Fix the configure makefile to align it with the manual makefile. Unsaved
...
changes from the previous check-in.
FossilOrigin-Name: 00a184b65f73f361e1728fea06529f746fab66b5
2016-12-14 11:39:52 +00:00
drh
c06e54345c
Adjust the unix makefiles so that "make test" runs fuzzcheck prior to even
...
attempting to build the other test programs.
FossilOrigin-Name: bb48f7a55945da4cee369bae0809037900fcaac7
2016-12-14 11:23:51 +00:00
drh
ac178b3d7f
Three times faster sqlite3SrcListAppend() in the common case by avoiding the
...
call to sqlite3SrcListEnlarge() for the first allocation.
FossilOrigin-Name: 0ea2762f1d8f6a93ae2ee3b7b835927a474c6f66
2016-12-14 11:14:13 +00:00
drh
8a123d60a8
Fix the optimization that prevents writing freelist pages to the journal.
...
FossilOrigin-Name: 6aa9b26544cbd0b41115c5f127dcf9a286d17e2b
2016-12-14 10:30:12 +00:00
drh
79f20e96dc
In the command-line shell, in the output of the ".dump", ".schema", and
...
".fullschema" commands, convert CREATE TABLE statements that appear to come
from shadow tables into CREATE TABLE IF NOT EXISTS statements.
FossilOrigin-Name: c7021960f5c070fb5c9db9e41b4000d3dc065f42
2016-12-13 23:22:39 +00:00
drh
380c08eaad
Fix harmless compiler warnings.
...
FossilOrigin-Name: ed2c9f3738c96d8e3dbece7ccb721cb1a8ae8fac
2016-12-13 20:30:29 +00:00
drh
fc4111f7d6
Convert sqlite3PagerGet() into a pointer-dispatched virtual method. This
...
makes it about 25% faster.
FossilOrigin-Name: 7f88bb44129a0cd36e27e00dc7c37e87cf3c90f7
2016-12-13 18:47:54 +00:00
drh
cbed604f52
In the pager, avoid checking for the illegal page number 0 except when creating
...
a new page.
FossilOrigin-Name: dee20ba982125ea98c280ad1571789af0f393903
2016-12-13 18:34:01 +00:00
dan
68a494c06f
Fix a problem causing SQLite to return false "foreign key violation" errors
...
when there is a partial (i.e. WHERE constrained) UNIQUE index on the parent
key columns. This bug did not cause SQLite to allow illegal data to be
inserted into the database, only to reject legal operations.
FossilOrigin-Name: 850877d1ea43104cc215353414b870c340acced2
2016-12-13 16:57:49 +00:00
drh
d5df3ff2cc
Further refinements to the virtual method implementation of
...
sqlite3PagerGet().
FossilOrigin-Name: 67df44464847b43f8c0b186157e31cc66c1e5796
2016-12-13 15:53:22 +00:00
drh
12e6f68279
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
2016-12-13 14:32:47 +00:00
drh
26f419800a
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
2016-12-12 23:24:08 +00:00
drh
2a70254f74
Remove unnecessary MemPage initialization resets in the autovacuum ptrmap
...
processing.
FossilOrigin-Name: 1b36fbb9f05f3a5844e198b489bff36ef6cd908c
2016-12-12 18:12:03 +00:00
drh
5fa3d6ec3b
Faster operation for large in-memory databases.
...
FossilOrigin-Name: 9675518b33e8d40769daefb860dc748113f750b6
2016-12-12 16:08:44 +00:00
drh
6606586d81
Performance optimization in sqlite3PagerWrite().
...
FossilOrigin-Name: d4dff10a3d4edf8e1cc77c0a4f185d33f2c2e953
2016-12-12 11:05:15 +00:00
drh
585a59795c
Updates to the tokenizer for EBCDIC. No changes for standard builds.
...
FossilOrigin-Name: 4fc6580ffa7232aaf751f38f90c45edc8863abe5
2016-12-12 01:53:36 +00:00
drh
77dc0ed621
Size and performance optimization in btreeInitPage() in the freeblock
...
validation step.
FossilOrigin-Name: 57deb1b412e0c328528f2b4d697e326bfd028dca
2016-12-12 01:30:01 +00:00
drh
f0bc50aa3a
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
2016-12-12 00:58:40 +00:00
drh
8c730bc5c5
Avoid an unnecessary memset() in the sqlite3BtreeInsert() routine.
...
FossilOrigin-Name: 35ecd4ebc55579175f7c934e4eb1edb969008428
2016-12-10 13:12:55 +00:00
drh
fbd8cbdcf5
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
2016-12-10 12:58:15 +00:00
drh
719da30d53
Avoid signed integer overflow when dealing with a LIMIT and OFFSET whose
...
sum exceeds the maximum integer value.
FossilOrigin-Name: c9bdf7adb4745cfaf23d9afd496e71fa37793108
2016-12-10 04:06:49 +00:00
drh
2d08343a91
When doing the sqlite3BtreeInsert() overwrite optimization, make sure the
...
memcpy() does not extend off the end of the page.
FossilOrigin-Name: 684ef4582ed19b2af22dda6fc085c70464f92f1b
2016-12-09 19:42:18 +00:00
drh
f923825424
Additional comments and an assert on the sqlite3BtreeInsert() overwrite
...
optimization.
FossilOrigin-Name: c1f0ae9d2981a19875103750379ad26f2575f878
2016-12-09 18:09:42 +00:00
drh
80159da6c6
In sqlite3BtreeInsert() when replacing a re-existing row, try to overwrite
...
the cell directly rather than deallocate and reallocate the cell.
FossilOrigin-Name: 0b86fbca6615ccf1f3a62614db577a8acbec6d9e
2016-12-09 17:32:51 +00:00
dan
55092c1504
Fix an fts5 bug that could cause a crash following an OOM error or
...
sqlite3_interrupt() interrupt.
FossilOrigin-Name: 0ea3ece988883874bb88e3daaa220d7fc0cf36ef
2016-12-09 16:12:04 +00:00
drh
a2ee589c46
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
2016-12-09 16:02:00 +00:00
drh
e0568d6fb8
Fix an obscure problem in range estimation with STAT4.
...
FossilOrigin-Name: 1f16c9a76bc48331799f33b30d143c632fe0e7db
2016-12-09 00:15:17 +00:00
drh
4c177424a2
Fix the showstat4 utility program so that is displays strings using
...
standard SQL notation (single quotes) rather than C-style notation.
FossilOrigin-Name: 92998e4afbe4da1723e7e5155071a0e7242bd6ff
2016-12-08 23:52:38 +00:00
drh
5f00b9bea7
Fix a minor error in the cg_anno.tcl script causing the cycles-per-file counts
...
to be miscomputed.
FossilOrigin-Name: b26df26e184ec6da4b5537526c10f42a293d09b5
2016-12-08 19:04:36 +00:00
drh
23ee9dc369
Update the tool/cg_anno.tcl script to give a summary of cycle counts by
...
canonical source file name.
FossilOrigin-Name: 254a83bf30c15d6a355db309ccb97a8744675cc3
2016-12-08 18:36:19 +00:00
drh
2700acaacd
More changes to take advantage of the sqlite3VdbeAppendP4() method.
...
FossilOrigin-Name: 83bc5e40af9b20afeed008bf3e2669b7ac9e2dc8
2016-12-08 01:38:24 +00:00
drh
f14b7fb73b
Add the sqlite3VdbeAppendP4() method for adding P4 content to the most recently
...
coded instruction.
FossilOrigin-Name: 28883e8f3e92a8015fb5f6c8ae8580833931543d
2016-12-07 21:35:55 +00:00
drh
861b1307cb
The use P4_DYNAMIC in place of the P4_MPRINTF operand type.
...
FossilOrigin-Name: 3954f83798ed78527280c9db6360c62a5134b9ec
2016-12-07 20:22:31 +00:00
drh
bdaa1ee2ee
Performance optimization for sqlite3VdbeAddOp4().
...
FossilOrigin-Name: 04716c907bf9fc9b827e18fdc7b4e1069e201536
2016-12-07 20:09:51 +00:00
drh
4ed8c83cfd
Put the SQLITE_UNTESTABLE compile-time option in the correct order for
...
PRAGMA compile_options.
FossilOrigin-Name: 24574a15a336ffcb961334f84b56e9ab98490a79
2016-12-07 17:06:12 +00:00
drh
d12602a9c5
Rename the SQLITE_OMIT_BUILTIN_TEST compile-time option to SQLITE_UNTESTABLE.
...
FossilOrigin-Name: f360818737e73ee4f944685a547abc8f14f47819
2016-12-07 15:49:02 +00:00
dan
44c5604ced
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
2016-12-07 15:38:37 +00:00
drh
9314bd5fe2
Always honor the sqlite3.dbOptFlags bitmask, regardless of compile-time
...
options. Continuing fix for ticket [da78413751863].
FossilOrigin-Name: afab166313e0b8ad530df99887437a362398ed02
2016-12-07 13:49:11 +00:00
drh
abfd35ea03
Performance improvement and size reduction in the Expr node allocator
...
function sqlite3PExpr().
FossilOrigin-Name: 2a81763e68cdf9b8c46389b1e1a87bc2084b53e7
2016-12-06 22:47:23 +00:00
dan
2b519ab015
Add missing nul-terminator to a Tcl_AppendResult() call in tclsqlite.c.
...
FossilOrigin-Name: 0820f8b3dedfc846d187844847dfa8617539fc9a
2016-12-06 19:33:42 +00:00
drh
634133183c
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
2016-12-06 17:59:05 +00:00
drh
e6ad1717da
Fix a harmless redundant local variable declaration in the date/time function
...
logic.
FossilOrigin-Name: b4bc40d1836d8ed0803b81a734ce48be8e9d434a
2016-12-05 20:16:04 +00:00
drh
25ef7f55d7
Work around a bug in the definition of "ino_t" on some versions of Android.
...
FossilOrigin-Name: 8df492c1711bfea250264fdaa4892e0842705f83
2016-12-05 20:06:45 +00:00
drh
6d4e9c3d92
Simplify the date/time function logic for improved rebustness and also to
...
decrease the size of the binary.
FossilOrigin-Name: 6e144735ed0cd3d4461ae6a4d8034264563e3165
2016-12-02 19:07:03 +00:00
drh
861a56821b
Extend the valid range of 'unixepoch' dates from JulianDay 0 through 9999-12-31.
...
FossilOrigin-Name: 768c9859b21a3c88be084d6dd87acab4211b3a87
2016-12-02 17:08:27 +00:00
drh
7a40707b1f
Test cases for the improved LIKE/GLOB matcher.
...
FossilOrigin-Name: 0bdb7ae126d3909344640813489ee68ecad041c4
2016-12-02 02:19:24 +00:00
dan
edaeba5e64
Avoid clearing the EP_FromJoin flag from terms in ON clauses when flattening
...
sub-selects. Possible fix for [2df0107b].
FossilOrigin-Name: a427c4052820d90c3c8c23abf9097f973e564010
2016-12-01 19:58:01 +00:00
dan
92ddb3bd02
Avoid clearing the EP_FromJoin flag from terms in ON clauses when flattening
...
sub-selects. Possible fix for [2df0107b].
FossilOrigin-Name: 8bed4cd549759a93c4a087d8d8c08c0068ba8d59
2016-12-01 19:38:05 +00:00
drh
807b90f679
Performance improvement for GLOB and LIKE matching for patterns with two
...
or more multi-character wildcards ("*" or "%").
FossilOrigin-Name: 2df0ebf95f6a25c77777c33685303e81550fd739
2016-12-01 18:57:58 +00:00
drh
698a01ca2f
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
2016-12-01 18:49:40 +00:00
dan
1a4a73764c
Modify the patternCompare() function (used for GLOB, LIKE) to better handle
...
patterns containing multiple wildcard characters ("*", "%").
FossilOrigin-Name: c5e5614d98a752738c081fecdd1e349a1a92b0e5
2016-12-01 17:34:59 +00:00
drh
c9c81dc6d7
Add the remember(V,PTR) extension function which copies an SQL value into
...
an application variable.
FossilOrigin-Name: d2d30914d81022d7d4e1670caf9326524520deaf
2016-11-30 16:54:52 +00:00
drh
77320ea48d
Fix then handling of the (oversized) integer literal -0x8000000000000000.
...
FossilOrigin-Name: 3816bb415ecfd4f36430d0fcbc878e382975de60
2016-11-30 14:47:37 +00:00
drh
ab5be2e651
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
2016-11-30 05:08:59 +00:00
drh
b5489b88b0
More improvements to boundary cases in the date/time functions, flowing out
...
of branch coverage testing.
FossilOrigin-Name: 1218005ab7b52ef45db1354d17fdd8a1a1af9854
2016-11-30 04:07:57 +00:00
drh
64777ba834
Prevent a warning about integer overflow when using a very large negative
...
LIMIT.
FossilOrigin-Name: 96106d5620eae51474234f4eec1d2c5bd570d486
2016-11-30 01:05:41 +00:00
drh
d76a902c87
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
2016-11-30 00:48:28 +00:00
drh
3edb157e23
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
2016-11-29 20:39:48 +00:00
drh
bc60368d6f
Fix broken hyperlinks to the sqlite3_snapshot objection definition
...
in the documentation. No changes to code.
FossilOrigin-Name: 9021f6875f897d8b609ebcc04162dc6e0b529a4a
2016-11-28 21:22:26 +00:00
dan
158e4e56d7
Simplify some code in fts5_expr.c. Add some extra test cases for the same.
...
FossilOrigin-Name: 7cc2d60dce90b8d4dca35708e33002ae6387806e
2016-11-28 14:52:23 +00:00
drh
dd5fa17d3c
Add the sqlite3_snapshot_recover() interface and related functionality.
...
FossilOrigin-Name: b70c85ce6d07b08e13f4ea99edb8f4855a6d7580
2016-11-26 19:44:40 +00:00
drh
6412a4c8a5
Clarification of the behavior of sqlite3_stmt_readonly() on BEGIN IMMEDIATE
...
statements. The is comment changes only - no changes to code.
FossilOrigin-Name: a4205a83e4ed977a89ecae665604993711f7dd3f
2016-11-25 20:20:40 +00:00
drh
9057fc7c7f
Remove the OP_RowKey opcode. Use OP_RowData in its place.
...
FossilOrigin-Name: 6ac7b07a4aff2e1a9031289e3dafdb9ac0071c24
2016-11-25 19:32:32 +00:00
drh
cb3cabd01b
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
2016-11-25 19:18:28 +00:00
drh
06a09a828a
Small performance increase and size reduction in the OP_Column opcode.
...
FossilOrigin-Name: a9498407e646305e7b60115d63e85c642bbd1c3f
2016-11-25 17:03:03 +00:00
drh
e9bb566096
Performance enhancement to sqlite3_snprintf().
...
FossilOrigin-Name: c53dca7fadd81ea340fef776373cbb122c9ccd46
2016-11-25 15:47:53 +00:00
drh
043e586e29
Performance improvement in sqlite3StrAccumFinish() for the common case where
...
no memory allocation is required.
FossilOrigin-Name: b6acf5d4ef016326a079463e70e71c2fc95a352d
2016-11-25 15:11:26 +00:00
drh
36fd41e52b
Add a comment to help clarify the EP_FromJoin hack in exprCodeBetween().
...
FossilOrigin-Name: 6df7c5747e0247b14bf015ef4320ddcf6fccf694
2016-11-25 14:30:42 +00:00
drh
36f49d0565
Fix the error message for invalid ".mode" arguments in the command-line shell,
...
so that it mentions the new "quote" mode.
FossilOrigin-Name: 9a603a18ef626b7d7a24b82eb961d6d8b4926195
2016-11-23 23:18:45 +00:00
dan
4b72524072
Code constant vector components outside of any loops in CASE and BETWEEN
...
expressions. Fix for [1a684656].
FossilOrigin-Name: c08aff13ead3e6a8b92c0f031b08f7e556922e70
2016-11-23 19:31:18 +00:00
drh
30642cf4d2
Correctly display the names of SQL functions in the VDBE_PROFILE output.
...
FossilOrigin-Name: 161192f17273f32f1b3b82d41135aaca047e9a83
2016-11-23 14:19:11 +00:00
drh
4b4ffadb43
Merge bug fixes and enhancements from trunk.
...
FossilOrigin-Name: e2c4bdf54fc1b9605226c7d6c79ef4f8302d6213
2016-11-22 22:23:56 +00:00
drh
bc88711d08
Enclose the sqlite3WalSnapshotRecover() routine within
...
FossilOrigin-Name: e7be3183eb25e0f9f04b9e251ff37fa5e50cc1a7
2016-11-22 21:11:59 +00:00
drh
e74cc5c9bc
Add a new requirement mark for CAST expressions.
...
FossilOrigin-Name: bee2859b953c935c413de2917588159d03c672d9
2016-11-22 20:29:05 +00:00
drh
50da663516
Update requirement marks to reflect changes in wording in the documentation.
...
No changes to code.
FossilOrigin-Name: f5ac98efb5d5f7751c5c560bed9c7885e60ac4bc
2016-11-22 19:15:05 +00:00
drh
65f38d960d
Remove unnecessary OP_Close opcodes for a size reduction and performance
...
increase.
FossilOrigin-Name: 32be7aae92ee48bf2cd260ea41e79c2bc62738f9
2016-11-22 01:26:42 +00:00
drh
60ffc80756
Remove unnecessary OP_Close opcodes at the end of INSERT operations, resulting
...
in smaller and faster code.
FossilOrigin-Name: abeddb6d5a4040e1d0a87a4f32ad79794ba0842b
2016-11-21 21:33:46 +00:00
drh
89500dcd0b
Enhance speedtest1.c so that is works on older versions of SQLite, before
...
the introduction of the group_concat() aggregate function.
FossilOrigin-Name: 9979ba80a649ee61d9d174dc9d9fcab7e9fc1332
2016-11-21 18:15:35 +00:00
drh
c10b9dac84
Fix harmless compiler warnings.
...
FossilOrigin-Name: b3b7b42d9a4a0e7e2be8b2933328a7bec2f49a81
2016-11-20 17:59:59 +00:00
drh
0f85b2ff09
Prevent a possible use-after-free bug in the query optimizer.
...
FossilOrigin-Name: 0a98c8d76ac86412d5eb68de994658c250989349
2016-11-20 12:00:27 +00:00
dan
93f5113290
Remove the requirement to open the wal file before sqlite3_snapshot_recover()
...
is called. Also add some comments to new functions.
FossilOrigin-Name: 28393c413cc4505b94411730e728583c5d4baaae
2016-11-19 18:31:37 +00:00
dan
4d4757fcc8
Test some extra error conditions in sqlite3_recover_snapshot().
...
FossilOrigin-Name: db314213c08f27dd0ff5ede3c6a8eda36560809a
2016-11-19 17:30:57 +00:00
dan
20ba3d7fcb
Add another fault-injection test for sqlite3_snapshot_recover().
...
FossilOrigin-Name: 7e040406138669bd67dd6ecae016b3e50dbfaaf8
2016-11-19 17:20:28 +00:00
dan
6a9e7f16eb
Fix a problem causing sqlite3_snapshot_recover() to return
...
SQLITE_IOERR_SHORT_READ.
FossilOrigin-Name: 525f75fa9fd4a95acc3fb3b0a01dabe2be39b383
2016-11-19 16:35:53 +00:00
dan
5b4009f637
Fix a bug in sqlite3_snapshot_recover() that could cause subsequent read
...
transactions to use out-of-data cache entries.
FossilOrigin-Name: 9abeb7980a34cec11a3420e14ad98a4ec0d9c599
2016-11-19 14:53:22 +00:00
dan
1158498dce
Add experimental sqlite3_snapshot_recover() API.
...
FossilOrigin-Name: 174a6076a8d7bebe5efebf55f3fdc5d87c589cc7
2016-11-18 20:49:43 +00:00
dan
edace5d4f1
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
2016-11-18 18:43:39 +00:00
dan
93006cdd85
Add tests for snapshot interfaces.
...
FossilOrigin-Name: 1f7ee7af7b620262ae663d65889b6a87415d4a34
2016-11-18 18:22:05 +00:00
dan
25accbca72
Enhance existing snapshot tests to serialize/deserialize snapshots. No new
...
tests.
FossilOrigin-Name: 16b9bf92741e4c62874cffd7c6a61763c5054c7a
2016-11-18 14:38:41 +00:00
drh
65e1ba3fe7
Experimental changes for faster in-memory DB operation for large databases.
...
FossilOrigin-Name: 4fe94b0f1841180dfd8cac33838e335dc6a428bf
2016-11-17 21:52:08 +00:00
dan
9c8753c0a8
Fix a problem in rtreeD.test causing it to fail in OMIT_BUILTIN_TEST builds.
...
FossilOrigin-Name: d6b3779e6dad038d8bc35139cf314bf1e6e91977
2016-11-17 20:05:00 +00:00
drh
223b4bb3f7
Change the --enable-debug option on configure so that it enables the
...
".selecttrace" and ".wheretrace" commands in the command-line shell.
FossilOrigin-Name: 2331192b4ca6a169b6ac0daafb21ceb7c390de65
2016-11-17 13:54:21 +00:00
drh
54cda4edbe
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
2016-11-17 13:13:25 +00:00
drh
d2d69cc1fa
Add a needed #include to speedtest1.c.
...
FossilOrigin-Name: 77aeb705c37b1bf61a05b5e4a09f5b5cd67d07bc
2016-11-15 21:17:13 +00:00
drh
ba6eb8769f
Experimental changes toward making snapshots serializable.
...
FossilOrigin-Name: b6a81fa1fc1fb78a65894129851a4ec3986640de
2016-11-15 17:37:56 +00:00
drh
d6ef5afe3f
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
2016-11-15 04:00:24 +00:00
drh
c9b9deaee2
Make the VACUUM command about 9% faster by avoiding unnecessary calls
...
to sqlite3BtreeMovetoUnpacked() while copying rowid tables.
FossilOrigin-Name: 5ed0bd387699a0f3b477d4f3cfcb460a6a44cb84
2016-11-15 02:46:39 +00:00
drh
5413ba4b17
Add 8794 new test cases received from the OSS-FUZZ project.
...
FossilOrigin-Name: 03f75a67c320f21192d721a8c34d49dea48ffdbb
2016-11-14 20:47:18 +00:00
drh
588429a87d
Fix a potential use-after-free error during parsing of malformed
...
CREATE TABLE statement.
FossilOrigin-Name: c5dbc599b910c02a961675b12b273b8df6d29450
2016-11-14 20:08:00 +00:00
drh
362b66f051
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
2016-11-14 18:27:41 +00:00
drh
55377b4717
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
2016-11-14 17:25:57 +00:00
drh
2adb878b1f
Avoid unnecessary calls to sqlite3ExprCacheAffinityChange() when generating
...
OP_MakeRecord opcodes that do not change any register affinities.
FossilOrigin-Name: e211c579b2f092e3283edd5fb9add7c5183bac35
2016-11-14 15:28:56 +00:00
dan
b3e845ba33
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
2016-11-14 08:19:37 +00:00
drh
48c286fc61
Fix harmless compiler warnings in test code for MSVC.
...
FossilOrigin-Name: 7b76be4117f4e57091b03fafcf42d17bce81160d
2016-11-11 20:37:27 +00:00
drh
66adb0a848
Avoid storing redundant fields in sorter records when the sort-key
...
and data have fields in common.
FossilOrigin-Name: b835cf3e507b910b6a3e0f802ce2c40a72d0c227
2016-11-11 19:08:00 +00:00
drh
4b727f17d6
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
2016-11-11 19:01:11 +00:00
dan
04cd7aa373
Merge trunk with this branch.
...
FossilOrigin-Name: dd62d2de6eb12dc1902d6df050c395b1dcac01b4
2016-11-11 18:45:55 +00:00
drh
d95ef5cb5a
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
2016-11-11 18:19:05 +00:00
dan
9af90b7231
Reenable the SQLITE_EXPR_REF optimization for "SELECT DISTINCT ... ORDER BY"
...
queries.
FossilOrigin-Name: 6e2e9d383f5fc4a0cbf05fe83ec7425812c0f556
2016-11-11 18:08:59 +00:00
drh
79297d1d59
Merge enhancements and bug-fixes from trunk.
...
FossilOrigin-Name: 5515b827dc1805a3010018cd6abf222b03525d24
2016-11-11 17:52:57 +00:00
dan
4a5bad572a
Fix a problem with switching from wal to rollback mode when
...
SQLITE_DBCONFIG_NO_CKPT_ON_CLOSE is configured.
FossilOrigin-Name: 46e0016207b8e7df2ae6c7491fd0f3c2926eed21
2016-11-11 17:08:51 +00:00
drh
ea432ba2df
Add the test/ossfuzz.c interface adaptor for OSS-FUZZ. Make previsions for
...
testing the adaptor using fuzzcheck.c.
FossilOrigin-Name: 119d6ef8478ea6ab07dfd0e974d2f5a8dcfce87e
2016-11-11 16:33:47 +00:00
dan
3bafdede8a
Handle some obscure "row value misused" cases that could cause segfaults or
...
assertion failures.
FossilOrigin-Name: fba5fddb1c40af75634b01c1f06d2610df697e01
2016-11-11 15:49:01 +00:00
drh
4e8142c726
Back out the "--raw" option on ".read" in the command-line shell. Instead,
...
fix the command-line shell so that if EOF is reached without seeing a
final semicolon, it goes ahead and passes the accumulated SQL text to
SQLite.
FossilOrigin-Name: f98c8ac8c485098f163400d3a92d6afb4008adbe
2016-11-11 14:54:22 +00:00
dan
b47ebe6128
Add extra tests for the xBestIndex() virtual table method.
...
FossilOrigin-Name: 642a8fba91d2bf61b494b845cb499714363209b1
2016-11-11 09:51:46 +00:00
mistachkin
2f9a613ced
In the command line shell, avoid using utf8_printf() in a couple places where it is superfluous.
...
FossilOrigin-Name: 6311a8bdb1f2e1813516a32d171aae030bd73fd3
2016-11-11 05:19:45 +00:00
drh
c5b86be7db
Add the --raw option to the ".read" dot-command of the command-line shell,
...
to cause the named file to be read and sent directly into sqlite3_exec()
without any interpretation.
FossilOrigin-Name: 09233770b24d69a305556241a6beeb5e4d77c0d7
2016-11-11 04:37:00 +00:00
drh
4360fcea6d
Take care not to try to generate code for the ATTACH and DETACH commands
...
if there were syntax errors during parsing.
Fix for ticket [2f1b168ab4d4844]
FossilOrigin-Name: b0ff183b8ffdbebece06cfea1c6781fc0e8e8547
2016-11-11 03:37:24 +00:00
drh
7a1c28defe
Avoid a few unnecessary calls to sqlite3BtreeMovetoUnpacked().
...
FossilOrigin-Name: eac0e827a61cfec4dd9b6d407ff398e9fda3510b
2016-11-10 20:42:08 +00:00
dan
257c13fa00
Avoid storing redundant fields in sorter records when the sort-key and data have
...
fields in common (as in "SELECT a FROM t1 ORDER BY 1").
FossilOrigin-Name: 0af62fdbd8e2aab14718ff8bcb5934f05463c176
2016-11-10 20:14:06 +00:00
drh
c6c9e158c5
When doing a REPLACE on a WITHOUT ROWID table with no secondary indexes,
...
bypass the OP_NoConflict/OP_Delete sequence and directly overwrite any
preexisting row, for a performance increase.
FossilOrigin-Name: f7041cbb63b912f9ecad538804b6f2383efbec4e
2016-11-10 17:01:36 +00:00
drh
bf2f5739c9
Remove C++ style comments. No code changes.
...
FossilOrigin-Name: 42f8aa6231bf4ed74bebdc85aa79d23dc20b3c14
2016-11-10 16:07:43 +00:00
drh
2c4dfc3095
Add the unpacked key fields to OP_IdxInsert for INSERT and UPDATE statements.
...
FossilOrigin-Name: 67602e40f122cbb6354048a64c5d3a72b2855ec7
2016-11-10 14:24:04 +00:00
drh
eaf6ae2992
Comment changes that attempt to better explain the behavior of the "seekResult"
...
field on VdbeCursor objects and the seekResult parameter to
sqlite3BtreeInsert() and the OPFLAG_USESEEKRESULT flag on insert opcodes.
No changes to code.
FossilOrigin-Name: 345b46be75bdf6f9fb7367a6164d89bae11995a6
2016-11-09 20:14:34 +00:00
drh
7405fa745e
Fix a simple comment typo. No changes to code.
...
FossilOrigin-Name: 51d0aed8d63d0710e4aa8925ff18cf3c45dc9e42
2016-11-09 16:03:36 +00:00
mistachkin
58282f68d8
Fix typo in the CSV extension.
...
FossilOrigin-Name: b4889588246c33374ff3758e21ccc4ce246380b6
2016-11-09 01:46:13 +00:00
drh
4a8b013ef6
Make use of the unpacked key on the OP_IdxInsert on sorters with a LIMIT.
...
FossilOrigin-Name: 42db7cd2c0b367f7dfe733bdaf006538937b812a
2016-11-09 01:38:56 +00:00
drh
fb8c56f21b
Fix a typo on the OP_IdxInsert documentation. No code changes.
...
FossilOrigin-Name: e4acd98207bf12b28f6c0f77896ba8f0b0a155d5
2016-11-09 01:19:25 +00:00
drh
088c086b14
Add a DISTINCT query to speedtest1.c. Also change INSERT OR REPLACE into
...
just REPLACE.
FossilOrigin-Name: 754ee844958bdc3b96acfd1f5395da5796e54a82
2016-11-09 01:07:10 +00:00
drh
7723371eb7
Remove the "experimental" marking from the sqlite3_preupdate interfaces.
...
But be sure all the interface definitions are within
documentation.
FossilOrigin-Name: d6dd2ad35ed17e980ed564688499c802e5850386
2016-11-09 00:57:27 +00:00
drh
9b4eaebc68
Enhance the OP_IdxInsert opcode to optionally accept unpacked key material.
...
FossilOrigin-Name: 89d958abbac45f2ca5954080cd9e74ec9a07ebb2
2016-11-09 00:10:33 +00:00
dan
3b908d41a0
Avoid superfluous cursor seeks in "INSERT OR REPLACE" statements.
...
FossilOrigin-Name: bec5b6d4d083556d111a89186b4f7b35b5e7cebf
2016-11-08 19:22:32 +00:00
drh
9d06ff2cb7
Avoid generating OP_TableLock unnecessary instructions on btrees that
...
are not sharable.
FossilOrigin-Name: 8cb8516d2009d52d35a22263e4c892f162b34b81
2016-11-08 17:19:22 +00:00
drh
0a22c865e4
Fix the speedtest1.c test program so that it gives closing "%" wildcards
...
on LIKE searches.
FossilOrigin-Name: c2f84f637f994c3b4522b48161185a4a2c5bca23
2016-11-08 16:27:59 +00:00
drh
662389b265
Tweaks to speedtest1.c to better reflect mobile usage based on findings in
...
the "Pocket Data" paper by Kennedy, Ajay, Challen, and Ziarek.
FossilOrigin-Name: b5733cae3c519482cf6bc642bd63814afb113d35
2016-11-08 00:30:11 +00:00
drh
6850a63393
Fix OOM error reporting in the json1_group_object() SQL function. Remove
...
an unreachable branch from the JSON1 logic.
FossilOrigin-Name: b54098491531cd26ed461275ef4aae3d3ec9065e
2016-11-07 18:18:08 +00:00
drh
27b2d1b88b
Replace some unreachable branches from the JSON1 extension with assert().
...
FossilOrigin-Name: 145cd13e3c5a42a717807bcc13c0f7212f38bff8
2016-11-07 15:15:42 +00:00
drh
ad875e7416
Fix the JSON1 extension so that the JSON validator correctly rejects malformed
...
backslash escapes within string literals.
FossilOrigin-Name: 7a63539169a384960e30a63e0c8e9b0f07fa431e
2016-11-07 13:37:28 +00:00
dan
a2bfa046ea
Avoid a crash that can occur after an obscure OOM in the built-in INSTR()
...
function.
FossilOrigin-Name: b86b79c442a58d10aa005ba4f34095375a88d242
2016-11-04 12:05:29 +00:00
drh
b1c9633493
Mark the ICU extension functions as deterministic.
...
FossilOrigin-Name: afbbb6c66a85ff3f4c8dce677e0892a2a51d2b8e
2016-11-04 12:03:26 +00:00
drh
54fc5cc2ae
Add an assert() to silence a coverity false-positive.
...
FossilOrigin-Name: 97354093bceff28714a605068851cfa026c8272a
2016-11-04 11:23:30 +00:00
dan
792557ac67
Fix a test case in vacuum5.test so that it works with the in-memory journal
...
permutation.
FossilOrigin-Name: 81c86401463df6be4ac21987b3b1703e38ab933b
2016-11-04 07:25:43 +00:00
mistachkin
a622d90040
Replace a couple more references to Tcl 8.5 in the Windows build tools.
...
FossilOrigin-Name: 1d0e43c549c36d0919a18d61285e94cad29e7a07
2016-11-03 21:35:10 +00:00
dan
af58068550
Fix a test case in vacuum5.test sot aht it works with
...
-DSQLITE_ENABLE_ATOMIC_WRITE.
FossilOrigin-Name: 3ca80010397676eca57c8a4c9b3a9c2c40629663
2016-11-03 19:24:14 +00:00
dan
7df9b8e6e4
Fix a test case in vacuum5.test so that it works with -DSQLITE_TEMP_STORE=2.
...
FossilOrigin-Name: f5dd95e25c703a825ad7af9a4b3886bd3ef8c2e8
2016-11-03 19:01:20 +00:00
drh
59ce2c434c
In the command-line shell, fix the .imposter command so that it works
...
with indexes on expressions. Fix the ".mode quote" mode so that it works
with ".headers ON".
FossilOrigin-Name: ba9873da94d21873ff76f16a5332fc0092d83f70
2016-11-03 13:12:28 +00:00
drh
16eb59484f
Add the ".imposter" command to the command-line shell.
...
FossilOrigin-Name: be3ec8fdcf1541017ca9375df07645db2a9a3f5a
2016-11-03 13:01:38 +00:00
drh
6027561178
Fix an possible NULL pointer deference in the command-line shell that can
...
occur when using imposter mode.
FossilOrigin-Name: ad08753a8bbf073ec4af9c3a5783ed664244d954
2016-11-03 02:25:30 +00:00
drh
506a1400a3
Adjust the MSVC makefile to use Tcl8.6 by default.
...
FossilOrigin-Name: def8f598b8e33b5bab3a024cc57f4c5e300cd8cd
2016-11-02 19:49:22 +00:00
dan
75ba676790
Fix an issue that was causing the new database image to be assembled entirely
...
in heap memory when VACUUMing a database, even if it should use a temp file.
This could cause SQLITE_NOMEM errors when vacuuming very large databases on
32-bit systems.
FossilOrigin-Name: 3028845329c9b7acdec2ec8b01d00d782347454c
2016-11-02 14:50:19 +00:00
drh
e77caa191b
Fix a requirement mark. No changes to code.
...
FossilOrigin-Name: d18f61b78c8fafef742efbc890382537e8584180
2016-11-02 13:18:46 +00:00
drh
1ad93a003d
Use NOT NULL partial indexes when the query is constrained by a single
...
LIKE or GLOB.
FossilOrigin-Name: 9b3a3b41b59a7ce7d3dd82c7402d6fdc6a5ca43c
2016-11-02 02:17:52 +00:00
dan
d7265378fd
Add the SQLITE_DBCONFIG_NO_CKPT_ON_CLOSE sqlite3_dbconfig() option - for
...
disabling SQLite's default checkpoint-on-close behaviour.
FossilOrigin-Name: 6d142025c74f66f2d48155354b556cd5b2682cb2
2016-10-31 16:49:18 +00:00
dan
298af02308
Add the SQLITE_DBCONFIG_NO_CKPT_ON_CLOSE sqlite3_dbconfig() option - for
...
disabling SQLite's default checkpoint-on-close behaviour.
FossilOrigin-Name: 093d2fc2288b75c15ccf877bfa0e622d3918a562
2016-10-31 16:16:49 +00:00
dan
dadafa881f
Remove the mutex from test_multiplex.c.
...
FossilOrigin-Name: 6374978e8f1ac091394a9f5a1896be92af658bcd
2016-10-27 14:51:02 +00:00
drh
c52496f57f
Make sure left-join markings are transferred to the virtual scalar
...
subexpressions when decomposing a vector comparison in the ON clause of
a LEFT JOIN.
Fix for ticket [fef4bb4bd9185ec8f].
FossilOrigin-Name: 619f5cc71774a37648e185c8502d7af14eb09b7f
2016-10-27 01:02:20 +00:00
drh
9904298bb3
Small size reduction and performance enhancement in whereScanInit().
...
FossilOrigin-Name: c23f5ef337533c1ec6e3ba78a2910352181cc9ee
2016-10-26 18:41:43 +00:00
drh
392ddeb12d
Small size reduction and performance improvement in whereScanNext().
...
FossilOrigin-Name: d861ee17eb900a607de6ec3f4a5d5c24cfb834a0
2016-10-26 17:57:40 +00:00
dan
d15f430111
If all branches of an OR optimize scan that is the rhs of a LEFT JOIN use the
...
same index, set the index cursor to return NULL values if there are no matches
for a row on the lhs.
FossilOrigin-Name: ec9dab8054c71d112c68f58a45821b38c2a45677
2016-10-26 16:05:10 +00:00
dan
b40897ab5e
If all branches of an OR optimize scan that is the rhs of a LEFT JOIN use the
...
same index, set the index cursor to return NULL values if there are no matches
for a row on the lhs.
FossilOrigin-Name: e7b9bc678ecb75c594d9d3ade12a99a8d551cdc9
2016-10-26 15:46:09 +00:00
drh
d240f091c6
Merge the SQLITE_ENABLE_URI_00_ERROR compile-time option.
...
FossilOrigin-Name: 86675ae0abc78960a2faec55d115804acfc3be6d
2016-10-26 13:58:47 +00:00
dan
635f83c062
Add extra tests to check the result of including a %00 escape in a URI
...
when ENABLE_URI_00_ERROR is defined.
FossilOrigin-Name: 1aaa06e37f44309c62335d8eda59ca6890d4be9d
2016-10-26 13:44:07 +00:00
dan
5c35e90377
Add compile time option SQLITE_ENABLE_URI_00_ERROR. If defined, any "%00"
...
escape found in a URI is treated as an error.
FossilOrigin-Name: e8a9bfece27e2af178a206ad6bce3f24d64e7ee4
2016-10-26 12:15:41 +00:00
dan
01e697b4ec
Add test case to demonstrate a "BEGIN EXCLUSIVE" command returning
...
SQLITE_BUSY_SNAPSHOT.
FossilOrigin-Name: b115856408b6aa5538be67beb619d7aff0630bea
2016-10-25 15:06:11 +00:00
drh
7ad3eb63cf
Performance optimization in moveToRoot(). Avoid repeated validity checking of
...
the root page on each call. Once is enough.
FossilOrigin-Name: 98795c2dd9a6d8fa8d49a9f5c36cdf824cae7246
2016-10-24 01:01:09 +00:00
drh
2df45e02f4
In the sessions module, avoid recording a change if an UPDATE statement
...
overwrites a column with REAL affinity containing an integer value with
the same value.
FossilOrigin-Name: 5f3e602831ba2ecaf8ba5411efb387afcde05a33
2016-10-22 01:22:30 +00:00
dan
e43635aaa7
In the sessions module, avoid recording a change if an UPDATE statement
...
overwrites a column with REAL affinity containing an integer value with the same value.
FossilOrigin-Name: b861328ab9ceec6926d97658c3606e6ae9ad39bf
2016-10-21 21:21:45 +00:00
drh
41f5f6ec2c
Add ".mode quote" to the command-line shell.
...
FossilOrigin-Name: c4f5fa78cd8207ce1e46e32e632b8f6ee86047e1
2016-10-21 17:39:30 +00:00
dan
e24452edef
Avoid using the "direct overflow read" optimization to read large blobs if the
...
pager layer has a wal file open - even if the database header indicates that
the db is not a wal database.
FossilOrigin-Name: b54c15f11796a75683eec4b502a22ccb87d621c6
2016-10-21 10:49:39 +00:00
dan
ceb97c1107
If SQLITE_DIRECT_OVERFLOW_READ is defined at compile time, add "DIRECT_OVERFLOW_READ" to the list of symbols returned by "PRAGMA compile_options".
...
FossilOrigin-Name: b7d9727bff2e840af4b090872c991693e78e6076
2016-10-21 10:09:22 +00:00
dan
86873baa58
Add test case to incrblob4.test. No changes to code.
...
FossilOrigin-Name: fd9c6ff05f2052810549a1a6a384f4b40f4ba4ac
2016-10-20 11:48:48 +00:00
drh
c3191d236a
Minor simplification of the comparison opcodes.
...
FossilOrigin-Name: 56474ebca3fdddb8f3c5156f06dc42dc0a65256c
2016-10-18 16:36:15 +00:00
drh
ba69061ebc
Fix harmless uninitialized variable warnings in speedtest1.c.
...
FossilOrigin-Name: 2aa7a03b8632dbfd9741018b5b19c372dcfd3647
2016-10-18 15:29:57 +00:00
drh
f8a89ca5dd
Add the --repeat option to speedtest1.c and speed-check.sh.
...
FossilOrigin-Name: 6ca0e06b21b0d5f7ae5bcb7839a11a45da0d2cea
2016-10-18 14:35:55 +00:00
mistachkin
47d00872fc
Escape non-ASCII character from an ICU extension comment.
...
FossilOrigin-Name: 5ec02ecf3d20ce7e3f5249e9a3684f9b67a7d703
2016-10-17 18:44:11 +00:00
mistachkin
5f0b8a0e30
Corrections to a couple recently added 'filectrl.test' results.
...
FossilOrigin-Name: 3d89dc4544bc51f8c9fa63a6ecf0458f6d10fc9f
2016-10-17 18:33:36 +00:00
dan
1480095ff5
Changes to support interrupting a checkpoint using sqlite3_interrupt().
...
FossilOrigin-Name: c88d36e251abec24aa7e37cf550e148904b9fd2d
2016-10-17 15:28:39 +00:00
drh
cee11adaaa
Small size reduction and performance increase in the string duplicator.
...
FossilOrigin-Name: cda998f080cb00779d8c0d1c83d8fe2b74462cd4
2016-10-17 00:48:06 +00:00
drh
f013e20c66
Add documentation for the OP_SorterInsert opcode, formerly omitted by mistake.
...
No changes to code.
FossilOrigin-Name: 16d88a907730e3773a1320dbaf1f82c2bc71d71f
2016-10-15 18:37:05 +00:00
dan
1cb3c7c415
Add test case to hook.test. No changes to non-test code.
...
FossilOrigin-Name: 2674d779f5453ea6b709a39618d4b8017ab2e3fb
2016-10-15 08:56:18 +00:00
mistachkin
8705f868e0
Add the SQLITE_FCNTL_WIN32_GET_HANDLE file control.
...
FossilOrigin-Name: 16039be3739b8d3b34a1e6093eaebb09e07f984b
2016-10-14 21:27:50 +00:00
drh
9e31fe02ba
Bump the version number in anticipation of the next development cycle.
...
FossilOrigin-Name: aa6de9c40ba2d906772b9032fd5d798661f6d4cc
2016-10-14 21:16:27 +00:00
drh
813646c182
Version 3.15.0
...
FossilOrigin-Name: 707875582fcba352b4906a595ad89198d84711d8
2016-10-14 10:20:30 +00:00
drh
989412a1cf
Take care to avoid integer overflow when doing the initial page cache
...
allocation with an excessively large cache_size setting.
FossilOrigin-Name: 4d66ac98deaa85218be7ff0eb254f78b96d8e8d4
2016-10-13 12:56:18 +00:00
drh
c436a03d02
Avoid reading the -1-th element of an array in the query planner. Fix to a
...
bug introduced by check-in [8e2b25f9b8a7] from earlier today. Curiously,
the problem only appeared on 32-bit systems.
FossilOrigin-Name: 443913d582bcd953d85159047541592e2f68ade3
2016-10-12 18:55:53 +00:00
drh
432697467f
Add to sqlite3_analyzer command-line options --version and --tclsh, and also
...
the undocumented --debug option.
FossilOrigin-Name: e87d02d289a2016ea3ee074e914b07a8ac22b21f
2016-10-12 18:26:26 +00:00
drh
013ae68b25
New testcase() macros to ensure coverage of the ORDER BY LIMIT optimization
...
code in where.c.
FossilOrigin-Name: 61f0526978af667781c57bcc87510e4524efd0d8
2016-10-12 15:15:30 +00:00
dan
83465a662f
Fix a problem affecting queries that match the pattern (... WHERE ipk IN (....) ORDER BY ? LIMIT ?). Fix for [96c1454c].
...
FossilOrigin-Name: 8e2b25f9b8a7ed087d3cece74239814bee19429e
2016-10-12 14:48:00 +00:00
dan
ef74652ceb
Remove a stray line from session4.test causing a memory leak. No changes to SQLite code.
...
FossilOrigin-Name: 6624c4964b63e259d5ee006eaa7ec79ddadbd6a6
2016-10-10 14:48:36 +00:00
dan
90b2fe6b1e
When handling ORDER BY expressions, do not assume all values of an indexed expressions are distinct. Fix for [4766f444].
...
FossilOrigin-Name: aebe429e52ffef026cb0803fb164339d61bd2e88
2016-10-10 14:34:00 +00:00
drh
48590fcb37
Make sure indexes on expressions skip over initial NULL values in the
...
index. Fix for ticket [4baa464912129477f3c9]
FossilOrigin-Name: 71797ba431085f9ae381ed5ea6471967926f4043
2016-10-10 13:29:15 +00:00
dan
ea5e5f0b89
Fix a case in which the rtree module was ignoring an OOM while generating an error message.
...
FossilOrigin-Name: 788f86bebe413b5a0ab41ba3d75ba8728827a964
2016-10-10 10:06:59 +00:00
dan
e5ec01c481
Update test/trace3.test to account for the fact that casting a pointer to a 64-bit signed integer might produce a negative value.
...
FossilOrigin-Name: 010ec22541a4c37f2d3b01b6a531b4b4264102b7
2016-10-08 16:10:29 +00:00
drh
dfe4e6bb33
Corrections to Lemon documentation. No SQLite changes.
...
FossilOrigin-Name: c568ae3eef31b49e846fad90e705914e2868a09c
2016-10-08 13:34:08 +00:00
dan
320d4c304d
Add missing "static" to internal function whereRangeVectorLen().
...
FossilOrigin-Name: cbed3d75cf9a24037263d126727db7dd048a4f97
2016-10-08 11:55:12 +00:00
dan
e288992e19
Updates to the tool/warnings.sh script to make it easier to use on OpenBSD.
...
FossilOrigin-Name: dbe2997f57f8d8f95e4b767bf73b8df3a5e4f783
2016-10-08 09:21:34 +00:00
dan
642f0146d7
Fix some compiler warnings in fts5.
...
FossilOrigin-Name: b066637bb75959267fe6104da323c5112ad78f82
2016-10-05 20:14:29 +00:00
drh
e3c6b61cee
Fix harmless compiler warnings.
...
FossilOrigin-Name: 2dde3375124198560c8ff15f87aadde2afd722c5
2016-10-05 20:10:32 +00:00
dan
4e59344a4c
Add a test case for the fix in [a596b7c6cc].
...
FossilOrigin-Name: b2ef39b11f7c46e69e53439680c32adbb18903bd
2016-10-05 15:04:35 +00:00
drh
da5c62400f
Do not set MEM_Blob unless the appropriate fields of the Mem object have
...
been correctly initialized.
FossilOrigin-Name: a596b7c6cc780525120604090493f3f7d962b9fa
2016-10-05 15:02:00 +00:00
drh
e0251d44fa
Fix the backup_malloc.test script so that it works on Windows.
...
FossilOrigin-Name: d080012daaaa399663a0f767c792a2fff3e1037a
2016-10-05 01:33:57 +00:00
drh
4eda15e715
Fix a problem with the lempar.c parser template.
...
FossilOrigin-Name: 3a9d802fda10585654332b314d317250dc5d894e
2016-10-04 12:20:12 +00:00
drh
44728d7e01
Do not bother to initialize unused fields in the BtreePayload object.
...
FossilOrigin-Name: b10d0f939c82c4de3faa90b86de9ec4a89992856
2016-10-04 00:47:26 +00:00
drh
a71c743aae
Allow deterministic functions in the WHERE clause of a partial index.
...
FossilOrigin-Name: c6e9b9421805c904b20900b711fa0e51773aef3e
2016-10-03 18:13:23 +00:00
drh
c9b39288ae
Size and performance optimizations on the sqlite3ExprAssignVarNumber() routine.
...
FossilOrigin-Name: 109852e51e2cc2674940ba3e5097a92e66f88bb8
2016-10-03 16:33:14 +00:00
drh
de25a88c50
Avoid unnecessary strlen() calls in sqlite3ExprAssignVarNumber() by passing in
...
the token length from the parser.
FossilOrigin-Name: d15ae2e530cffea60263f203ac5f89b6790f4bd5
2016-10-03 15:28:24 +00:00
drh
87c05f0c58
Avoid unnecessary memset() calls in the query optimizer.
...
FossilOrigin-Name: 5bb7cde0731d23411e9df02a957010f94203397b
2016-10-03 14:44:47 +00:00
drh
cca8a4ad6f
Fix an obsolete comment on a variable definition in expr.c. No code changes.
...
FossilOrigin-Name: 012ff6dd306328f7ea71a6600471c871e7ffe37b
2016-10-03 12:56:48 +00:00
drh
1dd518cfcd
Make sure the sqlite_sequence table is updated when an optional xfer
...
optimization is used. Fix for ticket [7b3328086a5c1].
FossilOrigin-Name: 81e4d4f897553f6fee540a38c3e83ceac5ba9b78
2016-10-03 02:59:33 +00:00
drh
cb43a937e5
Allocate Parse objects off of the stack where appropriate for a substantial
...
performance increase and a size reduction.
FossilOrigin-Name: ea8affa9e453b201b479162f621b591e7a65a489
2016-10-03 01:21:51 +00:00
drh
1a7df58c1a
Add SQLITE_USE_ALLOCA to the --lean configuration in speed-check.sh.
...
FossilOrigin-Name: fe07609efc31c4639c40fbda501c55f443756ad2
2016-10-01 23:55:23 +00:00
drh
445f3d564c
Rearrange fields in the Parse object to reduce the amount of initialization
...
required.
FossilOrigin-Name: 361940b44dd17bf2b39fc0e0716c0de6b2b7f4f7
2016-10-01 21:43:37 +00:00
drh
216b70ff82
Reduce the width of a memset() to avoid double-initializing some variables.
...
FossilOrigin-Name: 34edbfd12d6cfa6bbfa30eef9276a4865eadc869
2016-10-01 20:43:41 +00:00
drh
230368c30d
Remove an unnecessary memset() call.
...
FossilOrigin-Name: a76bff74ce47c9c98106566bde5d781992657e22
2016-10-01 19:32:54 +00:00
drh
d8e4b13256
Use sqlite3DbMallocRawNN() where appropriate, instead of
...
sqlite3DbMallocRaw().
FossilOrigin-Name: 54a449a41d8d32da2f8b73689227ced866974a18
2016-10-01 19:21:56 +00:00
drh
8dfef1175e
Make sure deleting an unused prepared statement does not reference
...
uninitialized fields in the structure.
FossilOrigin-Name: 7983eef0422439bfc85950554b000d46a9767ee3
2016-10-01 16:53:45 +00:00
drh
76336d5b9d
Avoid accessing Vdbe.pc if it is uninitialized. Check Vdbe.magic first.
...
FossilOrigin-Name: 6ac6e4462a08cb2f3d28e4a23218fc1b110a2148
2016-10-01 11:39:53 +00:00
drh
ab3182f7c4
Avoid unnecessary zeroing of fields in the Vdbe object when it is allocated.
...
FossilOrigin-Name: 1e21bbe836539e64d24857f4faa3d12cd607dc7e
2016-10-01 00:37:50 +00:00
drh
cd9af608e1
Avoid initializing the column-cache section of the Parse object, since entries
...
in the cache will be initialized as they are used, and avoiding the initial
memset() saves many CPU cycles.
FossilOrigin-Name: 63cf7eafae5c3c1379edf416c5157010c7c120b5
2016-09-30 22:24:29 +00:00
drh
94881d732b
Fix an always-true conditional left over from the previous commit.
...
FossilOrigin-Name: ab12fce3318db447995e1465f34a1e43cd623d6a
2016-09-30 21:20:37 +00:00
drh
9b40d13f43
Fix the Parse.aColCache column cache so that all of the valid entries are
...
in the first Parse.nColCache slots.
FossilOrigin-Name: 6028502059ccbd3699637b7a70a6d8ce1b7c3dad
2016-09-30 20:22:27 +00:00
drh
e05950d878
Another simplification to the Parse object.
...
FossilOrigin-Name: c1419727f5e4cb3ef63b5853b6ef3b1e53af0651
2016-09-30 19:14:32 +00:00
drh
1d96cc60d0
Remove unnecessary fields from the Parse object.
...
FossilOrigin-Name: 814e41da3563eecf5514811bc8ab2df4f5cc0d4b
2016-09-30 18:35:36 +00:00
drh
2a1df937ab
Avoid unnecessary Mem initializations when generating a new sqlite3_stmt
...
object.
FossilOrigin-Name: 47ae1cda8dc255d100aeb8cb90ea4c9e449509be
2016-09-30 17:46:44 +00:00
drh
dd3bfe8648
Small size and performance optimization to sqlite3VdbeChangeP5().
...
FossilOrigin-Name: 3c93c8f5bbf54ed2a331079b28fdd94eb0e59e69
2016-09-29 20:28:34 +00:00
drh
2831c4d123
Remove the peep-hole optimization of removing OP_Close opcodes that come
...
before OP_Halt, as the extra work of removing those opcodes uses more cycles
than just running them.
FossilOrigin-Name: 984a96d79656c1b095aba1f88aca4bb787ba0bd8
2016-09-29 19:50:02 +00:00
drh
42735c7d30
Size and performance optimization to sqlite3ValueFromExpr()
...
FossilOrigin-Name: 945f82bc44c5a431c0fef0d36cf016671d7ade1e
2016-09-29 19:27:16 +00:00
drh
22fa36dc04
Clarification and typo-fixes in comments. No changes to code.
...
FossilOrigin-Name: e2cd79aa3104c51035bf29c548c322564731b75f
2016-09-29 15:53:28 +00:00
drh
5f33eaa6a4
Use Knuth multiplicative hashing for the symbol table.
...
FossilOrigin-Name: cc29ddd6be60bdbf107f285c9eb57d5896ebca2d
2016-09-28 20:42:31 +00:00
drh
5e769a50ad
Two more typo fixes in comments.
...
FossilOrigin-Name: 40c0fb0af678797c39a99853f9f4102464c16f4b
2016-09-28 16:05:53 +00:00
drh
ed204d1f44
Fix typos in comments. No code changes.
...
FossilOrigin-Name: 5bbd071d57a8048e2ca17bf97761e4f27fc5a6bf
2016-09-28 16:04:22 +00:00
drh
96fdcb40af
Update requirements marks due to improvements in the wording of documentation.
...
No changes to code.
FossilOrigin-Name: bf903b2ecac5d7b25c9cc899cae41f1d69aafe4e
2016-09-27 00:09:33 +00:00
drh
2e34326555
Fix FTS3 test cases due to the flattener change of the previous check-in.
...
FossilOrigin-Name: 0c8b9b211f4285e2ab77cf5e0820088ef10e05c4
2016-09-27 00:03:25 +00:00
dan
4c5ebee0b5
When flattening a query of the form "SELECT * FROM (SELECT * FROM tbl WHERE x=?) WHERE y=?", ensure that the final WHERE clause is "x=? AND y=?" instead of "y=? AND x=?". Although it is still not guaranteed, this makes the order in which WHERE clause terms are processed comport more closely to users expectations.
...
FossilOrigin-Name: cf7f9e6d5abff273dd2f8a8dce27d52e1449b3be
2016-09-26 14:39:05 +00:00
drh
0cd874bd57
Inline the relevent parts of sqlite3ExprAlloc() into spanExpr(), for a
...
performance improvement.
FossilOrigin-Name: fe89225eab777c2c9cb1cbc31092b9e39f516842
2016-09-26 12:38:22 +00:00
drh
410c301fea
Omit the LikeOp object from the parser. Change more sqlite3PExpr() calls into
...
sqlite3ExprAlloc() calls.
FossilOrigin-Name: 795454a3fa5f9ccc486593b5e16e8fad38c934fb
2016-09-24 17:42:43 +00:00
drh
87f0e9863d
Add -DSQLITE_MAX_EXPR_DEPTH=0 to the --lean option on speed-check.sh.
...
FossilOrigin-Name: a8cb1390fc1234b2e925090c4d770cca5d587bea
2016-09-24 01:41:59 +00:00
drh
209bc522b0
Add the EP_Leaf flag bit to the Expr.flags field to indicate Expr
...
nodes that do not have substructure. Use that bit to avoid unnecessary
recursion.
FossilOrigin-Name: 8a6ea455cd1bf42ae0a7f1f1789baf88d782db13
2016-09-23 21:36:24 +00:00
drh
e1c03b6233
Use sqlite3ExprAlloc() instead of sqlite3PExpr() for leaf nodes in the
...
expression tree, where appropriate. This is both smaller and faster.
FossilOrigin-Name: afac0709cec577a7851e3711730712cf12eeb6af
2016-09-23 20:59:31 +00:00
drh
8dd099bbaa
New test case for the ORDER BY LIMIT optimization.
...
FossilOrigin-Name: 9a5a489d0d344274d0fc9fb9303503a454f42844
2016-09-23 18:13:01 +00:00
drh
28f17017ee
Fix a potential null-pointer dereference and crash in the case where one
...
thread is calling sqlite3_column_text() and another thread is calling
sqlite3_step() on the same prepared statement at the same instant.
FossilOrigin-Name: ee1382a36303eff8d94275ac3b12e5ce398ee620
2016-09-22 21:37:18 +00:00
drh
511f9e8d29
Remove the internal sqlite3CodeOnce() interface, replacing it with a
...
direct call to sqlite3VdbeAddOp0(v,OP_Once). Slightly smaller and faster.
FossilOrigin-Name: c3774c6a5fe48af91fda28e9e18c6ed9053ea992
2016-09-22 18:53:13 +00:00
mistachkin
5a0da94302
Makefile changes to support building winsqlite3.dll using STDCALL rather than CDECL.
...
FossilOrigin-Name: 5e892d60935e5c82234d1bfaef4c5026061acceb
2016-09-22 18:46:38 +00:00
drh
98ef26b0d4
Fix speedtest1.c so that it works with SQLITE_OMIT_DEPRECATED.
...
Add the --lean and --cachesize options to speed-check.sh.
FossilOrigin-Name: 7785b3a25778cc19861c01f4148f72e0f724f55d
2016-09-21 23:58:49 +00:00
dan
49377a8fb7
Fix a problem with the fts5 auxiliary function API causing a crash when a query contained a phrase of zero terms.
...
FossilOrigin-Name: 0741812d7fcd558479e4849fbb3ba8d03738d018
2016-09-21 19:43:34 +00:00
dan
30f8c23657
Do not run vacuummem.test if ENABLE_MEMORY_MANAGEMENT is defined.
...
FossilOrigin-Name: 4a613d856433ac48e8ee0cd7f0e774e484e8acf6
2016-09-21 19:00:37 +00:00
drh
fb04a36c20
Fix obsolete requirements marks. Add new tests for VACUUM of attached
...
databases.
FossilOrigin-Name: 2b44f9aa7d4e2089dacd6bfcf526dae9309b7af3
2016-09-21 18:18:57 +00:00
dan
b6ea12cc05
Avoid running vacuum5.test in auto-vacuum mode.
...
FossilOrigin-Name: be184befa09ef0a670a2a6d9c037b9a27bcf16d8
2016-09-21 17:53:47 +00:00
dan
b390681622
Do not run test "delete_db.test" with either the journaltest or inmemoryjournal permutations. Ensure that the multiplexor tests in delete_db.test are performed in non-autovacuum mode.
...
FossilOrigin-Name: 46b7d19e0282ecd7622344aafad8c2feb83c9658
2016-09-21 17:47:59 +00:00
dan
48a72ebfa3
Update the fts5vocab table to handle "ORDER BY term" efficiently.
...
FossilOrigin-Name: d4928fb5cd63a72808f01778fa5a11395385dedf
2016-09-21 14:41:09 +00:00
drh
09952c6490
Improved implementation of 64-bit signed integer multiply that correctly
...
detects overflow (and promotes to floating-point) in some corner cases.
Fix for ticket [1ec41379c9c1e400]
FossilOrigin-Name: db3ebd7c52cfc5fcc7be00f52e9d7c84719f7b93
2016-09-20 22:04:05 +00:00
mistachkin
d8992cef36
Fix harmless compiler warning.
...
FossilOrigin-Name: 72429063956614975d90cae2a829cfa4296694da
2016-09-20 17:49:01 +00:00
mistachkin
e0736da15a
Fix typo in comment.
...
FossilOrigin-Name: bd3ecbb5c1977744321f4bbac79fd7e2e7c1b5ba
2016-09-20 17:38:27 +00:00
drh
ff535a2499
Further performance enhancements in zeroblob() handling.
...
FossilOrigin-Name: 21b0e3b75c531a5ce33a1503f9bf647d56f56a5b
2016-09-20 01:46:15 +00:00
drh
8aaf7bcc8d
Avoid unnecessary calls to ExpandBlob() for smaller and faster code.
...
FossilOrigin-Name: 5e196fd18169e84806cd45dd1a8190339323e772
2016-09-20 01:19:18 +00:00
drh
fadd2b1972
Very small optimization in the bytecode engine.
...
FossilOrigin-Name: 46002511e52518bae14f210157f231c814c77c9e
2016-09-19 23:39:34 +00:00
drh
9a2e5169a4
Fix a segfault introduced by the row-value enhancement that comes up on
...
a skip-scan where the first term of the index is unconstrained and the
second term is of the form "columm IN (SELECT...)".
FossilOrigin-Name: 2401ea5acfeee8042489d1db38036ff86e8a6916
2016-09-19 11:00:42 +00:00
drh
c332cc30d9
Improved performance in sqlite3ExprCodeTarget().
...
FossilOrigin-Name: 75146165dcc1ae1faab46b1a7333ef795d5eeac5
2016-09-19 10:24:19 +00:00
drh
d43075bcaf
Small performance optimization in the expression walker.
...
FossilOrigin-Name: c6e6afb9391704d9119335f2ce17df3968acb514
2016-09-19 02:19:00 +00:00
drh
9e5eb9c8cc
Revise the implementation of OP_Once so that it is smaller, faster, and uses
...
less memory. This also fixes an obscure bug introduced 3 days ago by check-in
[5990a1bdb4a073].
FossilOrigin-Name: 6bf5ba10d28f1b0a32aa9a560ae3143a1235eadb
2016-09-18 16:08:10 +00:00
mistachkin
598f7c59e1
Minor enhancement to the TclKit batch tool: it should download the TclKit EXE alone when the TCLKIT_NOENV environment variable is set.
...
FossilOrigin-Name: baceb988c6f4e93134e6a63173e846af2b73531a
2016-09-17 22:46:13 +00:00
drh
85f071b850
Small performance optimization in the freeSpace() routine of btree.c.
...
FossilOrigin-Name: 63962e2a927963575be74c3ce11f39f722c07c72
2016-09-17 19:34:32 +00:00
drh
fd7459e0aa
Improved description of the ElseNotEq opcode in comments. No changes to code.
...
FossilOrigin-Name: e011435e2f57ddfe315d5da48e93185d6789fc80
2016-09-17 17:39:01 +00:00
mistachkin
8145fc6eda
Fix typo in the name of a Win32 string conversion routine. Replace several uses of raw_printf() with utf8_printf() in the shell.
...
FossilOrigin-Name: 6fc95dd7a0b44212f30e657a850892a85a12715c
2016-09-16 20:39:21 +00:00
drh
7152cc0641
If no KEY is specified on ATTACH, copy the main schema key if the key size
...
is non-zero. In other words, allow for -1 as a valid key size in support
of the --textkey to SEE.
FossilOrigin-Name: 03573887dbf357f8aa54e4a1cd03b82b0ded8139
2016-09-16 19:42:47 +00:00
drh
d145915a59
Fix problems with the fileRead() function in the command-line shell. Fix
...
a harmless memory leak in the command-line shell, to make validation testing
easier.
FossilOrigin-Name: e660402e5e654b7f37ad2ce201df5cbb2b9eb9a6
2016-09-16 19:11:03 +00:00
drh
0882da8001
Remove the #ifdef SQLITE_DEBUG from around the testcase_glob() routine
...
in the command-line shell.
FossilOrigin-Name: 9885dac4b98693c4d2ed643022127f1452f19dc6
2016-09-16 18:53:42 +00:00
dan
edc3537c61
Fix a problem causing incorrect code to be generated for IN constraints like "a IN (1, 2, 3)" where column "a" is a rowid column with an extra UNIQUE index created on it. Ticket [0eab1ac759].
...
FossilOrigin-Name: a92aee5520cfaf85ae896365a7e42bdd981f828d
2016-09-16 16:30:57 +00:00
drh
72d5003ed8
Replace a faulty assert() with a testcase() to assure the condition is
...
tested.
FossilOrigin-Name: a49bc0a8244feb08b83e716d81c2a9512c184539
2016-09-16 15:42:17 +00:00
drh
4313f045c2
Add WHERETRACE macros showing every entry and exit from
...
whereLoopAddBtreeIndex().
FossilOrigin-Name: e7653decdcee161d379ced40aa1b27246337b000
2016-09-16 14:50:38 +00:00
drh
a0daa751f8
Fix SQLITE_OMIT_AUTHORIZATION so that it compiles cleanly.
...
FossilOrigin-Name: a3e3b3e1c57178ccd38fc7375ec1de8e8ae45372
2016-09-16 11:53:10 +00:00
drh
760c8162ff
In the shell, make ".testcase" and ".check" available in all configurations,
...
not just SQLITE_DEBUG. All testcases to be named. Show the result of each
testcase on stdout.
FossilOrigin-Name: 792afefa9c750910082fd102f1ccd10309759dfc
2016-09-16 02:52:22 +00:00
drh
cd0509e256
In the command-line shell, add the --new option to the ".open" command.
...
Also, report the current database filename as part of the ".show" command.
FossilOrigin-Name: 8e5c92039128a430e0509f4f06ea80ba39c35bda
2016-09-16 00:26:08 +00:00
drh
2db8211526
Add the ".testcase" and ".check" dot-commands in the shell, when compiled
...
using SQLITE_DEBUG.
FossilOrigin-Name: 62289f27ee276090a855982bd8216a465e7d0a27
2016-09-15 21:35:24 +00:00
drh
98365be030
Omit the sqlite3Apis constant object when compiling with
...
SQLITE_OMIT_LOAD_EXTENSION, since it is not used.
FossilOrigin-Name: 7b10461370828b9c57acaaaea518031d53986fa3
2016-09-15 19:15:19 +00:00
drh
21e19b44f0
Remove no-op code (adding an assert() to prove that the code was no-op)
...
in the text affinity logic of the bytecode engine comparison operators.
FossilOrigin-Name: b9f5bdbf40ac6382e48f09ebcd53cc908e065527
2016-09-15 14:54:51 +00:00
dan
95489c58f7
Fix a typo in a comment in sqlite.h.in. No changes to code.
...
FossilOrigin-Name: 12df7152109ffce4b3e0ee233c5ea8103edb902a
2016-09-15 05:47:00 +00:00
drh
72ceae01e5
Slight size reduction and performance increase in sqlite3VdbeHalt().
...
FossilOrigin-Name: 5990a1bdb4a0734ff23015ada71cf02d0cb1381f
2016-09-15 00:32:42 +00:00
drh
5f6eb1a0dc
Optimization to vdbeRecordCompareInt() makes it slightly smaller and faster.
...
FossilOrigin-Name: 5a2a7712cb8e0b686942dfab4e9e67b5ea7b2be3
2016-09-15 00:04:46 +00:00
drh
481fd50cb4
Update comments used to generate API documentation to include the new
...
"[dateof:3.X.Y]" notation for dates of release where appropriate.
No changes to code.
FossilOrigin-Name: 55f7f8ee5b1c13aa219198b7ae66f59b3730f4c3
2016-09-14 18:56:20 +00:00
dan
12c56aa452
Fix a bug in sqldiff causing it to confuse blobs zero bytes in size with NULL values.
...
FossilOrigin-Name: 264e9c75875796cad773d39b775d4604546bc57a
2016-09-12 14:23:51 +00:00
dan
ff02e200c0
Add missing "finish_test" command to vacuum5.test.
...
FossilOrigin-Name: 02f40c3b934ba79f2d45eae3781f2bea0c69c95f
2016-09-12 13:32:37 +00:00
dan
d562ec277c
Have releasetest.tcl delete all test files except for "testfixture", "testfixture.exe", "sqlite3", "sqlite3.exe", "test.log" and "test-out.txt" after each test run is finished. Passing the "--keep" option restores the old behaviour.
...
FossilOrigin-Name: e0e042dca98f29c060f76db079afecb3200ffae5
2016-09-12 09:28:21 +00:00
drh
2eb22af03d
Changes to give a warning-free build with SQLITE_OMIT_INCRBLOB and
...
SQLITE_OMIT_SHARED_CACHE.
FossilOrigin-Name: 711c59171b22df04224183a713e6c36e0bb3bba8
2016-09-10 19:51:40 +00:00
dan
9871664ed6
Add test code to delete an SQLite database and its auxiliary files.
...
FossilOrigin-Name: 8a9d128119fde36c175735be56876d30e5c8586f
2016-09-10 14:43:07 +00:00
mistachkin
35cd8b1eb5
Make the new file test_delete.c portable to MSVC on Windows.
...
FossilOrigin-Name: 0e3ace39f234c204649ec69c6a69fb0e062c58f7
2016-09-09 20:26:27 +00:00
drh
27fe1c3fcc
Remove an unnecessary call to sqlite3VdbeMemExpandBlob() when casting to
...
text.
FossilOrigin-Name: 19e2e5950541f1a93eed994cc2b1eaf64b68e858
2016-09-09 20:23:59 +00:00
dan
000f95b1ba
Add new file test_delete.c, containing test code for deleting an sqlite database.
...
FossilOrigin-Name: fb0b95e9405a3180d13c6318409af361e9df7632
2016-09-09 20:00:40 +00:00
drh
64caee4086
Performance improvements to the comparison operators in the bytecode engine.
...
FossilOrigin-Name: 37803b19d219f4107f29b240d5d314600e4bd236
2016-09-09 19:33:00 +00:00
drh
b80dbdc2f7
Fix a out-of-order variable declaration for some compile-time configurations.
...
FossilOrigin-Name: 6ac932c92a61cd68cc5b1816216e4748a5c7b3cd
2016-09-09 15:12:41 +00:00
drh
fe3765828a
In releasetest.tcl, the --srcdir option is automatic, so no need to mention
...
it in the --help output.
FossilOrigin-Name: 2bdd838e2c434f1d26b1836ef39fa938ef93131d
2016-09-09 13:23:36 +00:00
drh
2c33183d11
Fix an obsolete comment in the releasetest.tcl source code.
...
FossilOrigin-Name: afaaa276b256f56adf63cb568e486cb3315c3ec2
2016-09-09 13:17:26 +00:00
drh
eedeb92caa
In releasetest.tcl:
...
Improved testing for uncommitted changes. If uncommitted changes are seen,
exit immediately unless the --force option is used.
FossilOrigin-Name: 9a14e6c46cdda9f10151ee96a0540798573edcf2
2016-09-09 12:29:57 +00:00
mistachkin
0e4125a311
Remove an extra space before function names in the amalgamation.
...
FossilOrigin-Name: 20f3c7436f6a8a7bab3968adc010c7c8325e4618
2016-09-08 23:16:02 +00:00
drh
1fbd008cf4
Issue a warning and prompt the user to continue if the releasetest.tcl script
...
is run in a checkout with uncommitted changes.
FossilOrigin-Name: 30e917fff05b02ce2cb1f1c871d638200fbe5716
2016-09-08 23:12:08 +00:00
drh
f78dcd1b96
Add support for row-value comparisons, including IN operators, and
...
row-value updates in the UPDATE statement.
FossilOrigin-Name: ddb5f0558c44569913d22781ab78f3e9b58d7aea
2016-09-07 19:54:24 +00:00
dan
26c8d0ca21
Fix a problem handling expressions like "(a, b) IN (SELECT ... ORDER BY 1, 2)" when there is an index on "a" but not "b".
...
FossilOrigin-Name: 7f2c5c9ee3628c968306a5ab2e5a9a761f1b8055
2016-09-07 19:37:20 +00:00
drh
d609bdb9d3
Add the ext/misc/memvfs.c extension that implements a VFS for read-only
...
database files contained in memory.
FossilOrigin-Name: 12b7782a9af91eab913e159149cb28b3f5a6557c
2016-09-07 18:11:11 +00:00
drh
c097e122b9
Simplify the affinity handling logic in codeAllEqualityTerms(). Logically
...
the same, just a little easier to read and understand.
FossilOrigin-Name: bbab9621f512b04684163b98b6fc669c68038044
2016-09-07 13:30:40 +00:00
drh
af6f65fb26
Merge fixes from trunk.
...
FossilOrigin-Name: 193f036c87857bd77577ceb462af5034c7cc77da
2016-09-07 13:12:13 +00:00
drh
fc8b40f2f6
Fix the ".read" command in the command-line shell so that it understands
...
that the input is not interactive.
FossilOrigin-Name: d8451fe84d09db6ec7e1bd5f0708ea1b5e85f3d6
2016-09-07 10:10:18 +00:00
drh
57a8c61501
The ORDER BY LIMIT optimization is not valid unless the inner-most IN operator
...
loop is actually used by the query plan.
Fix for ticket [0c4df46116e90f92].
FossilOrigin-Name: 820644b886f81e991fceb5f1c3290b8959b34528
2016-09-07 01:51:46 +00:00
drh
63cecc4173
Remove obsolete vector-IN test cases. Fix a bad testcase() macro.
...
FossilOrigin-Name: ab3f8f193a7ec36018bf26c9231a1a6a58b6a523
2016-09-06 19:08:21 +00:00
drh
1431807a0b
Fix corer cases of vector IN operators where the RHS is a compound SELECT
...
that includes an ORDER BY clause.
FossilOrigin-Name: 8329ac6f8d1edcc19c3e0559abe9a8011dbe1497
2016-09-06 18:51:25 +00:00
dan
773d3afaa3
Remove an unnecessary branch from expr.c.
...
FossilOrigin-Name: 7cc9746c5414e02012efb8180f9eca2646800e74
2016-09-06 17:21:17 +00:00
drh
c7a77ae1c6
Avoid unnecessary memory allocations for aiMap in codeEqualityConstraints.
...
FossilOrigin-Name: 70319c3d76abd1e403fcf2a62668736b92a5f3d5
2016-09-06 17:13:40 +00:00
drh
aaf8a0643e
Avoid a NULL pointer deref in codeAllEqualityConstraints() following an OOM.
...
FossilOrigin-Name: c6e528c1c0f17c69c7745b018afa36694118258f
2016-09-06 16:53:53 +00:00
dan
1c12657f9a
Simplify the fix in commit [7d9bd22c].
...
FossilOrigin-Name: bd5a342008575bf66f63881a0bebf43741f2a67b
2016-09-06 16:33:24 +00:00
drh
099a0f5f54
Fix the header comment on codeEqualityTerm().
...
FossilOrigin-Name: b7e710e406ed22bcc316099b5e200b6bb2d9c872
2016-09-06 15:25:53 +00:00
dan
83c434e68d
Fix a problem handling (a, b) IN (SELECT ...) expressions when there is an index on just one of "a" or "b".
...
FossilOrigin-Name: 231c72d9f651f3a70d5c8af080f3ff181b89d939
2016-09-06 14:58:15 +00:00
drh
ed24da4b16
Enhance the sqlite3GetTempRange() and sqlite3ReleaseTempRange() internal
...
routines so that they use sqlite3GetTempReg() and sqlite3ReleaseTempReg()
when nReg==1.
FossilOrigin-Name: 4071da2f87a2f24a279ac3bced8c794ad374b47c
2016-09-06 14:37:05 +00:00
dan
fad0e70c63
Fix a typo in a comment in expr.c.
...
FossilOrigin-Name: 288e934f356ff6276b3e7581ac0f998ca6e93610
2016-09-06 12:04:50 +00:00
drh
9f24b53dcc
Simplified logic to extract a column from a row value.
...
FossilOrigin-Name: e8f105c3009e9b667db2afc0088b020a2b94d370
2016-09-05 22:50:48 +00:00
mistachkin
cc0164b5df
Sync up the MSVC makefiles.
...
FossilOrigin-Name: f66d0d8cf6976c62f7bc0e9390b09fb9976178c1
2016-09-05 20:46:02 +00:00
mistachkin
c55c8dbf7f
Merge updates from trunk.
...
FossilOrigin-Name: ea635bf97edb35b95b34adcb63f726f3573b1c4d
2016-09-05 20:40:38 +00:00
drh
c1bcd9cc3e
Fix an assert() so that it does C-compiler does not combine an assert()
...
conditional with a production code conditional and thereby confuse the mutation
testing script.
FossilOrigin-Name: 2fa5288a7ef43f1fb26037c1b5e84b7b90400623
2016-09-05 19:57:46 +00:00
drh
3fffbf9327
Simplifications to the SQLITE_KEEPNULL flag on VDBE comparison operators.
...
FossilOrigin-Name: 96269f0179a7d8fa44ee278cef362962368c59ef
2016-09-05 15:02:41 +00:00
drh
083aefc732
Do vector comparison size checking early - at name resolution time - to
...
forestall future problems.
FossilOrigin-Name: ae127bcc0a5827786853f47b229021435d6098d7
2016-09-05 12:12:56 +00:00
drh
b29e60c448
Catch vector size mismatch problems during name resolution to avoid later
...
problems.
FossilOrigin-Name: 56562a0346170cf7b72445976864b058437a8ac3
2016-09-05 12:02:34 +00:00
dan
5c3340bd47
Fix a crash that could occur under certain circumstances if the vectors on either side of a comparison operator were of a different size.
...
FossilOrigin-Name: 42670935aba152ba774c2a8bdcbe72b943309d68
2016-09-05 09:44:45 +00:00
dan
80aa545337
Fix a problem causing the affinity of sub-select row-value elements to be ignored in some contextes.
...
FossilOrigin-Name: 7d9bd22c0715ede2592ee1fa7ebc215aded1ca1b
2016-09-03 19:52:12 +00:00
drh
8f9d1ad8d5
Merge the fuzzershell enhancement from trunk.
...
FossilOrigin-Name: ed206048484667e4fe6aaeadd65882537d74bd35
2016-09-03 16:24:43 +00:00
drh
9f6dd025ba
Build the generate_series(START,END,STEP) table-valued function into
...
fuzzershell, to make it easier to construct compact test cases that contain
actual data.
FossilOrigin-Name: 672c21bcf09c5bfb67e061456a56be45409c4f34
2016-09-03 16:23:42 +00:00
dan
2718960316
Consider the affinity of "b" when using an "a IN (SELECT b ...)" expression with an index on "a". Fix for [199df416].
...
FossilOrigin-Name: f5e49855412e389a8a410db5d7ffb2e3634c5fa3
2016-09-03 15:31:20 +00:00
drh
4910a76d45
Performance optimizations.
...
FossilOrigin-Name: f1d06c49ba0d814dc7ffb538aac3f4e6251fd8f0
2016-09-03 01:46:15 +00:00
drh
55a6f6dc72
Merge recent changes from trunk.
...
FossilOrigin-Name: c7271fbde1aebb15daaedb7f1fa75fe410fd46f6
2016-09-02 23:56:32 +00:00
dan
c6952addf7
Add a test case for the OOM handled by the previous commit.
...
FossilOrigin-Name: 9bdf7ca1b317fe0ba7efea38fb395bf6130ac89a
2016-09-02 21:34:17 +00:00
drh
76729ed4be
Correctly detect an OOM occurring in the setDestPgsz() subroutine of
...
backup.
FossilOrigin-Name: d9d8a048d4b621435870b4f8dd13b2938ac2f8fd
2016-09-02 21:17:51 +00:00
dan
033564cca9
Within a backup operation, ensure that a read-transaction is opened on the source database before its page size is read. This ensures the page-size used to write to the backup database is the same as its actual page-size, which is important for ZipVFS databases.
...
FossilOrigin-Name: 7908fc604991d81140c182b97981fd724ad126ae
2016-09-02 17:18:20 +00:00
dan
e5a0cfa161
Have "sqldiff --rbu" ignore rows with NULL values in primary key fields. RBU can't handle such rows and the documentation already says sqldiff ignores them. Because the code now uses "=" instead of "IS" to filter on primary key columns, diffs on virtual tables are faster now too.
...
FossilOrigin-Name: f4ba894a86aa195bcbe2fa69e91cd870ec3fb577
2016-09-01 14:03:28 +00:00
dan
d0d49b9ca3
If SQLITE_ENABLE_ZIPVFS is defined, journal_mode=off is configured and a savepoint or statement rollback is attempted, move the pager into the error state to prevent the transaction from being committed. This makes it safe to use journal_mode=off with zipvfs under some conditions.
...
FossilOrigin-Name: 38d31e189e7c7899e14455f2c083aa676ce4d4c0
2016-09-01 09:35:20 +00:00
dan
a87070a271
Use some of the example code from the sessions documenatation in the sessions test cases.
...
FossilOrigin-Name: 6602974d17536bcb904a794bddedffd58926794b
2016-08-29 14:18:18 +00:00
drh
2e5c5052fd
Fix typos in comments. No changes to running code.
...
FossilOrigin-Name: a07269f2a0f87e0b736127f528f6caf3b63f9052
2016-08-27 20:21:51 +00:00
dan
6650190891
Fix some comments in sqlite3session.h. No changes to code.
...
FossilOrigin-Name: 78cd64e202fcbe9ce69070b0f48ccd0c6b48538d
2016-08-27 18:35:55 +00:00
dan
57b60432ba
Fixes to fts5 snippet() function.
...
FossilOrigin-Name: d464a7b18d212720a4f4e2fa4e204f1aca99c837
2016-08-27 18:34:06 +00:00
drh
888e1faf95
Merge updates from trunk.
...
FossilOrigin-Name: 082fd5f8ac227dbb983da0a772485268af40a484
2016-08-27 14:13:58 +00:00
drh
1ad78c5791
Fix the extra comments (added with -DSQLITE_ENABLE_EXPLAIN_COMMENTS) so that
...
the sense of <, <=, >, and >= tests is correct and so that the
SQLITE_STOREP2 version is shown correctly. These changes are already in the
rowvalue branch but are added here since they are technically unrelated to
rowvalue.
FossilOrigin-Name: 4d43c4698eef4e3db7556813f0274b4018c7c2b9
2016-08-27 14:05:12 +00:00
drh
88e665fd0b
Fix the "Synopsis" on the OP_Lt, OP_Le, OP_Gt, and OP_Ge opcodes, which
...
has been backwards for time out of mind.
FossilOrigin-Name: f51248dcfa22e989dacde41021e96a65f12c5ca8
2016-08-27 01:41:53 +00:00
drh
106526e1bc
Fix a minor problem in sqlite3FindInIndex() related to rowids being used
...
as part of the index.
FossilOrigin-Name: 829f802be7d4647dd815b739bbc9e1d1ac6a224d
2016-08-26 22:09:01 +00:00
drh
a84a283d18
Fix the sqlite3FindInIndex() to ensure that it always uses a prefix of
...
the index and uses no repeated columns. Enhanced comments.
FossilOrigin-Name: b9fc89e432fbe4e5b41959a42797641907e075e3
2016-08-26 21:15:35 +00:00
drh
363fb95bc3
Add an EXPLAIN QUERY PLAN line for when a index is used to implement
...
an IN operator.
FossilOrigin-Name: 171aa833a2e1650c3d9cf9bd6438ae46f6c35871
2016-08-26 19:54:12 +00:00
dan
4b4f51148a
Add test cases to rowvalue2.test.
...
FossilOrigin-Name: 078bb69e99891ba3b76a39ac974990714c43908f
2016-08-26 19:47:30 +00:00
drh
6fc8f36490
Enhance sqlite3FindInIndex() so that it is able to make use of the
...
primary keys at the end of an index.
FossilOrigin-Name: 4b589fbfcc4265902de0f552961d2df497a184da
2016-08-26 19:31:29 +00:00
drh
0c36fca004
Fix a post-OOM crash in updateRangeAffinityStr(). Add several ALWAYS()
...
macros on unreachable branches.
FossilOrigin-Name: 87d40195ae5cc2abd9bae45073a615db81263285
2016-08-26 18:17:08 +00:00
dan
b7ca2177d7
Fix a problem with affinity changes and vector range comparisons.
...
FossilOrigin-Name: b34413ac7e34369b4420e57b0132249dca68a7b0
2016-08-26 17:54:46 +00:00
drh
0dfa4f6fcc
Allow ROWID values in indexed vector comparisons.
...
FossilOrigin-Name: b0cc6be4eb81f21b11796e1f14d4412bf21dea6e
2016-08-26 13:19:49 +00:00
dan
61441c3493
Fix a problem in internal function sqlite3OpenTableAndIndices causing an operand of an unrelated VM instruction to be overwritten. Fix for [ef360601].
...
FossilOrigin-Name: 7090147903337864d54ecfb2cd84a3f823973167
2016-08-26 12:00:50 +00:00
mistachkin
8e16b2d3e6
Rename a test procedure in 'speed3.test' to avoid a name collision.
...
FossilOrigin-Name: 84de17bc688f1df2be1a34420470d1b16f8f4e56
2016-08-26 04:32:59 +00:00
drh
64bcb8cfbb
Comment improvements. Put ALWAYS and NEVER macros on three unreachable
...
branches.
FossilOrigin-Name: 397617009e07004596476d6f5644fdf84c376f54
2016-08-26 03:42:57 +00:00
mistachkin
975c800dd8
Adapt the special case of '$' in item names for test 'vtabH-3.1' as well.
...
FossilOrigin-Name: e4aeaa2bc73b57f1ef134cc4f54e2a652a20b5c9
2016-08-26 02:10:50 +00:00
mistachkin
0a9428d0a7
Make the test 'vtabH-3.1' work when there are less than 5 top-level items.
...
FossilOrigin-Name: 328f79bb5713abbecaeb0ef3fb37f56a0946b915
2016-08-26 01:47:22 +00:00
mistachkin
7dd7d98bbf
Support running the fstree tests in 'vtabH.test' on Windows when not using the system drive.
...
FossilOrigin-Name: 3680f95ff34fdcf6a18a99268678a56e4be5a023
2016-08-26 01:17:12 +00:00
drh
a28f85b076
Remove an unreachable branch from sqlite3ExprAffinity()
...
FossilOrigin-Name: 9d96f61481704e5ec399ee425f0ebb246902ecc5
2016-08-26 01:02:09 +00:00
mistachkin
f10122d535
Fix typos in 'vtabF.test' file. No changes to code.
...
FossilOrigin-Name: a8546feec9388d96934b16e516a165cd37d32ce9
2016-08-25 23:24:09 +00:00
drh
3cc19132da
Merge recent changes from trunk.
...
FossilOrigin-Name: 5789aab8ef59ae1cdfdae123b078ee03da6e08ed
2016-08-25 22:31:44 +00:00
drh
fb82820a38
Fix the sqlite3_trace_v2() interface so that it goes disabled if either the
...
callback or mask arguments are zero, in accordance with the documentation.
FossilOrigin-Name: 37e6c54b1afc634844026b3fe874dd2d550c6558
2016-08-25 22:06:37 +00:00
drh
e347d3e813
Refactor the sqlite3ExprCodeIN() routine for improved maintainability.
...
FossilOrigin-Name: b56705ae6374db9db82613ef89faa1a1e6b00a18
2016-08-25 21:14:34 +00:00
drh
0a1082aec2
Another fix in the IN-operator algorithm description.
...
FossilOrigin-Name: f474aeac4fa62d87e73189868d7c7a295ffb7265
2016-08-25 17:47:36 +00:00
drh
1373c3a8c5
Further refinement of the in-operator.md documentation.
...
FossilOrigin-Name: df0648373a50006ca18d692e12552d1d53d549e3
2016-08-25 17:40:32 +00:00
drh
ecb87ac88d
Improvements to IN operator code generator comments. Avoid unnecessary
...
Copy operations on the LHS of the IN operator.
FossilOrigin-Name: b6344298783a1207cba3f635939ddc9ba922ab67
2016-08-25 15:46:25 +00:00
drh
ee0f22fd3b
Corrections to the IN-operator notes.
...
FossilOrigin-Name: 25033ee94538289ba7e0147da30a18300047123f
2016-08-25 14:23:59 +00:00
drh
539f2fef03
Add notes on the implementation of the IN operator.
...
FossilOrigin-Name: d256b2caeb9e3eb5dd88bb569ec71f91e9991c81
2016-08-25 14:00:15 +00:00
drh
18016ad2bb
Simplified VDBE code for the vector NOT IN null-scanning loop.
...
FossilOrigin-Name: 7ae504e62e9bbbbd85a676f3c3922b7fd0cc73d2
2016-08-24 21:54:47 +00:00
drh
72e26dec86
Improved extended comments of comparison operators when the SQLITE_STOREP2
...
flags is set on P5. No changes to non-debug code.
FossilOrigin-Name: bbc1b016164ed0793e07302614384d52119463e0
2016-08-24 21:24:04 +00:00
mistachkin
4ef916e233
Modularize all use of the calling convention macros based on the USE_STDCALL nmake macro.
...
FossilOrigin-Name: e4a56197b08546601bd6a623f667b43f50d603be
2016-08-24 19:58:46 +00:00
drh
62659b2a80
In sqlite3FindInIndex(), improve internal comments and avoid an
...
unreachable branch.
FossilOrigin-Name: 55945fc12f8157e32e6850e41575c0c6422d29e7
2016-08-24 18:51:23 +00:00
dan
37ff4d4c77
Fix a bug in the fts5 snippet function causing it to return text containing zero phrase instances.
...
FossilOrigin-Name: b174ed2bde43a1872374ce18b85ac9f067e86fbb
2016-08-24 18:50:47 +00:00
mistachkin
2a1d1e452e
Merge updates from trunk.
...
FossilOrigin-Name: 428fc38d95dd88b90655a97133d0ad1214c9f176
2016-08-24 18:49:20 +00:00
mistachkin
24b6b81cb0
Sync up the MSVC autoconf makefile.
...
FossilOrigin-Name: 77f7c31a3aa44798cfa5f557242caffb593ce7af
2016-08-24 18:21:58 +00:00
drh
321e828d03
Fix more unreachable branches.
...
FossilOrigin-Name: 6099c180db55396d6307538a5428ae5ef1b82d10
2016-08-24 17:49:07 +00:00
drh
d0b67a8654
Add a NEVER() on an unreachable branch in comparisonAffinity().
...
FossilOrigin-Name: 505a2f20eac62d4e170f003255c8984e4f3b0918
2016-08-24 15:37:31 +00:00
dan
7887d7f24d
Fix a buffer overrun in the code for handling IN(...) operators when the LHS of the operator contains indexed columns or expressions.
...
FossilOrigin-Name: f41a0391b732a8c4ad188163f34a0f4a22237bb5
2016-08-24 12:22:17 +00:00
drh
ac6b47d164
The previous OOM fix was bad. Back it out and replace it with a better one.
...
FossilOrigin-Name: 1e3bc3698a4b779e6af8e3c727929c4dbddf3edb
2016-08-24 00:51:48 +00:00
drh
894241c847
Avoid a potential null-pointer dereference following an OOM.
...
FossilOrigin-Name: 25f6ed8de4df9c9890d4a352a6d11084433e82ea
2016-08-24 00:25:27 +00:00
drh
e835bc1285
Simplify the row value misuse error message.
...
FossilOrigin-Name: 838c50a5bf46fd0340839d577fa28ba02b4f2034
2016-08-23 19:02:55 +00:00
drh
66860af3dd
Fix a problem with rowvalue UPDATE when the rowvalue is not the left-most and
...
the RHS is a multi-column subquery.
FossilOrigin-Name: e149e6b93a9afb3d574309c0db60e221e24078f7
2016-08-23 18:30:10 +00:00
drh
abb9d5f189
Fix an uninitialized variable in CASE expression code generation.
...
FossilOrigin-Name: c8ffae05e13033ec7425bf0f002df31f550bb7f1
2016-08-23 17:30:55 +00:00
drh
6ae3ab0036
Fix the SQLITE_USER_AUTHENTICATION login check so that the SQLITE_AUTH_USER
...
error code correctly propagates and is not overwritten by SQLITE_ERROR.
FossilOrigin-Name: c640489db2037f1a284d7b85fa753ccdac1b8f79
2016-08-23 14:42:15 +00:00
drh
cbfe1101b3
Add support for the SQLITE_DBCONFIG_MAINDBNAME configuration option.
...
FossilOrigin-Name: 7839519349c7371cdb4e16a215eacd27004cbc62
2016-08-22 20:10:01 +00:00
drh
12abf408ff
Fix the vector BETWEEN operator so that it only evaluates the left-most
...
vector expression once. Add support for vector comparisons in the CASE
operator.
FossilOrigin-Name: 07e69f43a294d35b5145a2b0242ee42d50adab14
2016-08-22 14:30:05 +00:00
drh
db45bd5e82
Reinstate the mechanism in BETWEEN that avoids evaluating the first expression
...
more than once, but fix the affinity extractor so that it works with this
mechanism. The de-duplication of the first expression still does not work
for vector expressions, though.
FossilOrigin-Name: 2f39987f21bd6dae8d2be610a1fd5f06f8878e9e
2016-08-22 00:48:58 +00:00
drh
84b19a3da1
The docs promise the in "x BETWEEN y AND z" the x expression is only evaluated
...
once. That is no longer true, and so some tests are failing. This needs to
be fixed before merging to trunk.
FossilOrigin-Name: e50d264fdc2f08d19202c68f73f18df301cb233d
2016-08-20 22:49:28 +00:00
drh
d832da7f40
Further comment enhancements. No changes to code.
...
FossilOrigin-Name: d4562a9e7b1eaff41466210e3a0caaf374ec5a92
2016-08-20 21:11:25 +00:00
drh
76dbe7a8d0
Clarification of code comments in expr.c. Clean up the implementations
...
of sqlite3ExprIsVector() and sqlite3ExprVectorSize() slightly.
FossilOrigin-Name: 4fb66d6592b141a4a71359250dbd1ac454569cb9
2016-08-20 21:02:38 +00:00
drh
8bd0d58e1c
Fixes for problems following OOM errors.
...
FossilOrigin-Name: 9041ee4a6f0e8389297f887f1431ab5cfe783390
2016-08-20 18:06:14 +00:00
dan
783e778f38
Fix other minor problems with the fts5 snippet() function.
...
FossilOrigin-Name: b56b2a85cf377686727f3929208ede43f797cf76
2016-08-20 17:23:45 +00:00
drh
9854260bca
Do not duplicate the Expr.pLeft subtree of a TK_SELECT_COLUMN node.
...
FossilOrigin-Name: 8384c77ebb3f65fbc54c199885926f2066f0b140
2016-08-20 17:00:16 +00:00
dan
f358009a93
Fix a segfault that could occur if a query that used a vector comparison contained certain types of syntax errors.
...
FossilOrigin-Name: 203f07c5e140e74cf91d0c1e20135c21236f0fc1
2016-08-20 15:01:24 +00:00
drh
9e730f0bb8
Improvements to the vector comparison splitter in exprAnalyze().
...
FossilOrigin-Name: a3ffd283bc931b04170ef737e56bced33d27f06d
2016-08-20 12:00:05 +00:00
drh
8762ec1935
Improvements to comments. No code changes.
...
FossilOrigin-Name: 4165d20f64d778a4e48f511a37cfced8579d4dbe
2016-08-20 01:06:22 +00:00
drh
a1251bc40d
Add support for vector assignments in the SET clause of an UPDATE statement.
...
FossilOrigin-Name: f320d47d6b7b08d9552c8444004bc256348bda90
2016-08-20 00:51:37 +00:00
drh
fc7f27b9d2
Change the way TK_SELECT_COLUMN is handled so that the subquery is only
...
generated once even if part of the vector comparison is used for indexing
and the other part is now. This change also is a pathway to vector assignment
in UPDATE statements.
FossilOrigin-Name: d8feea7dcde83179bff303072426561cfe825e58
2016-08-20 00:07:01 +00:00
drh
8d25cb90cd
Replace the magic number (-2) with its symbol XN_EXPR in the
...
exprMightBeIndexed() routine. No logic changes.
FossilOrigin-Name: d4a5af69cc3bde6f8c02075c07b4d47a0252392d
2016-08-19 19:58:06 +00:00
drh
39a11819f3
Improved comments on sqlite3CodeSubquery(). No changes to code.
...
FossilOrigin-Name: acea4ee136def4815d22eec240c5903a72bde9bd
2016-08-19 19:12:58 +00:00
drh
a15a8bc822
Show the WhereTerm.iField value on debugging output, when it is non-zero.
...
FossilOrigin-Name: 931c95358d8bc02f3e3d8ee4e545a07b2d2c97e8
2016-08-19 18:40:17 +00:00
dan
c9e75fb23a
Register any built-in fts5 module before loading automatic extensions. This allows automatic extensions to register fts5 tokenizers and auxiliary functions.
...
FossilOrigin-Name: b10e31dce8e590e1ba30f512374a8c16656bcc72
2016-08-19 18:37:35 +00:00
drh
4602b8e89d
Fix an obsolete comment on codeEqualityTerm(). No changes to code.
...
FossilOrigin-Name: d07be5afb0a915769382dfd815403f8832cb3eec
2016-08-19 18:28:00 +00:00
drh
b684fd5c4a
Merge recent enhancements from trunk.
...
FossilOrigin-Name: b17872363b60edab05a5d382a44038aad91e4d9f
2016-08-19 15:41:24 +00:00
drh
05a41ee9ec
Merge the VACUUM attached database enhancement from trunk.
...
FossilOrigin-Name: 12d5e38d269ede27cd38a031a395915301fffe56
2016-08-19 15:17:51 +00:00
drh
fcc31545bc
Enhance the VACUUM command so that it can operate on an attached database.
...
FossilOrigin-Name: 083f9e6270fa4faa402b91231271da4f3915c79f
2016-08-19 15:15:55 +00:00
drh
6a754dc767
Disable row counting on queries run while doing a VACUUM.
...
FossilOrigin-Name: ad35ef116296e5d6aaeb9ef260bf35bee3bd6d20
2016-08-19 15:12:38 +00:00
dan
7ca1ea16ff
Have the fts5 snippet() function avoid favouring snippets that begin with sentences that do not contain search terms. Add an extra bias in favour of the first sentence in the document.
...
FossilOrigin-Name: d8180af2adfc101dfce95a0498b5cd7b30643b30
2016-08-19 14:25:38 +00:00
drh
9ef5e7708a
Add the capability to VACUUM an attached database by specifying the schema
...
name as an argument to the VACUUM command. Since version 2.0, VACUUM has
accepted an argument which was silently ignored. Now it has meaning.
FossilOrigin-Name: 29d63059b4d2bb612523ac55ebfef040d054a64f
2016-08-19 14:20:56 +00:00
drh
da84dcae54
Add the SQLITE_DBCONFIG_MAINDBNAME interface.
...
FossilOrigin-Name: d6e3d5796c9991ca0af45ed92ce36f55efc02348
2016-08-18 22:44:22 +00:00
drh
61ea610cd0
Change the name of Db.zName to Db.zDbSName for improved long-term code
...
maintainability.
FossilOrigin-Name: cb9865e14db1c0076618f13400151112f84960cb
2016-08-18 22:19:03 +00:00
drh
e59be01072
Fix a zName to zDbSName conversion missed in the previous check-in.
...
FossilOrigin-Name: d7cf423cdccada2b0a4b7cc79ccf5f35d6f43212
2016-08-18 20:56:39 +00:00
drh
03181c8c27
Fix a SQL NULL handling bug in the vector IN operator code generation.
...
FossilOrigin-Name: 936146b12e27784f15a68fe65732c6d92c3a12f3
2016-08-18 19:04:57 +00:00
drh
48cb3a7600
Display SELECT_COLUMN expressions in the .wheretrace debugging output.
...
FossilOrigin-Name: 3b27a5da100037f75a4efc15e0354a6aa94194f8
2016-08-18 18:09:10 +00:00
drh
db97e56217
Display VECTOR expressions in .wheretrace and .selecttrace debugging output.
...
FossilOrigin-Name: 157347e2580e5078c4081d602e9d1a82d194e719
2016-08-18 17:55:57 +00:00
drh
c8d0b0b9d4
Since the TK_VECTOR token is not actually used by the parser, make it an
...
extra token code added by the tool/addopcodes.tcl script during parser build.
FossilOrigin-Name: b40b202c1f82808d2240e87b22f1e78b2208cb26
2016-08-18 15:36:03 +00:00
drh
5ea494425f
Merge recent enhancements from trunk.
...
FossilOrigin-Name: 4768a1066cb9c7627064d7efec44188d6755cb03
2016-08-18 15:21:16 +00:00
drh
a79e10b665
Simplify the vector comparison code generator logic, and the resulting
...
VDBE code.
FossilOrigin-Name: e2ad0b5d8e1e83118c12889150aca2f2a6b2bdde
2016-08-18 15:15:29 +00:00
dan
b39a5ac229
Adjust some tests to account for recent changes to the fts5 snippet function.
...
FossilOrigin-Name: 184ecbe9c0c3280a22cdeda5c7836a7b280c3e1f
2016-08-18 14:47:48 +00:00
drh
69c338263a
Rename the Db.zName field to Db.zDbSName to make it more descriptive and to
...
distinguish it from all of the other "zName" variables scattered throughout
the code.
FossilOrigin-Name: 92a22f01343a898455fd61c3b8e7d7c954f5b569
2016-08-18 14:33:11 +00:00
dan
e7036202bc
Bias the fts5 snippet() function to return snippets that look like they start at the start of sentences.
...
FossilOrigin-Name: 60de159476edbd48dc363f7f77f09c32ea68422f
2016-08-17 19:05:12 +00:00
dan
8c2b1fde58
Fix a problem in the fts5 snippet() auxiliary function.
...
FossilOrigin-Name: a861713cc6a3868a1c89240e8340bc7b2b9559da
2016-08-17 11:14:39 +00:00
drh
0f832ddc06
Fix a bug in destructor processing of Lemon. That has no impact on the
...
SQLite grammar. The bug was introduced by prior work to optimize the
Lemon-generated parser used by SQLite.
FossilOrigin-Name: f9035b8e2ea331801402bcb62b203ab092949770
2016-08-16 16:46:40 +00:00
dan
0f5a186c4c
Questionable changes to support interruptible checkpoint in ZipVFS.
...
FossilOrigin-Name: c7a9f26d118c7a453d45fa73efa4d1ab79301659
2016-08-13 14:30:23 +00:00
drh
0f825a7e26
Remove an unnecessary stack variable from sqlite3VdbeExec().
...
FossilOrigin-Name: c54bd9c82dd34951dc87848c0b19fcccaef928db
2016-08-13 14:17:02 +00:00
drh
af69eda63e
Improvements to commits. No code changes.
...
FossilOrigin-Name: 18f5a3bee4f870be4644a6042a20081c46edb7d0
2016-08-13 13:03:46 +00:00
drh
a2f629251f
Fix to the vector less-than operator. All legacy tests passing now.
...
FossilOrigin-Name: ec70a67ebc997f457be4d52d8affc37e142dc3ff
2016-08-13 12:37:47 +00:00
dan
460d38f15e
Fix an fts5 problem with corrupt database handling found by address-sanitizer.
...
FossilOrigin-Name: e22252e1da4cd9e41b970970a1c4f466aa6cc133
2016-08-13 10:34:12 +00:00
drh
79752b6e63
Attempt to simplify the logic and generated code for vector comparisons.
...
Basic comparison operators are working, but there are many indexing test
failures still to be worked through.
FossilOrigin-Name: dfc028cfbe7657d20727a2670ecadb1575eb8cbb
2016-08-13 10:02:17 +00:00
dan
3b96d1e2e4
Fix a buffer overread in fts5.
...
FossilOrigin-Name: fcfbee6c7d33a9ae7feb46044a0c2fe680460d39
2016-08-13 06:38:31 +00:00
dan
7fb8990688
Have wal file checkpoints exit early if the sqlite3_interrupt() API function is called.
...
FossilOrigin-Name: 8a5f41c7b1718507524adef1a2730e99cf53270a
2016-08-12 16:21:15 +00:00
drh
471b4b92bd
Add VdbeCoverage() macros on newly added VDBE branch operations.
...
FossilOrigin-Name: 381aa73141db8ec59adbcb09e71af660ee4ae5ce
2016-08-12 11:25:49 +00:00
drh
a48d7e7749
Fix a post-OOM memory leak.
...
FossilOrigin-Name: 14009b32b955b42cfd5f0c2ce7d4b3ce19ce201e
2016-08-12 11:01:20 +00:00
dan
1bf4ca7c42
Add the "modeof=<filename>" URI parameter to os_unix.c - used to specify a file to copy permissions from when a new database is created. Also allow passing NULL as the second parameter to sqlite3rbu_vacuum().
...
FossilOrigin-Name: ed406d31ff54ee3de8db91690a966e5c561f8f94
2016-08-11 18:05:47 +00:00
drh
088645b090
Merge recent changes from trunk.
...
FossilOrigin-Name: 959677b97ba15f786936c762e2e68df1151d7ed0
2016-08-11 12:31:21 +00:00
dan
17994e3bca
Fix some problems with handling "no such collation sequence" errors.
...
FossilOrigin-Name: 8278be06fa69e3266866220bdaf5be45a5fcfa23
2016-08-11 12:01:52 +00:00
dan
6ff4627d5d
Fix a 1 byte buffer overwrite in the "sqldiff --rbu" command.
...
FossilOrigin-Name: ab83d7077da80ddbcf399d0797d79e964dc64f0e
2016-08-11 09:55:55 +00:00
drh
c73bd0a5cc
Fix a harmless compiler warning in FTS5.
...
FossilOrigin-Name: 2ea0c8b46eefd4874f021f8dfd344be751f2034f
2016-08-11 01:24:56 +00:00
drh
93ca3933d1
Optimization to sqlite3WhereExprUsage().
...
FossilOrigin-Name: 95493058fcf40306727a281f21c5a2a0011b7d02
2016-08-10 20:02:21 +00:00
drh
e104dd3cc3
List of MATCH operator names in isMatchOfColumn() should be constant.
...
FossilOrigin-Name: 7319d676aaf95ba7391379f4cdf193b6aa898893
2016-08-10 19:43:29 +00:00
drh
922802c44e
Performance enhancement in the expression walker.
...
FossilOrigin-Name: ebccbd96094ac64de39dbd0d220d3a7afd8cd40e
2016-08-10 18:56:32 +00:00
drh
f5dbe7f8d8
Tweaks to pcache1TruncateUnsafe() to make it slightly smaller and faster and
...
easier to test.
FossilOrigin-Name: 059f4e2efefb7b9deaf539110c19bceaeb10c6ce
2016-08-10 15:02:49 +00:00
drh
167fbbe195
Rearrange the code inside sqlite3RunParser() routine so that sqlite3Parser()
...
is only called from a single place. This allows sqlite3Parser() to be
in-lined, which results in a 0.25% overall performance gain.
FossilOrigin-Name: 25d1d02b3ea126ade22b2a72649ae55509aa1777
2016-08-10 14:40:00 +00:00
drh
765fecf010
Increment the version number to 3.15.
...
FossilOrigin-Name: 8c2701e70ab2553d7a586ff5fe7afa02d8c63199
2016-08-10 13:34:16 +00:00
drh
701b68879c
Improved comments on the lempar.c parser template. Adjust the
...
YY_SHIFT_USE_DFLT constant in the Lemon-generated parser tables so as
to guarantee that it is always out of range of the yy_lookahead[] table.
FossilOrigin-Name: 83622f3f50030e4d6abafb99d99742928aaf157c
2016-08-10 13:30:43 +00:00
drh
d9fabbcc5b
Fix pcache1TruncateUnsafe() run faster for the case where iLimit is
...
very close to iMaxKey.
FossilOrigin-Name: b07a26df06a2ffb946ff8a1cc7f43eaf701a94b5
2016-08-10 11:50:12 +00:00
drh
c83db9e4e1
Performance optimization in the yy_find_shift_action() routine of the
...
Lemon-generated parser.
FossilOrigin-Name: ba6663beefcc8060e6f3be6ab37c13fdbb08b7de
2016-08-10 01:43:30 +00:00
drh
6bada27205
Prototype for the remember(V,PTR) extension function.
...
FossilOrigin-Name: f0942c362f45ca1e986e142dbdd3ad957626dfb1
2016-08-09 21:08:42 +00:00
drh
8d57d7af23
Fix harmless compiler warning.
...
FossilOrigin-Name: 9a5a4f6e3bc265fecf79a7f63d14abbf239da636
2016-08-09 21:01:52 +00:00
dan
ccf03677a3
Minor update to the way fts5 column filters are parsed.
...
FossilOrigin-Name: 14864f2b8470fe98dbd17f59963bf1be8d4962f9
2016-08-09 19:48:37 +00:00
dan
882ef0b8c0
Have fts5 interpret column lists that begin with a "-" character as "match any column except" lists.
...
FossilOrigin-Name: e517545650631d1e8a7ee63c6646a8b183a0a894
2016-08-09 19:26:57 +00:00
dan
9cd4933ec1
Add rowvalue5.test, which should have been part of the previous commit on this branch.
...
FossilOrigin-Name: ea03e219ced87777f0c3c6bbb0274078dbb829e2
2016-08-09 05:48:40 +00:00
dan
6256c1c242
Fix some cases involving row values and virtual tables.
...
FossilOrigin-Name: 156a41f30a0afd9a70e6c26470dcc468a11bd402
2016-08-08 20:15:41 +00:00
dan
1d9bc9b7a0
Fix the EXPLAIN QUERY PLAN output for row value range constaints that use an index.
...
FossilOrigin-Name: bb60651163553c5e46bf7b2805490570cea647b8
2016-08-08 18:42:08 +00:00
dan
adeb970da2
Merge trunk changes with this branch.
...
FossilOrigin-Name: 0e927a7e0250a65fd8e97b322cd69e93fadd13f0
2016-08-08 16:52:11 +00:00
drh
e22c375659
Version 3.14
...
FossilOrigin-Name: d5e98057028abcf7217d0d2b2e29bbbcdf09d6de
2016-08-08 13:40:27 +00:00
drh
6da466e4f4
Fix documentation typos. No changes to code.
...
FossilOrigin-Name: ebc396a19fa79bea208ecda277ffff5d02166d0b
2016-08-07 18:52:11 +00:00
dan
e099b67c20
Have the TEA package build without SQLITE_OMIT_DEPRECATED. As it uses recently deprecated interfaces sqlite3_profile() and sqlite3_trace().
...
FossilOrigin-Name: 95578898835b933901603bd4d5e063f1219a016f
2016-08-05 20:54:45 +00:00
dan
43c1ce390f
Undo commit [f250166bb]. It is required to handle IO and other errors that occur within a VACUUM of a Zipvfs database.
...
FossilOrigin-Name: ae72513af37cd806a6d94aaa7c47a740e119d3b1
2016-08-05 16:16:26 +00:00
drh
5360b55c6c
Remove an incorrect ALWAYS() statement and add a test case to show when
...
the condition is sometimes false.
FossilOrigin-Name: 0f57effa3642e66a863f32cc7fba86d167084af3
2016-08-05 15:34:42 +00:00
drh
0aafa9c89c
Fix a very obscure problem following OOM in sqlite3_declare_vtab().
...
FossilOrigin-Name: 68eac74874d0646369bef3650c6cb271cca62ab4
2016-08-05 14:35:47 +00:00
drh
70ae0e93ec
Revert the SQLITE_APICALL changes for now. That changes needs further
...
research before it is released. Deferred until 3.15.
FossilOrigin-Name: 9adda385267d1a0ecff259b42a284913668441a2
2016-08-04 13:23:28 +00:00
drh
cc15313cc9
Add the experimental SQLITE_ENABLE_UNKNOWN_SQL_FUNCTION compile-time option.
...
When enabled, the "unknown function" error is suppressed for EXPLAIN and
a no-op function named "unknown()" is substituted. This facilitiates using
the command-line shell to analyze queries from applications that contain
many application-defined functions that are not normally available to the
shell.
FossilOrigin-Name: b7f30a9ff20d580fdaecdcf2b644d09ad6c2575e
2016-08-04 12:35:17 +00:00
drh
dd545d3bf2
Make sure the ORDER BY LIMIT optimization is not applied if the inner-most
...
loop can only have a single iteration and is hence not really a loop.
FossilOrigin-Name: 13e3bd3de6b434b6182ef36be108d7ee0be8ca53
2016-08-04 09:09:44 +00:00
dan
3d1fb1dd75
Fix a problem with estimating the number of rows visited by a query that uses a multi-column IN(SELECT...) constraint.
...
FossilOrigin-Name: 3c2f908f5b7312570cfa74afcf4252a857cb5237
2016-08-03 18:00:49 +00:00
dan
2c628ea9d9
Fix another problem involving vector range constraints and mixed ASC/DESC indexes.
...
FossilOrigin-Name: 1559f4c43473e107f7196eea3ee91c53ede22999
2016-08-03 16:39:04 +00:00
dan
d66e5794d1
Fix stat4-based cost estimates for vector range constraints.
...
FossilOrigin-Name: 18af74abc8ceae47ab9fbee3e3e5bb37db8fcba5
2016-08-03 16:14:33 +00:00
drh
c0d269e96c
Fix a typo in a comment in btree.c. No changes to code.
...
FossilOrigin-Name: 722c12816347ee9fce7a090cfebef2c5841e7445
2016-08-03 14:51:16 +00:00
drh
a36e01a772
Fix the --help output on fuzzcheck so that it fix in an 80-character window.
...
FossilOrigin-Name: b91444b5db8465f09d112455e722c888b3f94329
2016-08-03 13:40:54 +00:00
dan
78f9bb6c71
Add new test file rowvaluefault.test.
...
FossilOrigin-Name: e496b2d63984311e6ae117677e6c2417ae24b6bc
2016-08-02 20:45:56 +00:00
drh
c330887291
Fix a unused variable that comes up with -DSQLITE_OMIT_DATETIME_FUNCS.
...
FossilOrigin-Name: e2f9919e34c70761e4e275eeffca8ccf9159223c
2016-08-02 20:42:24 +00:00
mistachkin
3dffcf911f
The 'replace.tcl' tool should use Unix line-endings.
...
FossilOrigin-Name: 50de96314f75494dc1f5b14d62c595a70c4e0638
2016-08-02 19:29:56 +00:00
dan
51d82d1d24
Add tests and fixes for vector operations that use sub-queries with different combinations of LIMIT, OFFSET and ORDER BY clauses.
...
FossilOrigin-Name: 092b1c5ff53c9f3cfed079c46e3353d93f99303e
2016-08-02 18:50:15 +00:00
dan
f9b2e05c75
Fix SQLITE_OMIT_SUBQUERY builds.
...
FossilOrigin-Name: 339f85f414a484e44d2502d1ff7281caf9b7c838
2016-08-02 17:45:00 +00:00
dan
d05a7144cd
Fix a problem with vector range constraints and mixed ASC/DESC indexes.
...
FossilOrigin-Name: e2ad30c8b5366fd8e50f36c62345ed03ec613c47
2016-08-02 17:07:51 +00:00
dan
080508a186
Merge latest trunk changes into this branch.
...
FossilOrigin-Name: d468101b421e073e9debd7381bde1d36af31369e
2016-08-02 16:24:10 +00:00
dan
95a08c065a
Add missing comments and make some code on this branch clearer.
...
FossilOrigin-Name: 6937677cc2c2db6b21f997559f88a339466cd15b
2016-08-02 16:18:35 +00:00
drh
b7203cde29
Updates to requirements marks. No changes to code.
...
FossilOrigin-Name: b23c10ac8f65bc88a6c7d88e140217222eb4cbe5
2016-08-02 13:26:34 +00:00
dan
914b7e4238
Fix a problem introduced by [77948b5eceab92a7] causing duplicate calls to be made to the xSavepoint() method of virtual tables under some circumstances.
...
FossilOrigin-Name: e64a4173d2899acf13b73e6e28f2e164fd638a75
2016-08-02 11:29:16 +00:00
drh
38b802dfd7
Fix harmless compiler warnings in sqlite3_status().
...
FossilOrigin-Name: 7c38a79cdd42aaa45715aea330d10ca859098837
2016-08-02 08:45:26 +00:00
drh
19eb77bbe0
Update the wordcount.c test program and add a new script "time-wordcount.sh"
...
for additional performance testing.
FossilOrigin-Name: d8ef9f58643f13dd3d16dcde0d829ae08324f04b
2016-08-01 21:17:53 +00:00
dan
553168c706
Fix a problem with vector range constraints involving the rowid column. And other issues.
...
FossilOrigin-Name: 3ef75d45ebcd8ede91596d69e55fe7d685008a60
2016-08-01 20:14:31 +00:00
drh
b0df540d7a
Fix other harmless compiler warnings.
...
FossilOrigin-Name: 90d2c490fc2ed4e073711b84f989ca4d496dcfb5
2016-08-01 17:06:44 +00:00
dan
4df049faec
Remove a duplicate typedef from loadext.c (remaining copy is in sqlite3ext.h).
...
FossilOrigin-Name: fd184e5a8f4577aa9a817eb55e771d8d1021b946
2016-08-01 16:57:30 +00:00
dan
d7d19b7137
Add an extra compiler switch to loadext.test to ensure that it picks up the correct version of sqlite3.h when building a test extension.
...
FossilOrigin-Name: e57fa6af32a1d1bf7be64b26850730f7e714b6c6
2016-08-01 16:50:50 +00:00
dan
870a0705fe
Fix a problem with IN(...) constraints where the LHS is a sub-select that is an aggregate query.
...
FossilOrigin-Name: 1f4dba87da4a44ad26223ad965731164c0d9bad9
2016-08-01 16:37:43 +00:00
drh
8ef24b8deb
Update releasetest.tcl to automatically do one round of tests with
...
USE_STDCALL=1 when running on Windows with MSVC.
FossilOrigin-Name: a6a112de485eb9d15f6fa75568dcb876f00abb64
2016-08-01 15:00:00 +00:00
drh
32c83c8b9e
Avoid making unnecessary changes to the signatures of the
...
sqlite3_auto_extension() and sqlite3_cancel_auto_extension() interfaces.
FossilOrigin-Name: b6ea2f21f602031ef4dbd47462ac11b0bb0d5de6
2016-08-01 14:35:48 +00:00
dan
5c288b929a
Fix problems with vector == comparisons and NULL values.
...
FossilOrigin-Name: 059d0d05354e6efab7892c97b339ffa0b5303587
2016-07-30 21:02:33 +00:00
mistachkin
19e76b2a7c
Fix harmless compiler warning seen with MSVC.
...
FossilOrigin-Name: 390a38a142d36d2c57b3f21aab72edcde450125d
2016-07-30 18:54:54 +00:00
dan
cb17ce9300
Merge latest trunk with this branch.
...
FossilOrigin-Name: 63ae02d084a332250ff6fd8d8c80e53bf5422a68
2016-07-30 17:59:39 +00:00
dan
625015e0c9
Remove the EP_Vector expression flag.
...
FossilOrigin-Name: e9d9c6d46b46160fad6aa6e3441a65a09157515f
2016-07-30 16:39:28 +00:00
dan
19ff12dd76
Fix some issues with vector range constraints and the column cache. Also vector range constraints and rowid columns.
...
FossilOrigin-Name: 42607366bfc2dceb1013797a973b3b8df75dcb4d
2016-07-29 20:58:19 +00:00
dan
145b4ea519
Change the way "(a, b) = (SELECT *)" expressions are handled in where.c if there is an index on one of the columns only.
...
FossilOrigin-Name: 4dfebff2924f46284d5b9cda69175f79b29d6028
2016-07-29 18:12:12 +00:00
mistachkin
11f69b879c
Using the header file 'intrin.h' requires MSVC 2005 or later.
...
FossilOrigin-Name: 9fae75c08b7d3b3e13734193ad8398ef6971cbac
2016-07-29 17:36:27 +00:00
mistachkin
be56ad31b7
For test 'shell1-5.0', disable round-trip testing for characters in the range 0xE0 to 0xEF on Linux, due to intermittent shell portability issues.
...
FossilOrigin-Name: 544c990afd3b64064cc4d970ec5d7eb23eeb9914
2016-07-29 04:12:18 +00:00
mistachkin
d62c07d42e
Fix typo in a test file interactive output string.
...
FossilOrigin-Name: 4fedd7902371935e1374ca7df3ffd4c4cf93959b
2016-07-29 02:04:36 +00:00
drh
50972b71e1
Merge additional linkage macro changes from the branch.
...
FossilOrigin-Name: 8b0eb22ee12b23421dcb8dbeb46909d813788a0b
2016-07-29 01:55:42 +00:00
drh
e363d50db8
Further refinement to the calling convention macros.
...
FossilOrigin-Name: 45588de385d2a721b3e9f04beb6c7b789dd27d42
2016-07-29 01:49:36 +00:00
mistachkin
df27352e37
Merge updates from trunk.
...
FossilOrigin-Name: 71ffa195f5a48280ee522d80ab82e8cdea636961
2016-07-29 01:47:18 +00:00
mistachkin
fefe82876c
Update the autoconf makefile for MSVC.
...
FossilOrigin-Name: 2daf20980d4cb9ed36372778ae1f3e595e503549
2016-07-29 01:46:57 +00:00
drh
99bbcc8287
Undo some unhelpful changes to skip-scan scoring that were added
...
by the check-in [9e2b2681] that improved scoring of index scan.
FossilOrigin-Name: c7d51934a4f30d096bb79fc509fc9dd0df5d89a4
2016-07-29 01:32:36 +00:00
mistachkin
c08556844e
Add macro necessary for building several extensions when the __stdcall calling convention is not in use.
...
FossilOrigin-Name: bc8c9b55ddf5227dc6b2116486f4a19bf54fce2b
2016-07-29 01:31:49 +00:00
mistachkin
2d45d7bfab
Missed a couple Tcl command deletion callbacks.
...
FossilOrigin-Name: fc5c187602acceedf7152b6927616d134f779a8f
2016-07-28 23:58:25 +00:00
mistachkin
afe18262b4
Use the SQLITE_TCLAPI macro in several extensions that were missed in the previous check-in.
...
FossilOrigin-Name: df2543652b835353c03956dfbd3e35e5b191372e
2016-07-28 23:54:45 +00:00
mistachkin
85bd982ba0
More compiler warning fixes for GCC related to the auto-extension mechanism.
...
FossilOrigin-Name: b8218129bc848c61fa6910feae4141dac6ad86fc
2016-07-28 22:53:10 +00:00
mistachkin
78d5e02f99
The return type used by the auto-extension entry points is 'int', not 'void'.
...
FossilOrigin-Name: bf9c86c74f30136a106f37603a6c7dcc76caf41d
2016-07-28 22:46:53 +00:00
mistachkin
177d0f0b47
Make sure all the auto-extension mechanism function signatures match up precisely.
...
FossilOrigin-Name: 87ba69b5ca4a8e4ef2bbaaf07a0ff13fc5cd4721
2016-07-28 22:38:31 +00:00
mistachkin
44e95d4f02
Make the extension auto-loading mechanism work with the __stdcall calling convention. Also, fix a couple Tcl command calling conventions missed in the previous check-in.
...
FossilOrigin-Name: 3ea567c4b07b2a7a027b9b5cb8250ab687803698
2016-07-28 22:23:26 +00:00
dan
7b35a77b1a
Fix further issues with multi-column IN(...) operators. Also some error handling cases surrounding row values.
...
FossilOrigin-Name: cc3f6542bec99b00d2698889bcea2aa0b587efa0
2016-07-28 19:47:15 +00:00
mistachkin
e37f7397c9
The 'sqlite3ext.h' content should be processed before being included in the amalgamation.
...
FossilOrigin-Name: cbe1de4799df4d512bc175f51ed99c6ec6d5a4d1
2016-07-28 19:28:35 +00:00
drh
3a22fdab9a
Decorate all interfaces with calling convention macros.
...
FossilOrigin-Name: fd784887e125bf95f4799ad09cbcba6795173487
2016-07-28 18:55:57 +00:00
mistachkin
c0bebc1dcf
All SQLite API functions and callbacks in the 'sqlite3ext.h' header file must be decorated with the calling convention.
...
FossilOrigin-Name: 97fc6e4328fe72cdd10f11a4b4bc9ce14bdc537f
2016-07-28 18:49:20 +00:00
drh
a8914faaaa
Disable the authorizer callback when reparsing the schema. This avoids
...
undesirable authorization failures following an ALTER TABLE.
FossilOrigin-Name: 805d01cdabb48a69eb986a7f084e53eb25d76b7f
2016-07-28 18:38:13 +00:00
mistachkin
7c60b26691
Fixup reserved function pointers in the Tcl stubs table and several macros containing Tcl function pointers.
...
FossilOrigin-Name: 959cd0131a5c717679b6e250229794679efe7f69
2016-07-28 18:18:53 +00:00
mistachkin
a121cc7c60
Adjustments to get 'testfixture.exe' compiling with Tcl 8.6 when __stdcall is enabled.
...
FossilOrigin-Name: 90e89ec9c8efff057a9e43c612427fc5c97ab52d
2016-07-28 18:06:52 +00:00
drh
aa0325872f
Improvements to the way the COMPILER compile-time option is set when compiling
...
with Clang.
FossilOrigin-Name: 81f9cf86c48f3cd43755ded4dc97388ec650f8af
2016-07-28 17:24:16 +00:00
mistachkin
7617e4a8a4
Make sure the SQLITE_TCLAPI macro is always defined.
...
FossilOrigin-Name: f2f1323cc4d2ad2d6794dbfae8d50b747213e85d
2016-07-28 17:11:20 +00:00
mistachkin
f27a80cf18
More work on getting the 'testfixture.exe' target to work correctly.
...
FossilOrigin-Name: 36b72fd609cf151f3db0e65b450d7cd515f2ac49
2016-07-28 16:09:52 +00:00
mistachkin
fe0c0d2088
Modify the mksqlite3h.tcl tool to handle the syscall typedef specially.
...
FossilOrigin-Name: 478a84efa6ea13629227ba8970c8ef8545d31074
2016-07-28 15:38:34 +00:00
drh
4194ff6598
Change mksqlite3h.tcl to automatically insert the SQLITE_CALLBACK calling
...
convention macros.
FossilOrigin-Name: 11ab9c9ab562df98c20abf126a8bac178aef77a8
2016-07-28 15:09:02 +00:00
mistachkin
52b1dbb5fc
Allow the 'testfixture.exe' target to be compiled with the __stdcall calling convention.
...
FossilOrigin-Name: e8be3dfeabaa31b3490793cf8230faae1204be15
2016-07-28 14:37:04 +00:00
dan
34c125747d
Merge latest trunk changes into this branch.
...
FossilOrigin-Name: 9685880f7baeb670739fdcf2d9df08e22abaa699
2016-07-28 13:59:21 +00:00
drh
4aff119f3a
New test case to insure legacy CREATE TABLE syntax is supported.
...
FossilOrigin-Name: 6feff15cae8f0427be790355841d49c479c1c586
2016-07-28 12:52:30 +00:00
mistachkin
69def7ff2f
Work in progress on setting a calling convention for all callback functions.
...
FossilOrigin-Name: 02b8040e1add02734d2dbc6c59737ab74ff8fb18
2016-07-28 04:14:37 +00:00
dan
d49fd4e89a
Fix some problems with multi-column IN(SELECT...) processing.
...
FossilOrigin-Name: 719a3b2035a335ca8b9704646b1d641011e3ea0e
2016-07-27 19:33:04 +00:00
drh
5f26e00761
Enhance the query planner cost estimation for index scans to take into account
...
WHERE clause terms that can be computed using only the index and that do not
require looking up rows in the original table. This fixes an obscure
performance regression that arose when the ORDER BY LIMIT optimization was
added by check-in [bf46179d44843].
FossilOrigin-Name: 9e2b26811452a5011d0a97a689636fa4409da856
2016-07-27 19:30:53 +00:00
drh
e604ec0be0
Add test cases and fix a comment.
...
FossilOrigin-Name: 50f8ea37fb9647c4a9da2c269a4d6f54b10ce96b
2016-07-27 19:20:58 +00:00
drh
2409f8a112
When estimating the cost of an index scan, factor in the cost savings of
...
being able to use the index to evaluate some WHERE clause terms without
having to do a table lookup.
FossilOrigin-Name: a59b5622f7cc6e502d71aabc12c053582cd03609
2016-07-27 18:27:02 +00:00
dan
d93ba6271b
Initialize a variable in where.c to avoid a valgrind warning.
...
FossilOrigin-Name: 4d59df02d3713b3e3804e1a88e676749b2794286
2016-07-27 16:03:54 +00:00
dan
d9ed09d47b
Merge latest trunk changes into this branch.
...
FossilOrigin-Name: d4f3d52c5a11fc7ad7e8cad76361edbcef13a12f
2016-07-26 18:15:35 +00:00
dan
8da209b169
Fix where.c handling of "IN (SELECT ...)" expressions when the SELECT returns more than one result column. Also error handling for other row value constructor cases.
...
FossilOrigin-Name: 061b8006034f06a0311b4304c8b14d2c8b0153df
2016-07-26 18:06:08 +00:00
dan
2900a6222f
Ensure that the sqlite3_scrub_backup() extension creates a backup database at least as large as indicated by the database header, even if the last page of the input database is a free-list leaf.
...
FossilOrigin-Name: 483994a54dee3c7a3801e0e9d3c96fa9dbd8d2fd
2016-07-26 10:46:21 +00:00
drh
9d60875901
Copy the cache_spill setting from the main database over to the
...
vacuum_db transient database when running a VACUUM.
FossilOrigin-Name: c0e7d98ef2a13ede5ae865083ede1aaffdf43310
2016-07-26 04:49:43 +00:00
drh
426f4ab009
Make sure affinity is applied correctly on lower-bound range constraints
...
in the min() optimization. Fix for ticket [a0bac8b3c3d1bb].
FossilOrigin-Name: b819bace9c2a0b0159122b26db96a8f50a6f0eac
2016-07-26 04:31:14 +00:00
drh
2b62b5def8
In the VACUUM command, set the cache_size of the transient vacuum_db database
...
to be the same as the database being vacuumed.
FossilOrigin-Name: b78d99548ac53ac10dcc38368cc4b29c8cbcb09b
2016-07-25 22:40:12 +00:00
drh
07d9a03187
Fix a test case in FTS5 to make it compatible with Tcl 8.5.
...
FossilOrigin-Name: a495f8e77e14241150f79e746c7303284f04621a
2016-07-25 21:11:53 +00:00
drh
422dded5a9
Minor test infrastructure changes to better support SEE testing.
...
FossilOrigin-Name: 8dcb9d506b5eef3a21d97877217e0df69966a915
2016-07-25 16:10:43 +00:00
drh
a522473c65
Add a new %ifdef to parse.y so that the build works with SQLITE_OMIT_SUBQUERY.
...
FossilOrigin-Name: 38a48cfb9a8212970c4a4f8458643c22ed067e8b
2016-07-25 14:40:43 +00:00
drh
017256802b
Changes to test scripts to get them all running on OpenBSD.
...
FossilOrigin-Name: 9e7bedeee444cbf0b1a9165e88928c5d85088de1
2016-07-25 14:20:01 +00:00
drh
2aed979592
Disable the DBSTATUS_CACHE_USED_SHARED tests on mac when memsys3/5 is disabled
...
due to differences in the allocation sizes for the Darwin memory allocator.
FossilOrigin-Name: d6f6c87c9c0acf609a9d5bea818bb7a5437109a1
2016-07-25 12:10:25 +00:00
drh
26fe413be6
Update the vacuummem.test script so that it works on mac as well as on linux.
...
FossilOrigin-Name: ea7fb98b96f13f7dc5ed83ec5e8ad8857e20e06e
2016-07-25 12:01:18 +00:00
drh
5d513ba08c
If both MEMSYS3 and MEMSYS5 are enabled, than automatically disable MEMSYS3.
...
FossilOrigin-Name: ccc22e14dc5d910d632807f49484be54dc2fde83
2016-07-25 11:57:21 +00:00
drh
6fe4c184fb
Another attempt at getting --enable-memsysN working.
...
FossilOrigin-Name: 5f40e6ad599eea59a5adc3a11d6f7998872736b4
2016-07-25 11:39:24 +00:00
drh
26197d1b62
Fix the --enable-memsysN options in configure so that they actually work.
...
FossilOrigin-Name: 679552550e085497b98478bbe28056d99fe4aab4
2016-07-25 11:32:09 +00:00
drh
c530b9c65b
Add --enable-memsys3 and --enable-memsys5 options to the configure script.
...
FossilOrigin-Name: 67e1dc9842dc8a6ae5edef21bdb2ef6d3f4a17b7
2016-07-25 11:27:22 +00:00
drh
5fe63bfb93
Evidence marks and code reformatting for SQLITE_TRACE_STMT operation.
...
FossilOrigin-Name: e1e022383114525241454f63ea8b9768fb7ec657
2016-07-25 02:42:22 +00:00
drh
bd441f7700
Change SQLITE_TRACE_STMT to return unexpanded SQL text in the X argument.
...
Add documentation on how and when to use sqlite3_expanded_sql(P) to compute
the expanded text for legacy sqlite3_trace() compatibility.
FossilOrigin-Name: 163e15229d837a5471007cffb8d41faafd081737
2016-07-25 02:31:48 +00:00
drh
087ec072ef
Fix code so that the deprecated sqlite3_trace() and sqlite3_profile()
...
interfaces are not called when SQLITE_OMIT_DEPRECATED is used.
FossilOrigin-Name: 1c5baae3c545096a29a093f7d4387771f1db507c
2016-07-25 00:05:56 +00:00
drh
4b363a5130
Use sqlite3_trace_v2() instead of sqlite3_trace() in the shell.
...
FossilOrigin-Name: c8e0539b970585cbb3619461a53abb0c3b308a17
2016-07-23 20:27:41 +00:00
dan
ba00e30a3a
Allow vector IN(SELECT ...) expressions to use an index if either all the indexed columns are declared NOT NULL or if there is no difference between the expression evaluating to 0 and NULL (as in a WHERE clause).
...
FossilOrigin-Name: e2fd6f49b1b145bec09c581cc982b89429643ae9
2016-07-23 20:24:06 +00:00
drh
2ce26ff10a
Add the json_quote() function to the JSON1 extension.
...
FossilOrigin-Name: 269892abf6e59c417729669cc764d1f237e093fd
2016-07-23 19:34:53 +00:00
drh
eb09f6d788
Small tweak to the btree balancer for improved tree balance.
...
FossilOrigin-Name: 8817dedb75430e6c78ff527f7ded4abb35776cef
2016-07-23 19:18:55 +00:00
drh
49dcd79e7d
Fix recently added tests so that they work in all configurations.
...
FossilOrigin-Name: d0bcaf0cd92ae5bbea7ad68537ba89437d5c39e8
2016-07-23 14:50:26 +00:00
drh
194c21de34
Add the sqlite3_expanded_sql() and sqlite3_trace_v2() interfaces.
...
FossilOrigin-Name: 99a6c51887d9d78409944c5a028d5a3ac2e066a7
2016-07-23 05:22:02 +00:00
drh
8afffe7244
Improvements to sqlite3_trace_v2() documentation. Fix the
...
sqlite3VdbeExpandSql() routine to respond better to OOM conditions.
FossilOrigin-Name: 0400f642d542e62bb428e0bf263964c65691368e
2016-07-23 04:58:57 +00:00
drh
557341e8fa
Add requirements marks to the sqlite3_trace_v2() interface documentation.
...
FossilOrigin-Name: ebd388e94da4a2b29c2a546f832d359619803ec5
2016-07-23 02:07:26 +00:00
drh
cf1e395acb
Fix sqlite3VdbeExpandSql() so that it handles OOMs by always returning NULL.
...
FossilOrigin-Name: 5a027fe4127d498e0dc0d9439131c6a29085cf0a
2016-07-23 00:43:14 +00:00
mistachkin
a4c07346b7
Revise a warning fix from the previous check-in to improve clarity. Also, fix an incorrect test prefix (typo).
...
FossilOrigin-Name: f50a3fd6606c14b82c9b938bfca284d54b6c650f
2016-07-22 21:35:38 +00:00
mistachkin
80f2b33a12
Fix harmless compiler warnings seen with MSVC.
...
FossilOrigin-Name: 8bb6e6fcedf7d0ae796b8848593106c921ebf21a
2016-07-22 21:26:56 +00:00
drh
9a8b9ec51c
Be sure to hold the database connection mutex while calling sqlite3VdbeExpand()
...
from within sqlite3_expanded_sql().
FossilOrigin-Name: 527b5ba68c0b0185958b945b197f9022951d9379
2016-07-22 20:45:03 +00:00
drh
dec8bc0eb4
Add requirements marks to the sqlite3_expanded_sql() documentation.
...
FossilOrigin-Name: 409535e6dfc307f26ea3d9f51be51c439b6d7b22
2016-07-22 20:20:53 +00:00
dan
4097d0ca79
Merge latest trunk changes with this branch.
...
FossilOrigin-Name: 60fed5cdd4a44aefa1b4d505adeb7936f2f0b952
2016-07-22 17:58:05 +00:00
dan
12ca5ac3d2
Fix a problem with upper case module names in the "sqldiff --vtab" command.
...
FossilOrigin-Name: 87e25fc472604b3978811be53991104c665a95e7
2016-07-22 10:09:26 +00:00
dan
033ac6af7e
Add extra test cases to verify the fix in [64ca1a835].
...
FossilOrigin-Name: bf98a2de7ed41a8acca89d7369b353f12182cfb4
2016-07-21 18:02:20 +00:00
dan
89441bf185
Add new test file vacuummem.test. To test that any temporary memory used by VACUUM is freed as soon as the VACUUM has finished (not, for example, when sqlite3_close() is finally called).
...
FossilOrigin-Name: 1b1ad0b28c392ade4321734e9b022a545b845b04
2016-07-21 16:43:54 +00:00
dan
8414e81359
Add the largely untested SQLITE_FTS5_NO_WITHOUT_ROWID compile time option to fts5. For building a dynamically loadable extension that does not use WITHOUT ROWID.
...
FossilOrigin-Name: d0a1cf1c56c237617fb73cb31f4950365b1f3e9b
2016-07-15 19:17:19 +00:00
drh
8d85364261
The sqlite3_expanded_sql() function compiles, but always returns NULL, when
...
the SQLITE_OMIT_TRACE compile-time option is used.
FossilOrigin-Name: 53c25ebe34e6776a12260078852973b1d581d20f
2016-07-15 10:01:06 +00:00
drh
0e15d921d9
Merge fixes from trunk. Fix the tclsqlite.test script.
...
FossilOrigin-Name: d2b1fa55e8809ffc25a25f256349b8d08beadab5
2016-07-15 02:55:51 +00:00
drh
eb5a549ecf
Disable the CSV extension when virtual tables are disabled.
...
FossilOrigin-Name: ec7180892ac737f0731cf61f2d095a5c1d18ad93
2016-07-15 02:50:18 +00:00
mistachkin
de6fde6af6
Modify the Tcl test command 'sqlite3_bind_blob' to make use of the Tcl_GetByteArrayFromObj() API.
...
FossilOrigin-Name: e03c81895e52096ab055d8231841e9070602ca84
2016-07-15 01:49:25 +00:00
mistachkin
283a85ca21
Fix typo in sqlite3_trace_v2().
...
FossilOrigin-Name: 97ccf15fb7e5103c8317d06a1985ba9c88544a60
2016-07-15 00:39:47 +00:00
mistachkin
170e998236
Corrections and enhancements for the new tests.
...
FossilOrigin-Name: 20e74c638537aa207de41a4f3c932cc05024ea9a
2016-07-15 00:23:01 +00:00
mistachkin
a8f286a38a
Modify one test result to be case-insensitive.
...
FossilOrigin-Name: 5ccbeeea7d7933402f7ccb0b1c9b3038989ca746
2016-07-15 00:09:53 +00:00
mistachkin
e2f84b403c
Add tests, including some for the sqlite3_expanded_sql() API.
...
FossilOrigin-Name: 8b8c0b749a9a1daca49e7ea9351e253443bb1fc2
2016-07-15 00:07:47 +00:00
mistachkin
b52dcd8989
More work on the Tcl interface and tests for the sqlite3_trace_v2() API.
...
FossilOrigin-Name: f3c4aa97d8c10fdb69efc6405b5fa45781f45a61
2016-07-14 23:17:03 +00:00
mistachkin
b56660f5a4
Initial work on the Tcl API interface to the new sqlite3_trace_v2() function.
...
FossilOrigin-Name: 7b59fa40a01c89cc98414d90a798169c26e04256
2016-07-14 21:26:09 +00:00
drh
0b4c042b86
Minor tweak the the b-tree balancer.
...
FossilOrigin-Name: d2a0af7a37e390439c3001fedb5834f47fb24a1f
2016-07-14 19:48:08 +00:00
drh
86396219a3
Fix ALTER TABLE so that it does not promote the schema version past 3, as
...
that will cause DESC indexes to go corrupt.
Ticket [f68bf68513a1c].
FossilOrigin-Name: a7db6e45ad45be9b3003f61d4163f543498a7c9d
2016-07-14 19:13:11 +00:00
mistachkin
0129a54a16
Fix copy/paste typo in the new sqlite3_expanded_sql() function.
...
FossilOrigin-Name: e7d18c70d2b8f09c9f5b978fe3d69d1088e42322
2016-07-14 09:22:16 +00:00
drh
c0e2203adb
Fix a parameter misordering on sqlite3_trace_v2() in the loadable extension
...
interface.
FossilOrigin-Name: 989de2d5b5e7155654d3eebadb9651b23f422c58
2016-07-14 01:13:36 +00:00
drh
fca760c841
Add the sqlite3_expanded_sql() interface. Refinements to the
...
sqlite3_trace_v2() interface to make it more useful.
FossilOrigin-Name: 99ee7ee58d45b29a0000492306ddc0b90563ff51
2016-07-14 01:09:08 +00:00
drh
1637a5171f
Legacy tests now passing.
...
FossilOrigin-Name: f33526a341132435cb4185149a784eef6b3a1a2d
2016-07-13 23:18:27 +00:00
drh
3d2a529df6
First cut at implementing the new sqlite3_trace_v2() interface.
...
FossilOrigin-Name: cb0062feb018f52689938a58cb76886d431c33f0
2016-07-13 22:55:01 +00:00
drh
ed916ba025
Interface design for a new sqlite3_trace_v2() method that supersedes
...
sqlite3_trace() and sqlite3_profile().
FossilOrigin-Name: 0c569f759f6c4701321d7fea5e7ccb371743bb6b
2016-07-13 21:30:03 +00:00
dan
cfbb5e82db
Modifications towards better vector IN(...) support on this branch. Not activated yet.
...
FossilOrigin-Name: 34e35c71b25b0aa2d8931040feb260a78cc48c49
2016-07-13 19:48:13 +00:00
drh
a0620acc4a
Fix harmless compiler warnings in shell.c for NetBSD.
...
FossilOrigin-Name: 824b39e54fb9ba562be4d92cc9a54aee1cdf84cb
2016-07-13 13:05:13 +00:00
drh
ce0442edf3
Fix header comments and remove an unnecessary version restriction from the
...
carray() table-valued function implementation.
FossilOrigin-Name: 021d0fb8d85e44839d2b4fdb90b15f0e1f2442e6
2016-07-13 00:55:28 +00:00
drh
dd703e22a5
Fix the error counter reset in Lemon generated parsers. This has no effect
...
on SQLite.
FossilOrigin-Name: 3ef93950d30b34d852d6bbc101d433a04112868a
2016-07-12 19:54:49 +00:00
mistachkin
709947a315
Merge comment typo fixes from trunk.
...
FossilOrigin-Name: 728c5aa436a5f55c86b019c415a2b71d1b0a8fd6
2016-07-10 19:35:45 +00:00
mistachkin
e234cfd11f
Fix typos in comments. No changes to code.
...
FossilOrigin-Name: 77c692a6704cd877ba35d0afb774ab9b46364d59
2016-07-10 19:35:10 +00:00
dan
71c57db099
Add some support for using row value constructors in certain parts of SQL expressions. There are many bugs on this branch.
...
FossilOrigin-Name: b2204215b231202aef7a218411cc2ddaecf28f35
2016-07-09 20:23:55 +00:00
drh
e39cd91aea
Add the "#/value-list/" style of results for approximate value matching
...
in the do_test command of the test infrastructure. Use this new result style
to make the SQLITE_DBSTATUS_CACHE_SIZE_SHARED tests cross-platform.
FossilOrigin-Name: c869bf34a8ee42ac6542862e59c7a4b89b042f79
2016-07-09 17:47:01 +00:00
drh
a912348a19
Fix a compiler warning in test code - in the int64array_addr TCL command.
...
FossilOrigin-Name: 29fb988f1afc3fe623097acee1a5d08bf8386626
2016-07-09 17:15:05 +00:00
drh
11499f0ab4
Fix compiler warnings on windows.
...
FossilOrigin-Name: 8b22f777a11438ab0baadc7d9e471f415b734d1f
2016-07-09 16:38:25 +00:00
drh
43f58d6a17
Fix various internal #defines to conform to new C-language naming restrictions,
...
specifically that private-use macros names must not begin with "_".
FossilOrigin-Name: 5471aca0158851d3fb0a2517306917536deb38bb
2016-07-09 16:14:45 +00:00
drh
c2024c4ef2
Add support for the win32-none VFS.
...
FossilOrigin-Name: b5f32a896d0e4010ec67fcf1d635bb9aa797d3c2
2016-07-09 00:06:21 +00:00
mistachkin
1e75483cf0
Initial work on a Win32 VFS with NOP locking.
...
FossilOrigin-Name: 549abe3f89b55b05a05f267865a5dd84b8cd335d
2016-07-08 21:14:37 +00:00
drh
d3d4b3c698
Another attempt to fix error handling in Lemon. This change is a no-op for
...
SQLite's usage.
FossilOrigin-Name: e1d8ef311cabcb96495a88404991b1416655e4a8
2016-07-08 19:54:38 +00:00
drh
5225449e5b
In the sqldiff program, make sure the first argument to the db_prepare()
...
utility function is always a valid format string.
FossilOrigin-Name: 8bb8d886ffa948cd7bc66c8c62da76bce233be2e
2016-07-08 02:14:24 +00:00
dan
c8dcdff37e
Add the SQLITE_DBSTATUS_CACHE_USED_SHARED sqlite3_db_status() parameter. This option is similar to DBSTATUS_CACHE_USED, except that it divides memory used by shared caches evenly between all connections.
...
FossilOrigin-Name: 06cf2680588c8dc4f0cbde275a09cfdcb5943268
2016-07-06 18:42:34 +00:00
dan
9c10608a26
Change the name of the SQLITE_DBSTATUS_PROPORTIONAL_CACHE_USED to SQLITE_DBSTATUS_CACHE_USED_SHARED.
...
FossilOrigin-Name: d58401ab26c7c5417eb7d540f47d11c4e49edcb2
2016-07-06 18:12:54 +00:00
dan
dc7b7385c9
Fix a test script problem causing a test to fail if the ICU extension is enabled.
...
FossilOrigin-Name: 0c228f5d3db1be598ebf5d9170428c19d18e01ad
2016-07-06 10:17:43 +00:00
dan
272989b44d
Add the SQLITE_DBSTATUS_PROPORTIONAL_CACHE_USED sqlite3_db_status() parameter.
...
FossilOrigin-Name: 118321c8b9d88b8f439c952436f42838c3fc80cb
2016-07-06 10:12:02 +00:00
dan
50687436f7
Fix a memory leak in recently added test code.
...
FossilOrigin-Name: 724e4cdc25fc80b8face57b3398cd338994fb23c
2016-07-06 09:19:14 +00:00
drh
e0a6e0fda0
More fixes to Fossil so that it automatically resets its error counter at the
...
end of a parse.
FossilOrigin-Name: 2683b375ad1291172fdb47d94e16fcf869c78c8a
2016-07-05 16:11:26 +00:00
drh
240c7faf8b
Attempt to reset the error count in the Lemon-generated parser after
...
a parse failure.
FossilOrigin-Name: 91889fa30e84760e0d4b3d429c4abdef5a3f7931
2016-07-05 12:47:28 +00:00
dan
2e993288e6
Add the sqlite3rbu_state() API. Used to determine the current state (creating OAL, ready to move OAL, incremental-checkpoint, finished or error) of an RBU operation.
...
FossilOrigin-Name: 0357875fbb1bb462feef5121287b2f84da88e497
2016-07-04 11:47:48 +00:00
drh
9697308f44
Add the carray() virtual table as a loadable extension.
...
FossilOrigin-Name: d8bc6feb99938a2aa06142b217045e4b54c66bf1
2016-07-04 11:34:56 +00:00
drh
2e3f87ae84
Change the name of the intarray() extension to carray() and give it an
...
optional third parameter that specifies the datatype as one of 'int32',
'int64', 'double', or 'char*'. 'int32' is the default.
FossilOrigin-Name: a204ba99db34b356acb259189158a32d2df25da0
2016-07-03 02:35:47 +00:00
drh
ba637157ca
Fix an off-by-one comparison in the intarray() virtual table. Get the
...
intarray() virtual table tests working using the legacy makefile.
FossilOrigin-Name: 7c3d441f2a9f642f3d91dcee854a4d16d298bc34
2016-07-02 20:57:06 +00:00
drh
2519b2a3e5
Merge the alternative table-valued function RHS of IN operator implementation
...
from trunk.
FossilOrigin-Name: 507fdbfb54ce377f0d870260b07d71b797843fcf
2016-07-02 20:51:31 +00:00
drh
9de4757c9c
Fix a problem in table-valued functions on the RHS of an IN operator that
...
occurs following an OOM error.
FossilOrigin-Name: bead151e72215e6ca2a90eb049cfca414dccea04
2016-07-02 12:33:21 +00:00
drh
5fbab882c0
Add support for table-valued functions on the RHS of an IN operator.
...
FossilOrigin-Name: ac6000f050ff4efcf8a87f0825077dbf4144f073
2016-07-02 12:08:14 +00:00
drh
7c95696e5c
Fix the transitive constraint logic error that can result in a null pointer
...
dereference. Fix for ticket [e8d439c77685eca6].
FossilOrigin-Name: 228a7879870f8689e2f9b74fbef2ff93fab7b3c2
2016-07-01 20:12:39 +00:00
drh
883486bada
Add test cases to the transitive constraint fix.
...
FossilOrigin-Name: c952af89c22ddc31491f142b9511608a4c8f9737
2016-07-01 19:48:43 +00:00
dan
e336b8914c
Add the sqlite3rbu_state() API. Used to determine the current state (creating OAL, ready to move OAL, incremental-checkpoint, finished or error) of an RBU operation.
...
FossilOrigin-Name: 92e7df0ff5c4c118c63d92a767dc82700438a310
2016-07-01 12:39:58 +00:00
drh
2d05331444
Add the ability to have a table-valued function on the RHS of an IN operator.
...
FossilOrigin-Name: ba1b441b6003808810667d749635fe6b2e8c6165
2016-06-29 06:19:19 +00:00
drh
64131c15ab
Another test case for the intarray($PTR,$N) virtual table.
...
FossilOrigin-Name: 06e1fab7527c6b4330a58f8d8873afaf2d67ae86
2016-06-29 05:08:01 +00:00
drh
4841624ab9
Add a prototype intarray($PTR,$N) table valued function.
...
FossilOrigin-Name: 233b33382dc70de45f90b6dfdb5785f20b21489e
2016-06-29 05:00:30 +00:00
drh
a2fbe3bec6
Proposed fix for a problem in the query planner.
...
FossilOrigin-Name: a33d23560959a127e37d8213dc00210cd4b05352
2016-06-28 22:27:56 +00:00
drh
05d1bad674
Prevent the WhereLoop.rSetup cost estimate from going negative on complex
...
queries.
FossilOrigin-Name: f81050859170c8708a1b296da8dd3ef0dd314a11
2016-06-26 04:06:28 +00:00
drh
4b37cd49a6
Fix the handling of OP_Eq opcodes that compare a register against itself
...
and that require an affinity change.
FossilOrigin-Name: 507014e4c7a70cd09410c89c8ed466c8edab39d2
2016-06-25 11:43:47 +00:00
drh
f5fe00399f
Fix the ctime.test script so that it works with clang.
...
FossilOrigin-Name: 77e4f7a36e6e0ebe842bcb36b2557a5bfba90d3f
2016-06-24 06:23:13 +00:00
drh
be11ade7cf
Fix the Makefile.in to avoid unnecessary recompiles of sqlite3.c.
...
FossilOrigin-Name: 67c39e16442d9359b24d60d5f97bd66c19eff16a
2016-06-24 02:50:44 +00:00
dan
b10ab53f3a
Update the sqldiff utility so that if the --vtab switch is specified "rtree", "fts3", "fts4" and "fts5" tables are diff'd directly and the underlying real database tables ignored. Without this switch, all virtual tables are ignored and the diff is performed on the underlying real tables.
...
FossilOrigin-Name: b8671e9434180878cfe15d70b793fdee69aabccf
2016-06-23 16:48:35 +00:00
drh
ec5935924d
Fix the build for -DSQLITE_OMIT_VIRTUALTABLE
...
FossilOrigin-Name: 911131424857430d46784b167399ecf192584ca2
2016-06-23 12:35:04 +00:00
dan
9c987a833c
Update the sqldiff utility so that if the --vtab switch is specified "rtree", "fts3", "fts4" and "fts5" tables are diff'd directly and the underlying real database tables ignored. Without this switch, all virtual tables are ignored and the diff is performed on the underlying real tables.
...
FossilOrigin-Name: 5d0a9d4c45730e47576bc77373fa7075a74051a5
2016-06-21 10:34:41 +00:00
dan
ee84b0f690
For a table on the rhs of a LEFT JOIN operator, do not include terms like "IS NULL" from the WHERE clause in the cursor-hint. These may be false for rows that the cursor would otherwise visit, but true for a row of all NULL values generated by the LEFT JOIN.
...
FossilOrigin-Name: 913e595615e2ef40fb431f6e7678f6fc8439782e
2016-06-20 17:25:50 +00:00
drh
2ad96f5880
Add the json_quote() function to the JSON1 extension.
...
FossilOrigin-Name: 2c3714aebf5e40e3728877a235b3c1f93defa33e
2016-06-17 13:01:51 +00:00
mistachkin
1b361ff381
Add the experimental SQLITE_FCNTL_WIN32_GET_HANDLE file control.
...
FossilOrigin-Name: b6ddabe1818c36007c476a31e2e35755630a5f14
2016-05-03 19:36:54 +00:00
drh
16b7dcc717
LSM1: Fix the integer key encoding so that negative keys are in numeric order.
...
FossilOrigin-Name: f92dc4187f6046fcb3ab63449efd7f3738594adc
2016-02-24 13:35:22 +00:00
drh
6627fd6126
Merge trunk enhancements.
...
FossilOrigin-Name: fac4f4ecee21a460e527a0e2ffa24094b74e17dd
2016-02-23 01:41:35 +00:00
drh
078b99f806
Add support for (variable length) integer keys in LSM1.
...
FossilOrigin-Name: 32f3daec0a8084b258b2513c8025bc4d95a5d757
2016-02-23 01:37:24 +00:00
drh
7dc1918bbf
Merge up to trunk.
...
FossilOrigin-Name: f9e5fb88a5a14b26e9ea6997f449d0913f27a494
2016-02-22 13:01:22 +00:00
drh
99a1ab7ebc
Merge the latest enhancements from trunk.
...
FossilOrigin-Name: 8aede091c4740511d11ea14da253fe39bbfe75a6
2015-11-19 19:31:33 +00:00
drh
c83ef77bb9
Work toward more flexible typing for keys and values.
...
FossilOrigin-Name: 5c79f53131a7ab3c83f49e35a5021a6cdb2518fc
2015-11-19 19:27:07 +00:00
drh
a87cc18948
Basic functionality is now working.
...
FossilOrigin-Name: aa129c51ecf5c917cfac30be330886f8a10f49e1
2015-11-17 02:23:09 +00:00
drh
eb8e7adb16
The virtual table compiles but does not work and is missing many features.
...
This is an incremental check-in.
FossilOrigin-Name: a32849d6bf66462d1f511714a00f24519d7b7079
2015-11-17 00:15:21 +00:00
drh
a0b7ffb184
Import the LSM code from SQLite4 for use in an experimental virtual table.
...
NB: This is a speculative experiment and could easily result in a dead-end
branch.
FossilOrigin-Name: 3d930501a2acb7f20932cfeb4e3fe308b4569cd6
2015-11-16 16:00:22 +00:00