drh
408efc0664
Add the BtCursor.curIntKey field and use it for a small size reduction and
...
performance boost.
FossilOrigin-Name: 4a17df139ac41e29c9a2e58afbd1238a5e94bd36
2015-06-27 22:49:10 +00:00
drh
15a0021b3e
Enhancements to the previous check-in to make it a little smaller and faster.
...
FossilOrigin-Name: 291d9e0c328a7bd0f255b0b7e819ca2c909701a3
2015-06-27 20:55:00 +00:00
drh
28f58dd60e
Performance improvements in moveToChild() by shifting some work over
...
to getAndInitPage(). Net improvement is about 800K cycles at cost of 30 bytes.
FossilOrigin-Name: 1956a4ce8eca650d98a7f68fd2d82eb8a3d6069f
2015-06-27 19:45:03 +00:00
drh
375beb0ec0
Manually inline the call from getAndInitPage() to btreeGetPage() for a
...
savings of 2.5 million cycles at a cost of less than 100 bytes.
FossilOrigin-Name: 7f65b96b4017413bd19624570efe8fb2b0f7b991
2015-06-27 15:51:06 +00:00
drh
bbf0f867d2
Add releasePageNotNull() as an alternative to releasePage() when the argument
...
is guaranteed to be non-NULL, and use it for a small performance gain.
FossilOrigin-Name: 9383a688701ac2c366a308efc287c9c0f8977d4e
2015-06-27 14:59:26 +00:00
drh
f44890a7c4
Add the Mempage.aDataOfst field and use it in sqlite3BtreeMovetoUnpacked()
...
for about a 2 million cycle gain.
FossilOrigin-Name: bee94dc3510745ba2efa044e8f3299793cfc7e34
2015-06-27 03:58:15 +00:00
dan
55296c5470
Merge latest trunk with this branch.
...
FossilOrigin-Name: 8671b9e137275d247e67e3d7d5d9c4cb1f380ff7
2015-06-26 20:14:23 +00:00
drh
abb78fbd88
Small size reduction and performance increase on the OP_IdxInsert opcode.
...
FossilOrigin-Name: b6bedc2e9c2f87709673799db9401b95fdb386b0
2015-06-26 19:43:55 +00:00
dan
ca0a30cd05
Merge latest trunk changes with this branch.
...
FossilOrigin-Name: 2a1af0f29e4c387721ec1fb3a2b55e8605b8401d
2015-06-26 19:33:04 +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
dan
eb37567fe2
Remove fts5 initialization code from core file main.c.
...
FossilOrigin-Name: c91a93b343b4d3b1a19afdb5d23d1c508f9779d2
2015-06-26 16:42:17 +00:00
mistachkin
68cdd0eda2
Fix harmless compiler warning in assert statement.
...
FossilOrigin-Name: 7097716caed9d4aef49c7e766e41ea74abf5967f
2015-06-26 03:12:27 +00:00
drh
39065c60b3
Simplify the pcache by not keeping continuous track of page 1 but instead
...
just loading page 1 on the rare occasions when it is actually needed.
FossilOrigin-Name: 015302f15e46a087ec92f3644c6741600dbf4306
2015-06-26 02:41:31 +00:00
drh
591909c344
Optimization to sqlite3_value_bytes() for the common case that does not
...
require a data transformation.
FossilOrigin-Name: 8d79f3a1443391bee204bb8c49240f44477168db
2015-06-25 23:52:48 +00:00
dan
f32fa3116b
Merge latest trunk changes into this branch.
...
FossilOrigin-Name: fcd8f7ce601729dc51d880d16b97040c1be16aa2
2015-06-25 20:16:23 +00:00
dan
ed2589f555
Add a script to combine all fts5 code into a single file - fts5.c - that can be used to build an SQLite loadable extension.
...
FossilOrigin-Name: 46e86b0637248fb4d623c97778cc041eabe3636c
2015-06-25 20:10:24 +00:00
drh
2c8fb926da
Simplifications and performance improvements in insertCell().
...
FossilOrigin-Name: 7d02e6c992ef92e1f77ebc13889e17c028454b06
2015-06-25 19:53:48 +00:00
drh
b7580e84a8
More simplifications and performance improvements to cell allocation
...
logic associated with allocateSpace().
FossilOrigin-Name: 78da0f69cb3289e332018864004f319f2764a5c8
2015-06-25 18:36:13 +00:00
drh
e674bf1648
Reorder the terms of a conditional for a small performance gain.
...
FossilOrigin-Name: d67b0ed1054cbb7ea2cdd74720d4d6e0227cec14
2015-06-25 16:01:44 +00:00
drh
be7d497836
Merge all the latest enhancements from trunk.
...
FossilOrigin-Name: 924f471291dfd458307a11819aa640cc1a02ac63
2015-06-25 15:44:49 +00:00
drh
ae6cd72318
Remove a NEVER() that is in fact reachable.
...
FossilOrigin-Name: f824e66b0dc120bed227c7446e2663fcad7cc4f6
2015-06-25 15:21:52 +00:00
drh
ded340e4fc
Minor optimization to allocateSpace().
...
FossilOrigin-Name: d007bc339b9ea6d59a3dd2b0c5e77e9c801b16f6
2015-06-25 15:04:56 +00:00
drh
6918095d81
Enhance the Btree object to remember whether or not it is holding an
...
Incrblob cursor. Use this knowledge to improve performance in the common
case where it does not.
FossilOrigin-Name: 476b11563c08c6d9c0abd69e4d865c4edcdd45f5
2015-06-25 13:03:10 +00:00
drh
526b17db13
Remove a line of code that doesn't do any useful work.
...
FossilOrigin-Name: 3ee888beb974e015bd11ae79381b208eaa310f6f
2015-06-25 02:26:45 +00:00
drh
6cbbdb08f8
Fix the progress handler so that it does not fire too soon during an
...
sqlite3_step() call other than the first.
FossilOrigin-Name: b41ef5d6db107cac2b1b46a955e63414434ee976
2015-06-24 14:36:27 +00:00
drh
c6e956f038
Fix a harmless compiler warning.
...
FossilOrigin-Name: 3b6fa95eebfa01703d9ef4f530674d17e965c512
2015-06-24 13:32:10 +00:00
drh
9e7804dfd4
Prevent an infinite loop while searching a corrupt freelist.
...
FossilOrigin-Name: 4e5424fe89eed346f6cf26a05c72694d1eb9f58f
2015-06-24 12:24:03 +00:00
drh
672073a41b
Strengthen the new balance_nonroot() code against various corrupt database
...
problems.
FossilOrigin-Name: 5ba983432069714afebbb2f0ef22d41be52f7a4c
2015-06-24 12:07:40 +00:00
drh
b468ce1256
Remove an invalid NEVER() and add a test case to cover it.
...
FossilOrigin-Name: 14b73d201509d3c04f760a08d21f3c499f2870a8
2015-06-24 01:07:30 +00:00
drh
9c739e26da
Performance optimization on balance_nonroot() and related routines.
...
2.6% faster overall with a size increase of less than 750 bytes.
FossilOrigin-Name: 25131e7062125e91c2d60ed2cadf134dd7609124
2015-06-24 00:05:45 +00:00
drh
2ec18a3cce
Mark some branches as unreachable after the recent change that recognizes
...
mismatch result set sizes on compound SELECT statements sooner.
FossilOrigin-Name: c8d1f305b6e9dfc36b8e3f4ab92de4457884d903
2015-06-23 23:31:52 +00:00
drh
ea82b37302
Testability improvement.
...
FossilOrigin-Name: eed6a3314518cdab809264284d7680385f0d5d2a
2015-06-23 21:35:28 +00:00
drh
fe647dc9ee
Multiple overflow cells are always adjacent and sequential. Exploit this
...
invariant for a small size reduction and performance increase and add
assert()s to prove the invariant.
FossilOrigin-Name: f77f2f48f48e374a72b6c054142f7a3ec0b1483c
2015-06-23 18:24:25 +00:00
drh
4f4bf7747a
Faster loading of cell pointers into the b.apCell array in balance_nonroot.
...
FossilOrigin-Name: fda89b0512477f9da09fd0f4e548ed4b13efd49d
2015-06-23 17:09:53 +00:00
drh
008d64c23a
Avoid unnecessary cachedCellSize() calls in the cell partition adjustment
...
phase of balance_nonroot().
FossilOrigin-Name: 6319ee1256b1f7c39dd39a536a39b77b3d10dcac
2015-06-23 16:00:24 +00:00
drh
f783893b8d
Change pageInsertArray() and pageFreeArray() so that they use the CellArray
...
object and compute cell sizes as needed, resulting in smaller and faster code.
FossilOrigin-Name: f7f41818119bb7bfbd1f1297d294b32f32769cd3
2015-06-23 15:36:34 +00:00
dan
c94a08100b
Merge latest trunk changes with this branch. Add tests for columnsize=0.
...
FossilOrigin-Name: ef44c71a22518727030dd90c0139af8973b05841
2015-06-23 15:06:13 +00:00
drh
4edfdd38fb
Improvements to the way balance_nonroot() constructs the b.apCell array of
...
pointers to cells.
FossilOrigin-Name: ee44bb25b2a88e25ba2afe37cf03ba199692a3a0
2015-06-23 14:49:42 +00:00
drh
a2306712f2
Merge the compound SELECT operator fix from trunk.
...
FossilOrigin-Name: a7be554f4b8534fc237fa4c6defc38fcd4049707
2015-06-23 13:02:10 +00:00
dan
923cadb1ae
Test that the left and right sides of a compound SELECT operator have the same number of expressions in the expanded expression list before beginning to generate code.
...
FossilOrigin-Name: 4df852ce26c95d5d23c83dbe9c59d2c3435acddf
2015-06-23 12:19:55 +00:00
drh
1ffd247c0c
Avoid computing cell sizes in balance_nonroot() until they are really needed.
...
This gives an overall 1.7% performance gain for about 1000 extra bytes of
code space.
FossilOrigin-Name: 43844537e8a372953386663f8177202901ba7566
2015-06-23 02:37:30 +00:00
drh
658873bdb3
Change the way that balance_nonroot() partitions cells between the sibling
...
pages such that a scan of the cell size array is not required.
FossilOrigin-Name: 168728715156d756ac8c0df45710d054eee027ec
2015-06-22 20:02:04 +00:00
drh
5f02ab0976
Make sure that the likelihood() function does not mess up generation of
...
result-set code when it is used (inappropropriately) in a result-set
expression.
FossilOrigin-Name: 7cdbae625eb029538a693d2bebec465a6f65fb90
2015-06-20 13:18:34 +00:00
drh
eeab2c63a9
Fix corner cases involving corrupt varint values in record headers.
...
FossilOrigin-Name: 3189116b42c5ecef5e30c8b317f4458bbf8b9086
2015-06-19 20:08:39 +00:00
drh
56cb04efc8
Performance improvements in btreeParseCell() by inlining the varint decoder.
...
FossilOrigin-Name: faab0ed928074f3ec7c25e1a2058414fbd9b013c
2015-06-19 18:24:37 +00:00
drh
5fa605142f
Add the MemPage.xParseCell method and provide various implementations
...
(variations on the former btreeParseCellPtr()) depending on the page type.
FossilOrigin-Name: 41d03d883c4f7ca279eb9dd679f3ab81c8d957d9
2015-06-19 17:19:34 +00:00
drh
25ada07ab4
Make cellSizePtr() a method on the MemPage object, with alternative
...
implementations depending on the page type. This results is a small performance
improvement and size reduction.
FossilOrigin-Name: 02f7e9d7d7b93d0b6bbd6cc0d0359b3b741b9931
2015-06-19 15:07:14 +00:00
drh
606f2344e9
Pervent the likelihood() function from moving ON clause terms of a LEFT JOIN
...
into the WHERE clause.
Fix for ticket [5f60b11fc8e23490e2]
FossilOrigin-Name: ed96e14adce4a4f94cc6838c46bc97937c4cb72a
2015-06-18 14:32:51 +00:00
drh
b3d903ebe5
Show the values of Expr.flag in the AST of ".selecttrace"
...
FossilOrigin-Name: a84d1004cbee67f2b8ba1fd201e43af49ea67c1b
2015-06-18 14:09:13 +00:00