Commit Graph

14990 Commits

Author SHA1 Message Date
drh
29fbdb731b Disable two PRAGMA cache_spill tests when MEMORY_MANAGEMENT is enabled.
FossilOrigin-Name: ebda77aad4d964593606ded2fdb19259ef9ebb8e
2015-11-13 12:32:01 +00:00
drh
061d35c145 Change the error messages so that they begin can be grepped using '^!' instead
of '^ '.  There are far too many extraneous outputs that being with a space.

FossilOrigin-Name: 367ec0db49607559960d58891771113c205fd951
2015-11-13 00:03:14 +00:00
drh
5e3cefe3d0 Update the SQLLOG logic so that to builds in accordance with the instructions
in the header comment.

FossilOrigin-Name: ee6f2feec7d777a969ddba6dc00fb571d64e57f8
2015-11-12 23:48:08 +00:00
drh
8d4482da96 Always parse the schema *before* running "PRAGMA cache_size", not after.
FossilOrigin-Name: 12e7d9ec023db4dd837f76006c87defc5a3e9388
2015-11-12 22:15:18 +00:00
drh
d66b2e02ee Add a space before each line of error output in the test scripts so that all
errors can be conveniently located in logs by doing "grep '^ '".

FossilOrigin-Name: 9d532fb50d310df629ea65193f21dc9b3594ff5f
2015-11-12 21:42:40 +00:00
dan
d83f7ca114 Add support for the SQLITE_SQLLOG_CONDITIONAL environment variable to the logging code in test_sqllog.c. When defined, logging is only performed if the "<database>-sqllog" file is present in the file system when the main database is opened.
FossilOrigin-Name: cab8126be9f63dd596719b12704ba77c128282bc
2015-11-12 20:12:51 +00:00
drh
c2e0dd4ddd Enhance the "PRAGMA cache_spill" statement to accept an integer argument which
is the threshold at which spilling will begin.

FossilOrigin-Name: f79d264db24a470d1a4571e15a99cd3d68b5166c
2015-11-12 16:44:40 +00:00
drh
4f9c8ec62d Test cases. Minor problems fixed. All appears to work now.
FossilOrigin-Name: 9a431362dccbc9b8f93375f30a3b8955903cca79
2015-11-12 15:47:48 +00:00
drh
644f4c1bbb Fix a #define in parse.y that disabled unused code in the generated parser.
FossilOrigin-Name: f84e3085c87cfffe4aba0eb4c4a3298b4027db83
2015-11-12 15:04:05 +00:00
drh
9b0cf34f81 First attempt at enhancing the "PRAGMA cache_spill" statement to accept a
cache threashold size.

FossilOrigin-Name: 549d42be0dac87dc04c3eeccfdc60615c3a6ad3f
2015-11-12 14:57:19 +00:00
mistachkin
24e9895f81 Fix missing word in a documentation comment. No changes to code.
FossilOrigin-Name: ed24d302657e8495bef7f5ed698c7cca12717be9
2015-11-11 18:43:49 +00:00
drh
3d38cec99a Improvements to the SQLITE_CONFIG_PAGECACHE documentation. Enhance the
command-line shell to be able to take advantage of the full range of
SQLITE_CONFIG_PAGECACHE capabilities, such as setting pMem==NULL and N<0.

FossilOrigin-Name: 2518d5c971c4b32d9227b3bb7259162e3e27b00b
2015-11-11 15:28:52 +00:00
drh
0c4105ee19 Improved output formatting for "PRAGMA parser_trace=ON;".
FossilOrigin-Name: e43e1171fd7837a08069dc25df4eac14db1c2afe
2015-11-10 14:51:22 +00:00
drh
97e58a2feb Make the output of "PRAGMA parser_trace" go to stdout instead of stderr.
FossilOrigin-Name: 1e4849911e3eed65eabee18fdee63bab4faae57a
2015-11-10 14:27:17 +00:00
drh
3334d08989 Save a few bytes in the parser by using "int" instead of "u8" or "u16" for
all small integer types.

FossilOrigin-Name: 5dcd212bf6489f4698a0ed0f21497c78379f7c0f
2015-11-10 13:45:21 +00:00
drh
634b242ebe Change all parsers to use the standard "lempar.c" template in the tool/
folder and remove the customized lempar.c from src/, plus other compiler
performance and space enhancements.

FossilOrigin-Name: 0e7fb24ad3c010884763a97e6ae7a3fd39d0e5a9
2015-11-10 12:41:03 +00:00
drh
43509768e1 Fix harmless compiler warnings in FTS5.
FossilOrigin-Name: 09752e51a18ac1b4c9642965e6ee1b6a32de00df
2015-11-10 12:31:25 +00:00
drh
54bb56d82a Performance enhancement to the tokenizer.
FossilOrigin-Name: 6ea2df86c95c226052f528424e9bee367a2e765a
2015-11-10 03:30:51 +00:00
drh
07b09a9420 Remove an unused non-terminal from the grammar.
FossilOrigin-Name: 3c37c522883ea9f2eec4f0ba5c5141912c003425
2015-11-10 00:02:49 +00:00
drh
822a62f84d Fix a comment typo in the lempar.c template that was missed by the prior
check-in.

