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
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
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
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
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
drh
d286b9fb7d
Merge all the latest enhancements from trunk.
...
FossilOrigin-Name: 395a153ff7b3c7a72f3d02b6fe76d72383f4e480
2015-10-30 16:50:00 +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
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
6b86881788
Merge recent trunk enhancements.
...
FossilOrigin-Name: 6a513c05850949900f396c7a61accb97cc6d2af5
2015-09-03 14:48:25 +00:00
drh
163c29c5f3
Merge enhancements from trunk.
...
FossilOrigin-Name: 25ee3000e94d60d8c1d7b980f416dcc33eb11105
2015-09-03 14:39:33 +00:00
drh
076e85f59c
Add the sqlite3VdbeLoadString() and sqlite3VdbeMultiLoad() routines to help
...
with code generation, especially on PRAGMAs. Rename sqlite3VdbeAddGoto()
to just sqlite3VdbeGoto().
FossilOrigin-Name: 847387ec8e6fef283899578fb232b2c23b00ee5b
2015-09-03 13:46:12 +00:00
drh
7cc023c7fa
Factor out and simplify code in pragma.c for pragmas that return a single
...
row with a single column that is an integer or text value.
FossilOrigin-Name: d7f4bdf594e93c848f46901637861c8eed4c34df
2015-09-03 04:28:25 +00:00
drh
0ff287fb01
Add and use the sqlite3VdbeChangeOpcode() routine. Simplify the implementation
...
of the other sqlite3VdbeChange*() routines.
FossilOrigin-Name: 0a5b00e493efae58252f9fc7bde5a469645942d5
2015-09-02 18:40:33 +00:00
drh
2991ba050b
Add the sqlite3VdbeAddGoto(v,i) routine as a shorthand for
...
sqlite3VdbeAddOp2(v,OP_Goto,0,i).
FossilOrigin-Name: be78f413df1b0d874b44a866ef6bf17543d7e8a2
2015-09-02 18:19:00 +00:00
drh
ef41dfe5b1
Change sqlite3_sql() so that it always returns the SQL text of the prepared
...
statement, if the text is available, even if the the prepared statement was
generated using sqlite3_prepare() instead of sqlite3_prepare_v2(). Also
include some minor comment fixes and code simplifications.
FossilOrigin-Name: 2f5472cfda6c72e75b9cf7b7481612465c1a5e6a
2015-09-02 17:55:12 +00:00
drh
89a10b2d53
Merge recent trunk enhancements, include table-valued functions.
...
FossilOrigin-Name: e9196d566690de0e9815f8cd85be7844322b5a79
2015-08-20 23:54:25 +00:00
drh
c1bd84124b
Merge recent enhancements from trunk, including table-valued expressions.
...
FossilOrigin-Name: b9927c876c1d4e146cb6a603d82cd2489594084d
2015-08-20 23:45:59 +00:00
drh
d5a74c8e19
Minor fix to the display of oversized KeyInfo structures in the P4 operand
...
of Open opcodes in EXPLAIN output.
FossilOrigin-Name: f65a9b4ab2c6f0b7028e16e2a0f83fd6d58ae1cd
2015-08-15 16:32:50 +00:00
drh
a67a31624d
Change the display of the P4 operand of CursorHint in EXPLAIN output to
...
function notation.
FossilOrigin-Name: bee73d429cb0e99b43fb191ac15e298d0353b135
2015-08-15 00:51:23 +00:00
drh
2f2b02785a
Fix the cursor hint mechanism so that it does the right thing for indexed
...
lookups.
FossilOrigin-Name: 581e3d4988e98975fea5daaeb9f854c54a4976b7
2015-08-14 18:50:04 +00:00
drh
fe66352d17
Fix the CursorHint so that it includes the scan boundary constraints.
...
On the expression text for the CursorHint opcode, show rowid correctly.
FossilOrigin-Name: f0d428d13a787251c2ca7685fec2a91b550eefba
2015-08-14 01:03:21 +00:00
drh
f7e369070e
Convert the hint expression of the CursorHint opcode into a string for
...
display by EXPLAIN.
FossilOrigin-Name: 206884718782331a7aaacc2c811e4e9d2effae91
2015-08-13 21:32:41 +00:00
drh
bec2476afc
Merge in all the trunk changes from the previous year. This breaks the
...
cursor-hint mechanism, but provides a baseline for trouble-shooting.
FossilOrigin-Name: 82a7a61bc0883b1e7432548e4890791717aa1bb3
2015-08-13 20:07:13 +00:00
drh
38151adfe2
Merge trunk changes, including the addition of FTS5 and pcache1 performance
...
enhancements.
FossilOrigin-Name: db4cbefb8674c6cfff27c1e918741de1885c845c
2015-07-14 15:39:22 +00:00
drh
4698136594
Early detection of file corruption in a debugging routine, before the invalid
...
data can cause problems.
FossilOrigin-Name: b27a47fef995f0ab2516e6ca779711cab1f50fb9
2015-07-08 12:25:38 +00:00
drh
59b4bd4840
Merge all the latest enhancements from trunk. This merge include FTS5
...
and a number of notable performance enhancements.
FossilOrigin-Name: 39936b33b0668aad81aa574d4d74c92b0ddd218a
2015-06-30 16:29:59 +00:00
drh
c5ef7151b0
Avoid unnecessary calls to sqlite3VdbeSerialTypeLen() for integer
...
serial types, for a small size reduction and a speed increase.
FossilOrigin-Name: 9cd30d33b1d02dc8c55c1d74bdbcefab63ebf2a7
2015-06-28 02:58:51 +00:00
drh
e2d9e7cfd0
Further optimization of SQL function dispatch. Improvements to opcode
...
documentation.
FossilOrigin-Name: eaddbf296aee98ffca82adade1b0d2fbefd09d7b
2015-06-26 18:47:53 +00:00
drh
9c7c913cd6
Cache the sqlite3_context structure in the P4 operand of VDBE programs
...
for faster SQL function dispatch.
FossilOrigin-Name: 2abc44eb3b9d489321baa50bc25e17dafbda3687
2015-06-26 18:16:52 +00:00
drh
5600329bc0
Merge all recent enhancements and fixes from trunk.
...
FossilOrigin-Name: 199bfb67fdf642cca6cd5d460fa4dc602b94837a
2015-06-17 18:18:51 +00:00
drh
f1aabd6b78
Optimizations to two VDBE accessory routines for a 0.2% performance increase.
...
FossilOrigin-Name: 66d033b9c9a8c16b9a342be0b325bd85b8487c03
2015-06-17 01:31:28 +00:00
drh
0dd5cdaea5
Ensure that the CREATE TABLE AS statement correctly undoes partial changes
...
to the sqlite_master table if the SELECT on the right-hand side aborts with
an error. Fix for ticket [873cae2b6e25b]
FossilOrigin-Name: 400e025e7c61efab71b891743c07a0862e5bb934
2015-06-16 16:39:01 +00:00
drh
97bae794c2
Add a new opcode to the VDBE that gives the b-tree a hint about the set
...
of columns in a table or index that are actually used by the query.
FossilOrigin-Name: f167bba446b78dd7538d0b2bae3e6678f3b1ba28
2015-06-05 15:59:57 +00:00
drh
ad2c1dd782
Import recent enhancements from trunk.
...
FossilOrigin-Name: 54bec164ebeaf62d783352b3c4d0de8845394091
2015-05-29 19:04:58 +00:00
dan
b95e1193d5
Avoid a buffer overread when comparing against a corrupt record that spans at least one overflow page.
...
FossilOrigin-Name: 62a5b3633a086694ef0e579a0a82322cb1ae3d60
2015-05-26 20:31:20 +00:00
dan
cc7aa1f6f3
Avoid branching on an uninitalized variable when comparing SQL values with the undefined serial types 10 and 11 (which only appear in corrupt databases).
...
FossilOrigin-Name: b4a45d3b78fede2433ac18f20b1ab7bddee77059
2015-05-26 20:07:32 +00:00
drh
adf3bf5811
Merge recent trunk changes, include the R-Tree enhancement that allows
...
8-byte BLOB arguments to geometry functions, and the fix for the TEXT affinity
problem that could cause corrupt indexes.
FossilOrigin-Name: 0a0de8b72ca24f287f9c84766a14e12ea4564b59
2015-05-19 22:42:23 +00:00
drh
22c17b8bf5
Simplifications to error message processing. Fix a possible problem in error
...
message formatting when vacuuming a database with a corrupt schema.
FossilOrigin-Name: 56ef98a04765c34c1c2f3ed7a6f03a732f3b886e
2015-05-15 04:13:15 +00:00
drh
850b0d031d
Merge all recent trunk enhancements and fixes into the sessions branch.
...
FossilOrigin-Name: b8ef1cdee307441e8d97b4bfc21f8547692eea9f
2015-04-20 01:32:53 +00:00
drh
ab4e7f3337
Make sure all cursors are closed when returning from a VDBE subprogram that
...
implements a foreign-key construct.
FossilOrigin-Name: d04d354d8e423961c3091b6ebcfbbbf10d3ecb04
2015-04-16 18:11:50 +00:00
drh
df3c171881
Merge all recent trunk enhancements into the sessions branch.
...
FossilOrigin-Name: 5f14f34f072921e229bc20a5185c0cdb3f464c04
2015-04-12 01:33:37 +00:00
dan
7004f3f6a3
Improve performance of multi-field sorts where the first field has a low cardinality.
...
FossilOrigin-Name: 601e7b6b8e6bfabda03b70f75094c9014e3a3c49
2015-03-30 12:06:26 +00:00
drh
edea911945
Merge all recent trunk enhancements into the sessions branch.
...
FossilOrigin-Name: 54aaa6f29ad1bf84148c2403eed77e8311f68d66
2015-03-24 19:02:13 +00:00
drh
466fd815fb
Simplify the EXPLAIN output of virtual table P4 parameters to only show the
...
pointer to the sqlite3_vtab object and omit the sqlite3_module object.
FossilOrigin-Name: 85610bbbc60cb4a6ec856123447fdb2ba948e52f
2015-03-24 14:57:02 +00:00
drh
f496a7dc81
More defenses against virtual table being deleted out from under a running
...
statement.
FossilOrigin-Name: 116c99823022c017946b6088878a2d46759deb6e
2015-03-24 14:05:50 +00:00
drh
a68d628291
Prevent a virtual table from being destroyed while it is in use.
...
FossilOrigin-Name: fba674c083286dabb37fed9357b67593b56ed3a5
2015-03-24 13:32:53 +00:00
drh
086723a4a8
Replace the Vdbe.inVtabMethod field with the sqlite3.nVDestroy counter.
...
FossilOrigin-Name: 9faefb96272967e731e83ef516a8c1e1b876391b
2015-03-24 12:51:52 +00:00
drh
099006de44
Merge all recent trunk enhancements into the sessions branch.
...
FossilOrigin-Name: 1d1c57c3566d86cd44f146688b620131b3b57e52
2015-03-17 18:54:10 +00:00