Commit Graph

24498 Commits

Author SHA1 Message Date
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
mistachkin 31753c833d Revise #ifdef ordering to prefer the ANSI version of GetVersionEx, when available.
FossilOrigin-Name: 9fe0f0754c063c17fffa9d4814b7180397cf5226
2014-08-22 19:12:16 +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
mistachkin cf4200a170 For sqlite3_win32_is_nt(), assume WinRT is NT-based.
FossilOrigin-Name: 2f59e71fbf31d2bd788d11197943b2ff3f4046e1
2014-08-21 19:11:17 +00:00
drh 2571e4eddd Merge all recent trunk changes, especially the fix for
ticket [369d57fb8e5ccdff06f1], but also the skip-scan improvement and
performance improvements in the b-tree code.

FossilOrigin-Name: 0b9e2c3269695713b538561d999c68097db70f0c
2014-08-21 16:09:36 +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 3a432b0b47 Disable the hook-7.5.2 tests when using sessions, since that are not correct
in that case.

FossilOrigin-Name: 6d5b9332e8d8bb572ac98b0f4e47e59ad12aac26
2014-08-19 00:33:22 +00:00
drh 2967e0cc9c Improved response to error conditions in the ".session" shell command and
in the "changeset" command-line program.

FossilOrigin-Name: b69f7dd1f35846c3bb9f4f160d50c4f03796f887
2014-08-19 00:26:17 +00:00
drh 9f674f2600 Fix the autoconf and MSVC makefiles so that they construct the changeset
command-line utility upon request.  Delete that utility program when
"make clean" is run.

FossilOrigin-Name: 4dc15fe066f079ff31c89a5e0242dd5b3c851d29
2014-08-18 20:23:29 +00:00
drh f5ab08c779 Fix a harmless compiler warning in the sessionAppendDelete() function.
FossilOrigin-Name: 1324d08d0c639378cf1b03bd6410db81947747ac
2014-08-18 20:14:30 +00:00
drh 5f77b89ecd Add the "changeset" command-line tool for analyzing and manipulating
changesets in files on disk.  Add the ".session" command to the command-line
tool.

FossilOrigin-Name: 31addb627fdbaeb908e0611ad82f6db7537428ea
2014-08-18 20:08:25 +00:00
drh 03168cacd5 A reasonably complete implementation of the "changeset" command-line tool
and the ".sessions" command in the command-line shell.

FossilOrigin-Name: 7b12f1f9c012f33d376242920583807b014b3287
2014-08-18 20:01:31 +00:00
dan 6885bbc713 Add an "automerge=0" mode that disables auto-merging and falls back to fts4-style crisis merges.
FossilOrigin-Name: 2397404e152b908d838e6491294b263b05943b3f
2014-08-18 19:30:01 +00:00
drh 3a67b0453e Add the "changeset" command-line utility for getting an ASCII dump of
change sets.

FossilOrigin-Name: 55bb3544a6b474c04853270067a35ca4b0079f52
2014-08-18 17:56:31 +00:00
dan 082c96dffa Add miscellaneous test cases to improve coverage of sessions module.
FossilOrigin-Name: 0fac6cfffe628ea02c78ebad065307309ec9eaa1
2014-08-18 16:03:46 +00:00
drh e62296100f Begin adding commands to the command-line interface for interacting with
the sessions extension.  This is the first check-in of a work-in-progress.

FossilOrigin-Name: c2fcf0b9f4bdc48dfc6530bda4f531b94a833207
2014-08-18 15:08:26 +00:00
drh 8b7a2e3a1e Merge the latest trunk changes, and in particular the refactoring of the
object names in the command-line shell.

FossilOrigin-Name: 419d286a2fc465f6e0f9662909d0cc52a18eefa4
2014-08-18 13:48: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
dan 2e934cd40c Add tests for sessions module.
FossilOrigin-Name: 82fdb1975f5b29a751089a8582713372999ae56e
2014-08-18 08:42:36 +00:00
dan a71d2371d0 Fix some missing and out-of-date comments in the sessions module.
FossilOrigin-Name: 05c1d9149b27c68e2654ed28491722927d2176f5
2014-08-16 19:01:00 +00:00
dan 64277f4a70 Fixes for the sqlite3changeset_concat() API regarding patchsets.
FossilOrigin-Name: dccb34859508eac8146ae5b19c447673d04be3b0
2014-08-16 16:47:55 +00:00