FossilOrigin-Name: c4a7e93fca622fd11a6e16161fbd2f39c2575f00
2015-11-09 19:35:18 +00:00
drh
82415f2d8d Change the parser to use the standard "lempar.c" template over in the tool/
folder rather than the customized "lempar.c" found in src/.

FossilOrigin-Name: 0a72991f4e54548f6c3268c5a9cac1c8d6437d26
2015-11-09 19:33:42 +00:00
drh
a441404f92 Avoid recursion in the yy_find_shift_action() routine of the Lemon-generated
parser, so that routine can be inlined, for a size reduction and performance
increase.

FossilOrigin-Name: 0557a179f932296cc1fd5217f9a0d2f74e34ce1d
2015-11-09 15:06:26 +00:00
drh
3781f01780 Size reduction and performance improvement in the stack-popping logic of
the Lemon-generated parser.

FossilOrigin-Name: 9748c48a4fbd5c06208bbf80e7bfcb159ec026d9
2015-11-09 14:11:37 +00:00
drh
7450494c50 Fix incorrect WHERE clause in sqldiff, as reported on the mailing list
by Youcef Hilem.

FossilOrigin-Name: e0ed4c3e376248dfbf903e4b5845f910824fa6c6
2015-11-09 12:47:04 +00:00
drh
f10b1f78ee Check in the cg_anno.tcl and run-speed-test.sh scripts, as an historical
record.

FossilOrigin-Name: 836418d3b7cfcd5ec375c4e08c09bd6b78646307
2015-11-09 12:44:19 +00:00
drh
d797035ac7 Avoid unnecessary function prologues in the sqlite3VdbeAddOp3() routine.
FossilOrigin-Name: 7c6a19ba9b0bdb1cc0b9a9796b7c1c114944d927
2015-11-09 12:33:39 +00:00
drh
0739e45bcd Small size reduction and performance increase in the parser.
FossilOrigin-Name: d62cd757a69cc49c2d309e27c948610b5868632f
2015-11-09 02:08:09 +00:00
drh
edd2260b40 Enhance the sqldiff utility to deal gracefully with ALTER TABLE ADD COLUMN.
FossilOrigin-Name: 7ea036ac37397ed8f6a0fa9f5bfc0994364b53dc
2015-11-07 18:32:17 +00:00
dan
cc03305473 Fix a bug in CTE handling discovered by LibFuzzer that can cause an infinite loop in the query planner.
FossilOrigin-Name: 088009efdd56160bb4eee0fbd829a529b141274e
2015-11-07 18:07:15 +00:00
dan
fe88fbfc82 Add test cases for WITH clauses.
FossilOrigin-Name: e7e65c7559ed43e7065adc2ec1bd242bf187b7c3
2015-11-07 17:51:39 +00:00
drh
6e7722669e Proposed fix for an infinite loop bug in the WITH clause semantic analysis
logic.

FossilOrigin-Name: 028475cb17a4b50baf0e9aba9bd3403d0a5d03b0
2015-11-07 17:48:21 +00:00
drh
2476a6f2cb Enhance TreeView to show WITH clauses. Add an assert to detect the
infinite loop behavior when certain kinds of errors occur on a nested
WITH clause.

FossilOrigin-Name: 2040d88e877bdb69de125a047cefb4a1558e89e8
2015-11-07 15:19:59 +00:00
drh
d6b7946c32 The OPFLAG_SEEKEQ optimization is only applicable to equality comparisons
against an index, not against a rowid table.

FossilOrigin-Name: 0f5b147d1fe83c34d0fbeacc7422be94d8441bc1
2015-11-07 01:19:00 +00:00
drh
3901692ede Fix a harmless sanitizer warning in the ieee754 extension.
FossilOrigin-Name: dd9a26ecdeaef7b0b9cbf4ff70448ab13a276b4e
2015-11-07 00:51:15 +00:00
drh
3adf8783b0 Avoid an unnecessary key comparison when doing an indexed lookup against an
equality constraint.

FossilOrigin-Name: d741e1ccdce96e6142e294fbdd20a0282296dcea
2015-11-06 20:22:25 +00:00
drh
f83075201f Work around a sign-extension bug in the optimizer on the HP C compiler that
comes with HP/UX.

FossilOrigin-Name: 46c36b1543d7a8156eaa866c67080526153fb10d
2015-11-06 20:13:48 +00:00
drh
51675f24f3 Test changes: Omit numindex1.test from valgrind, since valgrind uses a
none-standard floating-point processor which gives inconsistent answers.
Run one releasetest.tcl module using LONGDOUBLE_TYPE=double.

