drh
c3031c61ef
Change the page cache so that a new sqlite3_pcache object is allocated as
...
soon as the page cache is opened, not delayed until the first fetch request.
This give a noticable performance boost. The interface between pager and
the page cache has changed slightly, which might break ZIPVFS.
FossilOrigin-Name: f1f94a971e031e784f8c30a6faf829df58709329
2014-08-26 15:06:49 +00:00
drh
05bbb2e824
Add an assert() and five testcase() macros to the OP_Cast opcode implementation
...
to help verify that it is fully tested.
FossilOrigin-Name: af364cce9da0961593ef876b646197f82df08ad5
2014-08-25 22:37:19 +00:00
drh
ec3e4f753b
Minor changes to the CAST logic to make it more testable.
...
FossilOrigin-Name: 1ad70ec550c004160d9c0c57e6c416812cdead5e
2014-08-25 21:11:01 +00:00
drh
21b0e73354
Test cases added for using unary "+" and CAST operators on the RHS of range
...
constraints and verifying that STAT3/4 can use those constraints.
FossilOrigin-Name: 42505e5a810832442699ca54a46637c50e7f9e71
2014-08-25 20:21:07 +00:00
drh
4169e430a2
Allow CAST expressions and unary "+" operators to be used in the DEFAULT
...
argument of an ALTER TABLE ADD COLUMN and to be understand on the RHS of
range constraints interpreted by STAT3/4. This involves a rewrite of the
implementation of the CAST operator.
FossilOrigin-Name: 91d8a8d0b792ea5c4fe68fd9caaf3345eddea486
2014-08-25 20:11:52 +00:00
dan
f741e0491e
In cases where stat4 data is available but cannot be used because the rhs of a range constraint is too complex a expression, fall back to using the default estimates for number of rows scanned.
...
FossilOrigin-Name: e06dc6f0c35f87c44292c71677111b74f073a5c4
2014-08-25 18:29:38 +00:00
drh
c137807a87
Remove the pager_lookup() function since it is redundant with
...
sqlite3PagerLookup().
FossilOrigin-Name: 54164ce47cfc3ad5dd8797114e4ba78811f23bef
2014-08-25 11:33:41 +00:00
drh
12b7c7d8c3
Change the name of the VdbeMemRelease() macro to VdbeMemReleaseExtern() to
...
more accurately reflect what it does. Performance enhancement to the
sqlite3VdbeMemRelease() function.
FossilOrigin-Name: 3ca5846da7da5e08192a4c96288197be3b7ab6f7
2014-08-25 11:20:27 +00:00
drh
4274dae9e9
The sqlite3VdbeChangeEncoding() routine goes about 3x faster if the
...
sqlite3VdbeMemTranslate() subroutine is not inlined.
FossilOrigin-Name: 0c7e1b875a14ff9d71af7bb125a0272a23d57353
2014-08-24 02:53:23 +00:00
drh
f063e08fd9
Patch the sqlite3PagerWrite() method in the Pager to run a bit faster.
...
FossilOrigin-Name: c63311e2f3344363a5ed99838fb5850004eaee30
2014-08-24 01:32:43 +00:00
drh
efbf044583
Faster implementation of pcache1Fetch()
...
FossilOrigin-Name: 0371cc3bb07448bcd64fd671f3e71bb7f30deb4d
2014-08-23 23:15:31 +00:00
drh
b50c65d561
Faster implementation of the sqlite3ApiExit() routine.
...
FossilOrigin-Name: bd41d394d48516eb7d8ddc46abdcb427aa80173e
2014-08-23 20:25:53 +00:00
drh
b4586f1254
Another memory allocator performance optimization.
...
FossilOrigin-Name: 6da6f46d0c43e3b68c21f514ddf8ee663c20f249
2014-08-23 19:42:06 +00:00
drh
3bdffddc41
Fix a variable-declaration after code problem in btree.c. Harmless in
...
GCC and CLANG but unacceptable for MSVC.
FossilOrigin-Name: 45abd5c0bad2847861f3b26a7040490aa9bb1332
2014-08-23 19:08:09 +00:00
drh
3ccd5bf89e
Changes to sqlite3ScratchMalloc() that make the entire memory allocation
...
interface a little faster and about 100 bytes smaller.
FossilOrigin-Name: f83daa16f65ef35062412e88c214852a4aeb3da2
2014-08-23 19:04:55 +00:00
drh
9de4a17185
Make the implementation of the sqlite3_aggregate_context() interface faster
...
for second an subsequent invocations. This helps all aggregate functions to
perform better.
FossilOrigin-Name: 802148f3110462eac939d53ce08eb9a2f6aac739
2014-08-23 18:17:19 +00:00
drh
f1a89ede4a
Improved performance in the type handling of arithmetic operators in the VDBE.
...
FossilOrigin-Name: 0c0a603950c97837442d82886f947aab0acbd805
2014-08-23 17:41:15 +00:00
drh
bd9507c8da
Performance optimization in the applyAffinity() logic inside the VDBE.
...
FossilOrigin-Name: 25f2246be404f38b4f8dd70397cd1454d46358c4
2014-08-23 17:21:37 +00:00
drh
6848dad894
Another performance tweak: Split the sqlite3BtreeCursorHasMoved() routine
...
into two with the second routine named sqlite3BtreeCursorRestore(). The first
now only reports whether or not the cursor has moved and the second tries to
restore the cursor. This allows the sqlite3VdbeCursorMoveto() routine to be
refactored to avoid stack pointer movements, for a noticable performance gain.
FossilOrigin-Name: ce123b5c592556a8cd38b01fcc91ba76231d3098
2014-08-22 23:33:03 +00:00
drh
637f3d83b9
Factor the saveAllCursors() routine of btree.c into two separate routines,
...
for a noticable performance improvement.
FossilOrigin-Name: 3eb084390382c108e9b0ff0b29dede58ebb149bc
2014-08-22 22:26:07 +00:00
drh
75e2a2d362
Performance enhancements in the b-tree mutex logic.
...
FossilOrigin-Name: 8914530644f938a7a98e25ea1fb0bca1f9d79101
2014-08-22 21:58:10 +00:00
drh
a8dcba9199
Combine the pcacheAddToDirtyList() and pcacheRemoveFromDirtyList() routines
...
into a single pcacheManageDirtyList() routine. The resulting binary code is
slightly faster and a few bytes smaller.
FossilOrigin-Name: 6bcf1af6a48dbda5ac6f6b3b02810bdfc4730000
2014-08-22 20:35:29 +00:00
drh
2f2b2b8580
Performance enhancement in sqlite3PutVarint().
...
FossilOrigin-Name: a929be551924144c9bc7aab608404d59e479abb5
2014-08-22 18:48:25 +00:00
drh
13f40da31d
Split the sqlite3Error() routine into sqlite3Error() and
...
sqlite3ErrorWithMsg(), for a slight size reduction and performance increase.
FossilOrigin-Name: cf561d1f0bb60b3d638632d20bd686dda4fa4a04
2014-08-22 18:00:11 +00:00
drh
172087fb73
Performance improvement in the printf() logic by avoiding unnecessary stack
...
pointer movement.
FossilOrigin-Name: f7f2160db014f0ae11ad13c8ad70ad3444124e3e
2014-08-22 15:40:20 +00:00
drh
738d190dd8
Improve the performance and reduce the size of the sqlite3VdbeSerialGet()
...
routine by avoiding the use of stack.
FossilOrigin-Name: ebc10e46c15017d7cd232b5f4f3ef67ef740d87f
2014-08-22 15:19:59 +00:00
drh
8932becbef
Handle the 4-byte integer case in the stackless routine.
...
FossilOrigin-Name: 3f55484e81000c75e231f5580632a68e782ded4f
2014-08-22 14:56:13 +00:00
drh
14a924a5cd
Get the sqlite3VdbeSerialGet() routine to run faster by avoiding the use
...
of local variables.
FossilOrigin-Name: 8267d82174099e548a4f78d06af0c6324c89b83d
2014-08-22 14:34:05 +00:00
drh
3f5b199eb5
Change a while-loop into a do-loop in sqlite3VdbeSerialPut() for a small
...
size reduction and performance improvement.
FossilOrigin-Name: 750bb0a0960606ab24037e0992e9f7a17524cc3e
2014-08-22 13:22:32 +00:00
drh
5ab567078a
Enhance the spellfix extension with the ability to specify a rowid when
...
inserting new rows.
FossilOrigin-Name: 369c480cda6fa66394b995346bbf51f3298446e1
2014-08-22 11:11:30 +00:00
drh
acbcb7e013
Simplify the interface to the symbol table, saving 600 bytes of code space.
...
FossilOrigin-Name: 14b0f561fe15622b61c6676c9c455dca6b9ba5f0
2014-08-21 20:26:37 +00:00
drh
b6b4b79f34
Fix a faulty assert() statement. Add comments to clarify the behavior of
...
the sqlite3OpenTableAndIndices() routine in insert.c. Add test cases to
verify that the assert() statement is not firing inappropriately.
Ticket [369d57fb8e5ccdff06f1].
FossilOrigin-Name: 7029b3404d3f5f698a496934f3a3f2972051b257
2014-08-21 14:10:23 +00:00
drh
b614eab3d2
Increase the version number to 3.8.7
...
FossilOrigin-Name: 91594aae0725388765070c80039dfe1bf126392d
2014-08-20 23:42:50 +00:00
drh
f3f69ac942
Enhancements to skip-scan such that it is operable when a middle column of
...
an index is skipped while the left-most column is constrained in the WHERE
clause.
FossilOrigin-Name: bc985caa7816f1f873ad8e4467c5278399f315ce
2014-08-20 23:38:07 +00:00
drh
7bc4c454da
A small performance improvement in freeSpace() by special-casing the
...
relatively common case of an empty freelist.
FossilOrigin-Name: 49f44d355ff70744e4951baca2481c7c2b6c02b3
2014-08-20 18:43:44 +00:00
drh
5f5c753efb
Reimplement the freeSpace() routine in btree.c so that it runs faster.
...
FossilOrigin-Name: fe4fd014b42b7b158ca968f1535b5636c67769f6
2014-08-20 17:56:27 +00:00
drh
7fb91646b5
Refactor local variable names in the freeSpace() routine of btree.c for
...
improved understandability.
FossilOrigin-Name: 7e63089a191f29aefde05e89bb612f3036cfa034
2014-08-20 14:37:09 +00:00
drh
a13d5072c4
Size reduction and performance improvements in btree.c and the
...
allocateSpace() routine. Also fix an assert() in freeSpace().
FossilOrigin-Name: 121308fa869ad490a6924798d276c0ff32759acc
2014-08-20 13:35:45 +00:00
drh
fb90841adf
Add SQLITE_API macros in front of interface routines in the test_intarray.c
...
extension.
FossilOrigin-Name: eea0661798e10018615854c871f24be0f8bb2ff9
2014-08-20 13:25:06 +00:00
drh
905552628c
Change an assert() added by the previous commit into a testcase().
...
Fix a separate assert() in btree.c:freeSpace().
FossilOrigin-Name: fe51d3aa0ce7021213293a0647e31164073e78f7
2014-08-20 13:17:43 +00:00
drh
4c04f3c8bd
Further size reduction and performance improvement in btree.c:allocateSpace().
...
FossilOrigin-Name: 1cb1cd64930a6bc371143f7d2e77eb1c51498cb0
2014-08-20 11:56:14 +00:00
dan
53d89cdfe9
Fix a typo in the showdb usage message.
...
FossilOrigin-Name: 6c66beae97ba1799c908d3a33371dedbc7f3f58c
2014-08-20 10:42:16 +00:00
drh
75b31dc9ad
Minor performance improvement and size reduction for the btree-page space
...
allocator.
FossilOrigin-Name: 73637d12e31f5489efe37d8cf4ab50a1911d4c75
2014-08-20 00:54:46 +00:00
drh
dfd1547b48
Modify the memsubsys1-3.1.4 test so that it does not fail arbitrarily due
...
to variations in the behavior of system malloc().
FossilOrigin-Name: d280157da0b5275f3e3c875d2dcfb9998d374ac0
2014-08-19 23:04:49 +00:00
drh
5f58ae75c9
A better fix for the sqlite3_trace() problem.
...
Ticket [11d5aa455e0d98f3c1e6a]
FossilOrigin-Name: 44d5bd4cc3f76e9a151ba0abae1092bd184af264
2014-08-19 20:41:36 +00:00
drh
2c7946a485
Make sure the sqlite3_trace() callback is invoked, even if the prepared
...
statement was marked "expired" before it ever entered sqlite3_step().
Ticket [11d5aa455e0d98f3c1e6a08].
FossilOrigin-Name: 0d4d3df4bc5e75ce1543b5539a1e9e279d2a062f
2014-08-19 20:27:40 +00:00
drh
4b2590e44b
Improvements to output formatting with the ".trace" command in the
...
command-line shell.
FossilOrigin-Name: d09d63c07748839e9b778a769b183bdd614c6c13
2014-08-19 19:28:00 +00:00
dan
edf5b1657d
Minor changes to do with the Tcl tea extension package autoconf system.
...
FossilOrigin-Name: f10a6111262ce6ee6984c64fa0e0023642eca27d
2014-08-19 09:15:41 +00:00
drh
dcd87a9dd3
Refactor the names of state objects in the command-line shell implementation..
...
FossilOrigin-Name: 11a70e1ae7f05d06e4e09c9d20db0444b8881584
2014-08-18 13:45:42 +00:00
drh
ef1d614b90
Fix compiler warnings on WinCE.
...
FossilOrigin-Name: 28a379fcd43389ad3249eff51a621d0bb7c81640
2014-08-15 16:13:07 +00:00