Commit Graph

16728 Commits

Author SHA1 Message Date
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