FossilOrigin-Name: d421efbf9a5688f5a20b6dfe3aa216299c7b9c86
2015-11-06 20:04:08 +00:00
drh
c750ee999e Enforce consistent comparison results between integer and floating point
values.  Fix for ticket [38a97a87a6e4e83].

FossilOrigin-Name: 849e686da2d20fd7f938427475fc792384d2aa7c
2015-11-06 19:53:09 +00:00
drh
9ced20d892 Merge the fixes and tests for the ieee754 extension.
FossilOrigin-Name: 7a9988d38cd7ab3df79eed97631ff23d5928b4ad
2015-11-06 17:59:33 +00:00
drh
c8bb430dfe A proposed patch for working around a bug in the optimizer for the HP compiler
found on HP/UX Itanium.

FossilOrigin-Name: 8a171548e4f665f03d00af6dcb46669a4a78fad5
2015-11-06 17:28:00 +00:00
drh
ff621c6894 Test cases for the ieee754 extension.
FossilOrigin-Name: 840cbda88675b6012dae2423252bf42d0d563874
2015-11-06 17:01:20 +00:00
drh
2ab410aa1e A different approach to handling integer/float comparisons. This seems to
work better on systems where "long double" and "double" are the same type,
but still needs refinement and testing.

FossilOrigin-Name: a3f7614b2095fbc1eca54801b2da88f85f294ec5
2015-11-06 14:59:07 +00:00
dan
dbbda39453 Have fts5 load its configuration from the xConnect() method is invoked. This ensures that the very first query run uses the correct value of the 'rank' option.
FossilOrigin-Name: 33e6606f5e497e81119ec491cf2370f60bddafc0
2015-11-06 12:50:57 +00:00
drh
aa8ff2ff6a More test cases for indexes on large numeric values.
FossilOrigin-Name: c220741a62808c64d42c6161152ab06af74cb48c
2015-11-06 04:14:38 +00:00
drh
06d7b00b6a Some simple test cases from the mailing list.
FossilOrigin-Name: 1d642b73f9e93a1ba291bf265b3d17e46551d70e
2015-11-06 03:37:02 +00:00
drh
8b8446fc21 Increase the precision of integer vs. floating-point comparisons.
Candidate fix for ticket [38a97a87a6e4e8].

FossilOrigin-Name: cfcaa0ff276b1936418abe72c7e0c99d90d37885
2015-11-06 01:04:41 +00:00
drh
b1d607de25 Improvements and simplifications to the equality seek logic. Tests are
adjusted so that they all pass now.

FossilOrigin-Name: 997ce6c90b454c03cc2ef6934752ee8dd2e520e3
2015-11-05 22:30:54 +00:00
mistachkin
9030d0ac28 Fix typo in help information for an FTS5 script.
FossilOrigin-Name: 777ae8007f6ff303b120b25f2dc37d7ef6b6a4f8
2015-11-05 21:49:19 +00:00
drh
70528d7868 The top of an index equality loop normally starts with OP_SeekGE and OP_IdxGT.
This check-in adds a flag to OP_SeekGE such that it fails immediately if
the key is not equal, then jumps over the OP_IdxGT, saving a call to the key
comparison functions.  Consider this check-in a proof-of-concept.  It needs 
improvement before going on trunk.  Some tests fail, but only because they
new use fewer key comparisons than expected (which is a good thing!).

FossilOrigin-Name: 32e31b9bc8664afcd326a1ff3892d86dc5202474
2015-11-05 20:25:09 +00:00
dan
d82211db56 Add the 'hashsize' configuration option to fts5, for configuring the amount of memory allocated to the in-memory hash table while writing.
FossilOrigin-Name: 445480095e6877cce8220b1c095f334bbb04c1c3
2015-11-05 18:09:16 +00:00
drh
780b02de4a Remove a #pragma used to work around an issues with MSVC 2012 that has been
overcome but subsequent changes.

FossilOrigin-Name: 8303e4cfed715464c710668c2bdc58a8e3d4cd9f
2015-11-05 11:47:48 +00:00
mistachkin
63225522f9 Remove #pragma that was used to work around an obsolete issue with MSVC 2012.
FossilOrigin-Name: b9b22fae69000ca506656f9cf847e713c6304b75
2015-11-05 03:26:36 +00:00
drh
8dd1c25388 Performance improvements in the getAndInitPage() routine of btree.c.
FossilOrigin-Name: 2aa50f6f2029e3c91a4cb91224df8ec1194f215e
2015-11-04 22:31:02 +00:00
drh
9584f58cc2 Rename the sqlite3PagerAcquire() function to sqlite3PagerGet(). The former
macro called sqlite3PagerGet() has been removed.

FossilOrigin-Name: 708253be34084b89987efe955c34557516171a3a
2015-11-04 20:22:37 +00:00
drh
71258abf0d In releasetest.tcl, run larger test first if --jobs is greater than 1. Run
smaller tests cases first if --jobs is 1.

