drh
8974331fc3
Demonstrate a much faster sqlite3GetToken() routine by using a lookup table
...
to map initial token characters into a character class. This check-in does
not work for EBCDIC. More optimization needed.
FossilOrigin-Name: 9115baa1919584dc8ca25bbff54d3b65748a9631
2016-02-08 02:30:50 +00:00
drh
cc5f8a46b9
Add a utility program that looks for assert(), NEVER(), ALWAYS(), and
...
testcase() macros that have side-effects, and reports errors when they are
found. Also fix a bug that this utility detected as it was being tested.
FossilOrigin-Name: b0b4624fc5d53bb0cc9fae7dad51984837d946ac
2016-02-06 22:32:06 +00:00
drh
f5818aa560
Make sure variable declarations occur at the beginning of blocks, even
...
with SQLITE_DEBUG enabled.
FossilOrigin-Name: 2f7778e64d93ef237e23ceac01ea9808df5cf2a1
2016-02-06 19:48:50 +00:00
pdr
bb3da060e3
Fix an assert() to have a test instead of a side effect
...
FossilOrigin-Name: a2952231ac7abe165ed070875728f752ae0be608
2016-02-06 14:14:43 +00:00
drh
575fad6500
Add the slightly faster sqlite3DbMallocRawNN(db,n) routine for the majority
...
cases where db is guaranteed to be not NULL.
FossilOrigin-Name: 0a802e96ab06e2643834b83671fa8353da1a348d
2016-02-05 13:38:36 +00:00
drh
98c7a12c00
OOM failures on sqlite3_errmsg16() in an app-defined function are no longer
...
benign.
FossilOrigin-Name: 9efb223f4ce8ccc00515f8f016f7c494c9ae5096
2016-02-05 04:50:27 +00:00
drh
17a936f84a
Minor simplification of schema error reporting.
...
FossilOrigin-Name: a8846aeed9992c6c9f1c8bd6e996a4cbe891751e
2016-02-05 02:50:11 +00:00
drh
b84e574c89
Further performance improvements that fall out of the mallocFailed changes.
...
FossilOrigin-Name: d94416ddca8f7ed727dd335d38155ea5945a86b7
2016-02-05 02:42:54 +00:00
drh
4a642b6060
Improvements to the way that OOM errors are processed.
...
FossilOrigin-Name: c3ef03478a5788c855b3aef385d43ae7f494f440
2016-02-05 01:55:27 +00:00
drh
e514f651d0
Temporarily back out the 0.5% performance improvement from
...
check-in [632071bac5ff32]. Need a more elaborate solution that works
with reentrant virtual tables and SQL functions.
FossilOrigin-Name: 42736fb0adc82a0fb692850ff3dd3f9b501cbf1f
2016-02-04 19:50:33 +00:00
drh
4df86af329
Remove unnecessary sets of db->mallocFailed.
...
FossilOrigin-Name: b787165b25a240fd5b4a5c7f73b395f30213a1d7
2016-02-04 11:48:00 +00:00
drh
6d258995e6
Refinements to synchronous logic:
...
(1) Use PAGER_SYNCHRONOUS_FULL rather than the corresponding magic number.
(2) Honor SQLITE_NO_SYNC on xDelete calls with sync
(3) Count xDelete syncs during testing
(4) Fix #ifs on SQLITE_EXTRA_DURABLE so that directory syncs on journal
unlink are off by default.
FossilOrigin-Name: e3157cb5ad0d22758e766a95fb1463a7810f7d7f
2016-02-04 09:48:12 +00:00
drh
fabe393da8
In the VDBE loop, only check for OOM errors at jumps rather than after every
...
opcode, for about a 0.5% performance increase.
FossilOrigin-Name: 632071bac5ff324a74cec9bdbba2deb60c0945e9
2016-02-03 22:14:38 +00:00
drh
19d720d3a7
Fix markup errors in comments used to generate the documentation - specifically
...
in the documentation on the OP_Seek opcode.
FossilOrigin-Name: ef252bc4b59d272460aaebdc0d4b8e347b0d25a8
2016-02-03 19:52:06 +00:00
drh
6841b1cb3d
Add "PRAGMA synchronous=EXTRA" which syncs the directory containing the
...
rollback journal when the rollback journal is deleted in order to commit a
transaction in DELETE mode.
FossilOrigin-Name: af92401826f5cf49e62c278f344ab75252a18da2
2016-02-03 19:20:15 +00:00
drh
1b32554b80
Enhance the internal sqlite3VdbeAddOpList() interface to automatically update
...
jump destinations. Use this feature to simplify the AUTOINCREMENT code
generator.
FossilOrigin-Name: ae8b9d2edf1b5aef6108e729754911db7682b6a3
2016-02-03 01:55:44 +00:00
drh
b8db549832
Enhance the comment on the sqlite3_index_constraint object to bring attention
...
to the fact than iColumn field can be negative for a rowid.
FossilOrigin-Name: d8b7b1996eefae7768bfcb82d4ff22c69392aa63
2016-02-02 02:04:21 +00:00
drh
1861afcdbb
Change the OP_SetCookie instruction to write the literal P3 value, not the
...
value in register P3.
FossilOrigin-Name: 6d7d4703ebf3754bec74123d5ba7e861a705f90f
2016-02-01 21:48:34 +00:00
drh
ed94af5eb9
Number VDBE opcodes starting with 0 instead of 1, as this obviates the
...
lower-bound test on "switch(opcode){...}", making the code smaller and faster.
FossilOrigin-Name: 4c9222f75bfac47f5422fff86b2d69a61933b3a2
2016-02-01 17:20:08 +00:00
dan
cddb6ba03b
Fix a problem causing the OR/covering-index optimization to be disabled if compile time parameter SQLITE_MAX_ATTACHED were set to greater than 30.
...
FossilOrigin-Name: a17712bf8d98dd485560f434a5350e6381cf1411
2016-02-01 13:58:56 +00:00
drh
b0c886510f
Minor simplification to the OP_AutoCommit opcode. Fix some code comments
...
related to transaction control.
FossilOrigin-Name: a9b6a0672f84dd205f9333951e4c2a608d027d71
2016-02-01 13:21:13 +00:00
drh
38bace84cd
Fix an assert() that might fail on a corrupt database.
...
FossilOrigin-Name: 22eaced7274764eaf7ab4b5fc52cc2fcfc285708
2016-02-01 00:21:08 +00:00
drh
784c1b93fb
Merge the implementation of OP_IdxRowid and OP_Seek so that OP_Seek no longer
...
requires the rowid register and a separate OP_IdxRowid call. Shorter and
faster prepared statements result.
FossilOrigin-Name: 9bec50a1e7796a6e038db9b1cc7cc1e7e350bf74
2016-01-30 16:59:56 +00:00
dan
5b6c8e4e1d
A different way to clear the subtype on VDBE registers when the value of the register is overwritten with new content. To fix [[f45ac567eaa9f93].
...
FossilOrigin-Name: 2e9fb1295cd31fc29c97444c3dec82fef68e939f
2016-01-30 15:46:03 +00:00
drh
af30fdf6ed
Output subtype information on register traces for PRAGMA vdbe_trace.
...
FossilOrigin-Name: 96b780209cc95c3f3769bb880591380d94bfe38d
2016-01-30 14:17:10 +00:00
drh
4b09ec6e11
Add the BTREE_FORDELETE and BTREE_AUXDELETE flags to the b-tree layer interface
...
and use them. Add assert() statement to verify that they are correct.
FossilOrigin-Name: 85c467041c9378cae3038756da815e9117ee8c7d
2016-01-30 13:32:30 +00:00
drh
5f4a686f8c
Simplification and size reduction to the printf logic. Remove the bFlags
...
parameter from sqlite3VXPrintf() and sqlite3XPrintf(). Use sqlite3XPrintf()
instead of sqlite3_snprintf() for rendering P4 values in EXPLAIN output.
FossilOrigin-Name: 0bdb41c45aa1cc8e5c136aaa6605d54b401483bd
2016-01-30 12:50:25 +00:00
drh
b17020265b
Change the P4_INTARRAY so that always begins with a length integer. Print
...
the content of the INTARRAY on EXPLAIN output.
FossilOrigin-Name: 6c520d5726e80b4251338c43c405270d150ea81e
2016-01-30 00:45:18 +00:00
drh
945d302215
Different comment on the alternative cursor fields of VdbeCursor.
...
FossilOrigin-Name: 6e3dcb6d7d960bb513d9a4a002b6cf5ab7159686
2016-01-29 20:58:40 +00:00
dan
de892d9660
Experimental attempt to make better use of covering indexes within OR queries.
...
FossilOrigin-Name: a323ac3a9d42bd5cb38d724c7e1180584b91054c
2016-01-29 19:29:45 +00:00
dan
83f0ab8087
Prepend "rc!=SQLITE_OK || " to the nExtraDelete assert() condition.
...
FossilOrigin-Name: 2a055ed0afd56e8c6b17cfc31e7808debe9ec765
2016-01-29 18:04:31 +00:00
drh
3b83f0cd8f
Avoid unnecessary WHERE clause term tests when coding a join where one
...
of the tables contains a OR constraint.
FossilOrigin-Name: ab94603974a0ad5342e5aee27603162652e70492
2016-01-29 16:57:06 +00:00
dan
98a4d5a7fa
Avoid two more instances of pointer arithmetic on freed pointers.
...
FossilOrigin-Name: 2910ef64097b890c9f8929bf609ea2827db7ac97
2016-01-29 08:38:35 +00:00
dan
895c00e16a
Modify the order of terms in an "if" condition to avoid implicitly comparing a dangling pointer to NULL following an OOM error.
...
FossilOrigin-Name: 5372f800835da61736a64dcee8b476bbe7ee2e46
2016-01-28 18:22:46 +00:00
dan
e61bbf4417
Modifications to ensure the nExtraDelete-related assert() statement does not fail.
...
FossilOrigin-Name: f43ff8f82d6c1239e6f9a32e7716421c1180ac74
2016-01-28 17:06:17 +00:00
dan
d5cafb380e
Remove a duplicate "p->magic = VDBE_MAGIC_RUN;" line from vdbeaux.c.
...
FossilOrigin-Name: 688eb3b400a3f2f8005c341e8259f4c1485cb0ed
2016-01-28 08:58:45 +00:00
drh
def19e3b48
Change the name of the BTREE_IDXDELETE flag to BTREE_AUXDELETE, to better
...
reflect its purpose.
FossilOrigin-Name: 1d3bf6bebdda9f96734bc139601e9b05344ea0b4
2016-01-27 16:26:25 +00:00
drh
b89aeb6aa2
Add assert() statements on the nExtraDelete variable in vdbe.c to try to verify
...
that the FORDELETE and IDXDELETE flags are being generated correctly. Those
flags are not currently generated correctly, and so the assert()s trip on this
check-in.
FossilOrigin-Name: dde1db0dd2e2cf04706117629756c352b178ebb8
2016-01-27 15:49:32 +00:00
mistachkin
d5be6f01cd
Support building for Windows 10 desktop using 'MinCore.lib'.
...
FossilOrigin-Name: 4bf89891fbb076364dc45a6bf3246efa6bc33d5d
2016-01-27 07:28:33 +00:00
drh
8716bfd8cd
Merge all recent trunk enhancements.
...
FossilOrigin-Name: 9a71d56dcea953cb965f1fdda9a8b8f158cdeff6
2016-01-26 23:32:55 +00:00
dan
8770677c1e
Fix issues on unix with opening database files via symlinks that are not in the current working directory. And with nested symlinks.
...
FossilOrigin-Name: 4003db4a49c6b623750e56f626fa492c8402067f
2016-01-26 14:48:02 +00:00
dan
2349670262
Ensure that unixFullpathname() always nul-terminates its output buffer, even when returning an error.
...
FossilOrigin-Name: 4a4385564dd3887a7953820b60c99d6ce289f96a
2016-01-26 13:56:42 +00:00
drh
f0fc992936
Remove an unused variable.
...
FossilOrigin-Name: 1c2656c1d37906230edc142d3a4253b16b6e925f
2016-01-26 00:12:42 +00:00
drh
2aac8c7ba1
Fix a compiler warning about doing pointer arithmetic involving a NULL pointer
...
even though the result of computation is never used.
FossilOrigin-Name: 7c49a9478bd36564e81d33458ca1f4063ddaca83
2016-01-25 22:08:11 +00:00
dan
af1b36b1df
Only use lstat() if the HAVE_LSTAT macro is defined. Fix some test file issues.
...
FossilOrigin-Name: 8a6e4147a680ad6c5fdd588468b6daac82349d2c
2016-01-25 18:43:05 +00:00
dan
caf6b150a1
Simplify the unixFullpathname() function. This adds a dependency on lstat().
...
FossilOrigin-Name: f71249d3db9242b8f38955db51a7a5789d002803
2016-01-25 18:05:49 +00:00
dan
e88ec187cd
Fix issues on unix with opening database files via symlinks that are not in the current working directory. And with nested symlinks.
...
FossilOrigin-Name: 80398fd44fb232193450103808e1854e0eba5652
2016-01-25 17:04:48 +00:00
drh
cc2fa4cf55
Replace the OP_SetIfNotPos operator with OP_OffsetLimit in the VDBE, for
...
simpler and smaller code.
FossilOrigin-Name: 7ac017a498b6fb28343eef2d24e400c7800660d6
2016-01-25 15:57:29 +00:00
drh
164c957b09
Add the SQLITE_EXTRA_DURABLE compile-time option.
...
FossilOrigin-Name: 30671345b1c1ee55a2d1aa17273213f1849efd81
2016-01-25 13:55:47 +00:00
drh
a7dc4a321d
Small simplification to the prepare statement opcode memory reuse logic.
...
Easier to read, and slightly smaller and faster.
FossilOrigin-Name: 8a1deae497edf3fa43fa96152d140405398c5ed6
2016-01-25 02:15:02 +00:00