FossilOrigin-Name: 3fece5d02a8790701d8f0af18db4b4db33986369
2015-11-04 16:34:58 +00:00
drh
85979cd818 Exclude cffault.test and symlink.test from the (incompatible) inmemory_journal
permutation.

FossilOrigin-Name: 4f16e9686d827311d069ac5856771db23bd610ff
2015-11-04 13:03:36 +00:00
drh
25b0c4094f Increase the fuzzcheck timeout when running valgrind.
FossilOrigin-Name: a5816877bdc7fae69ed83d1fc95c29bf390eb641
2015-11-03 23:39:47 +00:00
mistachkin
e3b63599a3 In 'e_uri.test', make sure all created test database files get deleted.
FossilOrigin-Name: 40c4f4a65ef3ebda96e0de8bd791ce5ccb8d3ef5
2015-11-03 19:13:57 +00:00
drh
7f8a93d72c In the releasetest.tcl script, add the --progress option to cause the start
of each subprocess to be shown.  Otherwise, revert to the old-style display.
Improvements to the handling of the --buildonly option.

FossilOrigin-Name: d969792f34c484bd055c933b1c2c5a99eb88b61b
2015-11-03 15:39:29 +00:00
drh
4380ff8887 In the releasetest.tcl script, show the --jobs object on the command-line
summary.  Report the time of each "starting:" event.  Do not show errors
on a --dryrun.

FossilOrigin-Name: b75107778f67a4c4f33b1c003af87ca57e98ae4b
2015-11-03 15:16:21 +00:00
drh
b3ebc805ed Update the releasetest.tcl script so that it can run multiple tests in
parallel in separate processes.

FossilOrigin-Name: e3de82919d6f7ef5c2c5ab9a932a480604856950
2015-11-03 14:49:35 +00:00
mistachkin
7d3bfa2713 Further enhancement and a bit of cleanup.
FossilOrigin-Name: 0d8b59783e0a84bc59661b3469e1ca1b1fa90c71
2015-11-03 06:23:33 +00:00
mistachkin
98fea32c83 Use the native name for the MSVC makefile as well.
FossilOrigin-Name: e457c615647a5bacb32d7d1d9ddfcfb0c7d56e82
2015-11-03 02:47:11 +00:00
mistachkin
da9da5624a Attempt to centralize and simplify the MSVC handling.
FossilOrigin-Name: 4ae96d6dde7fc0a913d7719ec498686f9a1e3b98
2015-11-02 23:29:58 +00:00
drh
3e6d22ad4d Fix the backcompat.test module so that it does not try to compare against itself
on windows.

FossilOrigin-Name: f625bce8b7c2884a092c70675a9c6ce15c29937e
2015-11-02 23:21:17 +00:00
mistachkin
59189433ba Get things working better on Windows with MSVC.
FossilOrigin-Name: 22cc3e6c8e7f7eed854f8a50138ccb9c79bb7a23
2015-11-02 21:05:56 +00:00
dan
d08a63ab62 Fix the --dryrun option on the releasetest.tcl script.
FossilOrigin-Name: e565e0261501e4c21e4ad3d12f9f5b24c761bf96
2015-11-02 20:52:20 +00:00
dan
e9e1505b3c Fix releasetest.tcl so that it does not choke if a test fails so badly that there is no log file. Add the --jobs switch to the usage message.
FossilOrigin-Name: 20e96f521fce12ffeb6be788e57bce88f287cff5
2015-11-02 20:28:48 +00:00
dan
9525a86ba1 Fix releasetest.tcl so that output lines are less than 80 characters wide.
FossilOrigin-Name: aef177fef049f9ffb0d138b947326dc0186b1f4f
2015-11-02 20:24:29 +00:00
dan
a7f6597400 Add the "--jobs N" option to the releasetest.tcl script to allow tests to be run in parallel by N processes. N defaults to 1.
FossilOrigin-Name: 3d29f912cb7c6ee3e4903b1b14dd7ae82e4d02b1
2015-11-02 18:32:00 +00:00
dan
f0db464b93 On unix, if a file is opened via a symlink, create, read and write journal and wal files based on the name of the actual db file, not the symlink.
FossilOrigin-Name: 6d5ce3ede4c7038c19a77268a5a7b9d5650933c2
2015-11-02 15:08:56 +00:00
drh
153110a7da If a table-constraint PRIMARY KEY lists a single column in single-quotes and
that column has type INTEGER, then make that column an integer primary key,
for historical compatibility.  Fix for ticket [ac661962a2aeab3c331].

FossilOrigin-Name: db319a035feeb6f8fcd04f90fb10cd4b06e68184
2015-11-01 21:19:13 +00:00
dan
245fdc60d6 On unix, if a file is opened via a symlink, create, read and write journal and wal files based on the name of the actual db file, not the symlink.
FossilOrigin-Name: c7c8105099c0412ac6c605f98987092c10bde57c
2015-10-31 17:58:33 +00:00
dan
6a75c8ad94 Add mutex operations to test code in test3.c to avoid triggering assert() failures in certain configurations.
FossilOrigin-Name: 9f19420b0a79dff65fc3a9d548f4b3fc4955f9f9
2015-10-30 20:54:25 +00:00
drh
b457764d01 Increase the version number to 3.10.0, due to the addition of the
sqlite3_db_cacheflush() interface.

FossilOrigin-Name: 7565b046ff939e8310631397a4526fbd98b99aaf
2015-10-30 16:36:42 +00:00
dan
3bfab7c6d6 Add new API function sqlite3_db_cacheflush().
FossilOrigin-Name: ad80d3073388c59f67171720efc6ef766e19886f
2015-10-30 16:14:03 +00:00
dan
5596eb3020 Return immediately if sqlite3PagerWrite() is called when the pager is in PAGER_ERROR state.
FossilOrigin-Name: a6695b008487aeb7badf572fa32bfcba3c9fab03
2015-10-30 14:28:16 +00:00
drh
e44b835e63 Add the --enable-editline option to various autoconf scripts.
FossilOrigin-Name: 866f0277781dedf0db287ec5902a138406a172e3
2015-10-30 14:25:57 +00:00
dan
e8e6657fa7 Test that calling sqlite3_db_cacheflush() does not interfere with savepoints.
FossilOrigin-Name: 0e09e4a26938cfe0f573449526a8f0f527cef921
2015-10-30 09:13:29 +00:00
dan
9fb13abc6e Do not attempt to flush the pages of an in-memory database to disk if sqlite3_db_cacheflush() is called.
FossilOrigin-Name: 9b79a390440a23542a370b591e567b31ebb35c42
2015-10-29 21:11:22 +00:00
dan
4a6beac28b Add a test case that calls sqlite3_db_cacheflush() on an in-memory database.
FossilOrigin-Name: f0cdfb547b0976e753e94958f29cb294edf31bed
2015-10-29 20:57:06 +00:00
dan
dbf6773e88 Avoid automatically rolling back the transaction if an SQLITE_IOERR or SQLITE_FULL error occurs within sqlite3_db_cacheflush().
FossilOrigin-Name: 370b5d520c6523526988d0db5299f1bd09567782
2015-10-29 18:16:40 +00:00
drh
c56fac7483 Fix uses of ctype functions (ex: isspace()) on signed characters in test
programs and in some obscure extensions.  No changes to the core.

FossilOrigin-Name: 34eb6911afee09e779318b79baf953f616200128
2015-10-29 13:48:15 +00:00
mistachkin
de4148e304 Enhance comments in the MSVC batch build tool.
FossilOrigin-Name: 2964ce25864e8aec86272af741caf49c23c86590
2015-10-29 01:11:39 +00:00
drh
1167d32716 Make the internal sqlite3PExpr() interface responsive to the
TKFLG_DONTFOLD flag on the operator parameter.

FossilOrigin-Name: b10ab59fb8a696d11a269f3904e799c687246aea
2015-10-28 20:01:45 +00:00
dan
6fa255fd5c Add experimental API sqlite3_db_cacheflush().
FossilOrigin-Name: 65b86dc1fa4a57cc3cde86a820d9f848aa288a15
2015-10-28 19:46:57 +00:00
drh
9109b7f8e1 Factor out adding NOT expression nodes in the parser into a subroutine.
FossilOrigin-Name: 001854181640bd9b088f2bc16083d84808c3da18
2015-10-28 16:05:10 +00:00
dan
36c33aa633 Have contentless and external content fts5 tables ignore "OR REPLACE" conflict handling.
FossilOrigin-Name: a85c2a4758c27e8d5d0395751eb3cfd9985ce696
2015-10-27 20:04:53 +00:00
dan
24b8457911 Fix problems with prefix queries in fts5.
FossilOrigin-Name: 3b5758c647530bd5c2e68d0ee3e9f58a96347ca4
2015-10-27 17:48:57 +00:00
drh
1bbbd85bd2 Provide hints to the storage engine using the sqlite3BtreeCursorHint()
interface when compiling with SQLITE_ENABLE_CURSOR_HINTS.

FossilOrigin-Name: 45d3539e152a44629639723f18ce70d9ef01f31a
2015-10-27 13:35:14 +00:00
drh
f7854c7329 Split out sqlite3BtreeCursorHintFlags() from sqlite3BtreeCursorHint()
the interface for improved performance.

FossilOrigin-Name: b3ec9a0d62c5543e91d4be2cd634ec4a3d6dca11
2015-10-27 13:24:37 +00:00
dan
2853c688ad Add new extended error code SQLITE_IOERR_AUTH.
FossilOrigin-Name: b4e70dd08e79decaa09f7b99e2dc7e2df92f26ee
2015-10-26 20:39:56 +00:00
dan
c5dc3dcd6e Merge the BTREE_FORDELETE enhancement with this branch.
FossilOrigin-Name: 20da0849ce910ceb445954dfc5f985acf9a02695
2015-10-26 20:11:24 +00:00
drh
0691191d26 Merge in all trunk changes prior to the BTREE_FORDELETE enhancement.
FossilOrigin-Name: 53d5a4add6b60722ad77daf98b6b8983b081e16a
2015-10-26 18:51:09 +00:00
drh
ad61c46409 Capture BTREE_FORDELETE test cases that were mistakenly omitted from the
previous merge.

FossilOrigin-Name: de6972515f65c5cf5da7cfdf876a05718299e9b8
2015-10-26 18:01:36 +00:00
drh
3d541a5b8c Provide the BTREE_FORDELETE flag to sqlite3BtreeCursor() if the cursor will
be used only for deletions and seeking.

FossilOrigin-Name: 871b1c78bcbea1cb03d482f2f424c4e012633695
2015-10-26 17:50:54 +00:00
dan
433d5aaed1 Fix an uninitialized variable problem in the test code added by the previous commit.
FossilOrigin-Name: 7849662ef94fa48fe53177db5623f46b3cb401e8
2015-10-26 16:34:13 +00:00
dan
6b513640c0 Test that the binary record "0x01 0x00" is interpreted by OP_Column as a vector of NULL (or default) values.
FossilOrigin-Name: 5bdc3c82bd10f924c12568eb0fa7a07393fc864f
2015-10-26 16:31:18 +00:00
drh
4dd83a22f2 Fix a C99-ism and a harmless compiler warning.
FossilOrigin-Name: 138783b553602a055b3efdeac5947cf5ccd76b5d
2015-10-26 14:54:32 +00:00
drh
46e6ea0282 When compiling with SQLITE_HAS_CODEC, honor the hexkey= query parameter on
URI pathnames in sqlite3_open_v2().

FossilOrigin-Name: e0ce3fc089c2523b8b718b4a4f9ab8c4d0432fc7
2015-10-26 14:41:35 +00:00
drh
56d90be183 Remove an unreachable branch in malloc.c.
FossilOrigin-Name: a36b7fe92372a13ff0b6e08f1704496045c6f62a
2015-10-26 12:55:56 +00:00
dan
fb785b2c2b When creating an automatic-index on a sub-query, add a unique integer to the end of each index key to ensure the entire key is unique. Fix for [8a2adec1].
FossilOrigin-Name: bfea226d0d226a046a8bfb7a7a6288850d69bd26
2015-10-24 20:31:22 +00:00
dan
2b4e95226c Remove an unused #define from whereInt.h. Add comments describing the new sqlite3BtreeCursor() flags.
FossilOrigin-Name: 4c0ba8be43bb7c7100456bd8cd6921c164be31e1
2015-10-23 11:50:23 +00:00
dan
fd261ec67e Modifications to pass a flag to internal routine sqlite3BtreeCursor() when a cursor that is used solely for deleting b-tree entries, or for obtaining the components of keys to delete from other b-trees, is opened.
FossilOrigin-Name: cdc92919e600007cae5eb61223684f48a65babc0
2015-10-22 20:54:33 +00:00
mistachkin
7ef855f156 Alternate compiler warning fix for sqlite3StatusHighwater.
FossilOrigin-Name: 4315d20200d578c9252dcb26e60739063a8eff1d
2015-10-22 18:06:40 +00:00
mistachkin
16158eeb49 Fix harmless compiler warnings in FTS5.
FossilOrigin-Name: aa4e01ea1af327d1f8398ebea1c5bacc46698c3d
2015-10-21 22:08:36 +00:00
mistachkin
1dfaa5c4b2 Fix compilation of 'testfixture' with MSVC when the FTS5 and JSON1 extensions are enabled.
FossilOrigin-Name: e31aa97a9298e49507256036cfb8fa7517a48461
2015-10-21 22:07:25 +00:00
dan
99b25309d0 Remove some branches made unreachable by recent changes from fts5.
FossilOrigin-Name: ae350bfbfd59f912c469a51bf7d1409f3c8d958a
2015-10-21 20:56:27 +00:00
dan
f2c9995dbe Minor optimization for fts5 queries.
FossilOrigin-Name: 363b36d50b6f3e3d3e79c538be1167b071a5a710
2015-10-21 20:07:08 +00:00
dan
5c22e82a17 Add extra debugging function to test_rbu.c. Enhance the documentation for sqlite3rbu_db() to define the validity of the returned database handles.
FossilOrigin-Name: b9c4aa521156d8ca09151a82a7e80aa8d1d7a313
2015-10-21 08:26:01 +00:00
mistachkin
6d7734c27d Fix harmless compiler warnings in FTS5.
FossilOrigin-Name: 0a903ec26bfbbe9bfd18bc34934e689ffdb01ce5
2015-10-20 23:27:14 +00:00
dan
219f4d48a2 More optimizations for fts5 prefix queries.
FossilOrigin-Name: b8fb263ed1b36d085437131795505e53af103d26
2015-10-20 21:05:53 +00:00
dan
9cc4ae6f2a Fix #line directives added to generated file fts5.c.
FossilOrigin-Name: 1f5f5804cd394a81b1c0712ce6d1052f228d0a40
2015-10-20 19:55:35 +00:00
dan
3f9bfa740f Initialize variables in the fts5 integrity-check code to avoid compiler warnings.
FossilOrigin-Name: e979e2cccac257ad554803e6a1103558b0f159d8
2015-10-20 15:49:02 +00:00
dan
8789fbb2bd Another optimization for fts5 prefix (and other) queries.
FossilOrigin-Name: 60a8bde055a960c5b8cb4e231802c75617c942d8
2015-10-19 20:49:10 +00:00
dan
5e5b454cd8 Another tweak to improve performance of fts5 prefix queries.
FossilOrigin-Name: 69be427c864dc3de804ca3c5f1c6addcd33cd188
2015-10-19 17:43:24 +00:00
dan
3c060c2aef Fix a problem in the fts5txt2db.tcl script causing it to fail when creating tables with more than 8 columns.
FossilOrigin-Name: 68ee426a6432ac63655909ff70cb22bde33cf28c
2015-10-19 15:59:08 +00:00
dan
0206920e27 Add tests to cover new branches added to the fts5 code by the previous commit.
FossilOrigin-Name: cf618334a8a05a067e844236e4d461b2e5706da6
2015-10-17 20:34:49 +00:00
dan
05903e6a87 Handle equality and range constraints on the "term" column of fts5vocab tables. Also have the same module report columns using names instead of indexes.
FossilOrigin-Name: 6020d96ab47a0bebe41f691a3f44fd55d8b2d2b7
2015-10-17 19:49:01 +00:00
drh
b0df963465 Fix a comment in expr.c and add a CORRUPT_DB to an assert() in btree.c.
FossilOrigin-Name: 0df371d1a51c2028aefa4c704707773750317689
2015-10-16 23:55:08 +00:00
drh
0030aaad67 Merge recent enhancements from trunk. Version now 3.9.1.
FossilOrigin-Name: 26fa091d68e89a0b6af61ba706d23a9f37e8025a
2015-10-16 20:53:57 +00:00
mistachkin
f170ea44d4 Enhancements to the MSVC makefile.
FossilOrigin-Name: 39e8a5d93fa370afb03223bf0c20ea0f3448b9fc
2015-10-16 20:13:57 +00:00
drh
04ce31fafe Merge the 3.9.1 changes into trunk. (This only updates the version number
and configure script since all the other changes in 3.9.1 were cherrypicked
from trunk.)

FossilOrigin-Name: eb2317429fc3fc81ccd92e6f84f873585829259d
2015-10-16 20:12:12 +00:00
drh
a649776664 Version 3.9.1
FossilOrigin-Name: 767c1727fec4ce11b83f25b3f1bfcfe68a2c8b02
2015-10-16 17:31:12 +00:00
drh
0b086403b4 Cherrypick the json form-feed fix, and other #ifdef and build script changes
to address minor issues that came to light after the 3.9.0 release.  Update
the version number to 3.9.0.  No logic changes except for the form-feed
bug-fix in json1 (ticket [57eec374ae1d0a1d4a]).

FossilOrigin-Name: 746fcd2fd412ddc27071827fb20eb6df0741dfb1
2015-10-16 15:56:27 +00:00
drh
1cfc44392c Fix the fuzzershell utility program so that it compiles with the
amalgamation that includes JSON1 support.

FossilOrigin-Name: d6fc616e4c8a024f71a044e61f0493dea7d9c812
2015-10-16 15:42:50 +00:00
drh
49472655d4 Fix the JSON1 extension so that it does not depend on isdigit() and
strtod() from the standard library when compiled into SQLite as part of the
amalgamation.

FossilOrigin-Name: bc9a9a60c31ebf9b11ac89ae5f99a3b66d6efc67
2015-10-16 15:35:39 +00:00
drh
b9e8f59b63 Form-feed is not valid whitespace for json.
Fix for ticket [57eec374ae1d0a1d]

FossilOrigin-Name: 28957d635961c525f735a52b8ffe3e69ccf31382
2015-10-16 15:16:06 +00:00
drh
be37c12423 Have the sqlite3VdbeSerialType() function go ahead and compute the serial
length as well, since it is always needed.  This avoids unnecessary calls
to sqlite3VdbeSerialTypeLen().

FossilOrigin-Name: 2ad72be12477b0e8e33e56a9a17e29abbd283ec1
2015-10-16 14:54:17 +00:00
drh
faf3727904 Use a lookup table to compute the content length for serial types less
than 128, for a 1.2% performance improvement.

FossilOrigin-Name: 3395724814099d28829ef6875ca1ba77d6fe7ffa
2015-10-16 14:23:42 +00:00
drh
95fa606616 Simplify the OP_Column logic slightly. One very small performance
improvement added.

FossilOrigin-Name: 0114b45dc286c13db0d640f0486d8a5bef9ff078
2015-10-16 13:50:08 +00:00
drh
848a3326f7 OP_Column optimization: Do not check for an oversize row header unless the
row header size is larger than the content available on the local page.

FossilOrigin-Name: 8125b74cb46c372b9a319f6270f1c396767accd7
2015-10-16 12:53:47 +00:00
drh
c24658b5d7 Improved header comment on the tool/vdbe_profile.tcl script. No changes to code.
FossilOrigin-Name: b17ad8fc046ebc9529d1c146437a383e72217b01
2015-10-16 12:39:52 +00:00
drh
c6ce388301 Performance optimization for the OP_Column opcode.
FossilOrigin-Name: 076be5474df628bbbfd2b645adba30e1e093acd0
2015-10-15 21:30:24 +00:00
drh
ce78bc6e7e Enhance the use of the column cache for UPDATE statements, making them
more efficient for the case where a column is modified to be an expression
of other unmodified columns.

FossilOrigin-Name: 871e091df651b2275a672c35ff938bd4b6db0d7f
2015-10-15 19:21:51 +00:00
drh
fed7ac6f04 Add the OP_IntCopy opcode - an optimized version of OP_SCopy that only works
for integer values.

FossilOrigin-Name: 3a2f73a4924860fde8ee41ad646e7a02d29ad9d5
2015-10-15 18:04:59 +00:00
drh
9eef8c6934 Optimization to the out2Prerelease() helper routine in the VDBE engine.
FossilOrigin-Name: 79298fe8c42f64b6a6110a70b84033873ac0630d
2015-10-15 17:31:41 +00:00
drh
59a052359d Remove a superfluous conditional from the memory allocation initialization.
FossilOrigin-Name: 9ccf8f8d35723f2a9b59010b6d5f37a14164a188
2015-10-15 17:21:35 +00:00
drh
039ca6ab59 Performance optimizations to the sqlite3MallocSize() by requiring the
argument to always be non-NULL.

FossilOrigin-Name: cb65989b0710c65e4df69063b346344fdb1d12c7
2015-10-15 16:20:57 +00:00
drh
b02392e6f0 Change sqlite3StatusSet() into sqlite3StatusHighwater() so that only the
highwater mark is recorded.  This gives a small size reduction and
performance improvement.

FossilOrigin-Name: 6422d223dd10018703c6b083d29a3c35c837fc97
2015-10-15 15:28:56 +00:00
drh
9676c48199 Make sure sqlite.h is not #included by itself.
FossilOrigin-Name: a61880c223c2229ecc3b4da7e5647eca17f7ddf5
2015-10-15 12:06:11 +00:00
mistachkin
8873996b7b In the MSVC makefile, add LIBTCLPATH variable to make it easier to run tests when the Tcl library is not already present in the PATH.
FossilOrigin-Name: 54127602b9a555f73f5e446b91e460386cb8fb17
2015-10-14 23:04:08 +00:00
mistachkin
460cd9ccfd In the MSVC makefile, make sure LDFLAGS is used for the tool executables as well.
FossilOrigin-Name: 0a17ee49c6895256fefd13425b790414935efb9d
2015-10-14 22:46:37 +00:00
dan
5f93ccd7fc Tests and minor fixes to improve coverage of FTS5 code.
FossilOrigin-Name: f4de6d450e143cb1dd5447800d4b178e3db114c8
2015-10-14 21:08:48 +00:00
mistachkin
cdabd7bd50 Fix harmless compiler warnings.
FossilOrigin-Name: 1c46c194a2da24fe613d77b5a8d727cc2fc9faa4
2015-10-14 20:34:57 +00:00
drh
99f4647ef5 Merge in all the 3.9.0 updates from trunk.
FossilOrigin-Name: 29444149342fc6b1ea8cd34c2c8e1fcb06eaa7ed
2015-10-14 20:09:54 +00:00
drh
fdefc36792 Update makefiles to remove all uses of "awk" - to make building SQLite easier
on Windows systems.  The only requirements now are tclsh, a C compiler, and
common file utilities.

FossilOrigin-Name: 4bd0d43db7c1877f2d8a8d2f2a48f24a10f0c3b8
2015-10-14 20:03:00 +00:00
mistachkin
78e3f61f22 Enable cross-compiling the various tool EXEs with MSVC.
FossilOrigin-Name: 7d77233389c595237d5b3d244b8aeca1524290c0
2015-10-14 20:01:12 +00:00
drh
501b402c65 Fixes to the JSON1 extension and to its use by fuzzcheck to avoid problems
when building DLLs.

FossilOrigin-Name: 01d3ee7bbe4feeb82dcedecbe3c9058c807b18f6
2015-10-14 19:52:27 +00:00
drh
021643560b Fix fuzzcheck.c so that it assumes that JSON1 is already compiled in and
does not need to be initialized further.

FossilOrigin-Name: ec003958359d6b69b1b1a75be2a988796268e063
2015-10-14 19:44:42 +00:00