Commit Graph

7220 Commits

Author SHA1 Message Date
drh
5ff44379b3 Fix a tracing macro in the VDBE in the VColumn opcode.
FossilOrigin-Name: cb74b81bb0322efdd66146d7de466c14564b18fd
2009-11-24 16:26:17 +00:00
drh
7ab641fb01 Fix SQLITE_SECURE_DELETE so that it overwrites content on the root pages
of tables and indices that are dropped using the truncate optimization.

FossilOrigin-Name: 02ef972a56aab1e61786000283193165d3968842
2009-11-24 02:37:02 +00:00
drh
a62bb8d4d7 Make sure registers computed for the VFilter opcode are marked invalid
after the VFilter opcode finishes.  Ticket [16fbf14cb2].

FossilOrigin-Name: 83dc7d38c2695d1b2a7d4866a4df9be9e41d1abe
2009-11-23 21:23:45 +00:00
drh
1ac399e8eb Rearrange the order of two branches in order to restore 100% branch coverage
after recent changes to in-memory database processing.

FossilOrigin-Name: 6ce6ff4402241d5c76acd0c60c85097dfcd7fd7c
2009-11-23 15:59:27 +00:00
dan
f6963f99dd Change so that deleting an Expr structure requires only one frame per level in the expression tree, not two.
FossilOrigin-Name: a4380ab326e4b0de29271c824d041193e86b7139
2009-11-23 14:39:14 +00:00
drh
fc7e7c7c84 Bump the version number to 3.6.21.
FossilOrigin-Name: 39214aee6553db76309851e7aa74fcc02d4f59b7
2009-11-23 13:17:26 +00:00
dan
7eee299243 Add some missing comments to fts3 files. No source code changes.
FossilOrigin-Name: b6402b2065b844acb3f1bb94ad964568706bcb86
2009-11-21 03:03:21 +00:00
drh
bfcb4adaf8 Fix a bug in transaction rollback during backup when the CODEC is enabled
that can result in a corrupt backup file.  This is only a problem when
SQLITE_HAS_CODEC is defined.

FossilOrigin-Name: f3398fc4db765e2c63d425d570c4469a84b3328c
2009-11-21 01:33:50 +00:00
drh
8c30f72deb When moving pages as part of autovacuum on an in-memory database, make sure
that the source location is journalled so that a ROLLBACK can occur.
Part of the fix for ticket [564d412f15a00]

FossilOrigin-Name: 2f42f91fe65b0b21671936013df08037091f0cc6
2009-11-20 18:48:35 +00:00
dan
e6828f5503 Merge leaf accidentally created by [1c4984c62f].
FossilOrigin-Name: cae949ce971ca216e0f8880b2f93866619fa05be
2009-11-20 10:23:12 +00:00
drh
456e4e4fba Fix a bug in LIMIT 0 for compound SELECT statement.
The problem was introduced by recent enhancements and has not appeared
in any release.

FossilOrigin-Name: c6ed7e2a73a7a65cfa914ffcad4f603b6b7a22a8
2009-11-20 16:13:15 +00:00
drh
3278315768 If the root pages numbers of the internal schema are adjusted due to
autovacuum on a DROP TABLE statement and that statement later aborts (for
example, due to an OOM error) then reset the internal schema at the
conclusion of the statement.
Partial fix for ticket [564d412f15a].

FossilOrigin-Name: e493b093f8ca722c3160b32a16fb615023978dc9
2009-11-20 15:02:34 +00:00
drh
98829a65cd Avoid unnecessary page cache allocations when move a page while autovacuuming
an in-memory database, since the allocation might fail making it impossible to
rollback the transaction.

FossilOrigin-Name: 9a429349ccc2fa9acd28365a86578f602e87dafb
2009-11-20 13:18:14 +00:00
dan
ac88760aac Add a test to make sure a database can be attached to a single handle twice if not in shared-cache mode.
FossilOrigin-Name: 1c4984c62f393f41f9182ea82546c16d02efa46f
2009-11-20 10:18:06 +00:00
dan
d1414c58e5 Improve comments and other things in fts3_write.c.
FossilOrigin-Name: 1cf0e3cc14bad22867e740736c2886dc1c4a48dc
2009-11-20 05:05:19 +00:00
dan
d313865550 Minor optimizations to fts3 code.
FossilOrigin-Name: b456eacbbb16513d1b27e90015ea58a6dc92cc3b
2009-11-20 02:24:15 +00:00
dan
bf50c46e4c Merge leaves [7cd178a72a] and [598727e6da].
FossilOrigin-Name: 4115c0c286052e32cb81f77a644d530c1766206f
2009-11-19 18:30:14 +00:00
dan
8f4a4f24dd Fix a performance regression introduced while reworking the fts3 code.
FossilOrigin-Name: 7cd178a72ab99c94fdacffb19aad819ae600e57d
2009-11-19 18:28:45 +00:00
drh
88376ca791 Remove an unreachable branch from the OP_Affinity suppression logic.
FossilOrigin-Name: 598727e6dae87f133c658fa125684f6ad978be60
2009-11-19 15:44:53 +00:00
dan
c4c54eed2e Merge fts3-refactor into the main trunk.
FossilOrigin-Name: 551dbe30eab5855756e6356f6ba050f5d1791ef8
2009-11-19 15:26:54 +00:00
dan
16708c4a0d Fix some fts3 related issues with the autoconf and amalgamation build systems.
FossilOrigin-Name: 3b17924754343c0163464dabf01a9c46ffccef28
2009-11-19 15:25:25 +00:00
dan
91b71c1ab2 Merge with [4bd4330709].
FossilOrigin-Name: 7a46d1ebe348ce9f1e8732617a8e280f152fe979
2009-11-19 14:57:14 +00:00
drh
cd7f457e6d Fix a bug introduced with recent optimizations: The unary minus operator
is TK_UMINUS, not TK_MINUS.

FossilOrigin-Name: 4bd43307090258f8652c995b056101c51b81274a
2009-11-19 14:48:40 +00:00
dan
44e0d68c44 Merge the fts3-refactor branch with the trunk.
FossilOrigin-Name: c8d2bd37a4c16154912a0831690584011dc230cb
2009-11-19 02:52:57 +00:00
dan
5dc842ddf7 Fix problems introduced into fts3 as part of the refactoring.
FossilOrigin-Name: fa0998e19d984ee57f4f506c34eb858026cc49c3
2009-11-19 00:15:27 +00:00
drh
f25a5071a6 Performance improvement by avoiding unnecessary calls to memset().
FossilOrigin-Name: 85940468e6f93f7c493fbc129f13cf6233c5d0c0
2009-11-18 23:01:25 +00:00
dan
bd61689382 Add some missing comments and fix some other issues in fts3 code.
FossilOrigin-Name: 2fe579e778b75fbf503c02e01e5424c1926f2b49
2009-11-18 15:35:58 +00:00
drh
2f2855b638 Suppress more instances of unnecessary OP_IsNull and OP_Affinity opcodes.
FossilOrigin-Name: bf6c0bd1c5568c6292ea0a64c8a5071e1bd3079a
2009-11-18 01:25:26 +00:00
drh
3c65721a5b Enhancements to the VDBE opcode loop to reduce the number of machine-code
instructions evaluated by about 10%.

FossilOrigin-Name: 9744ffb3f5bc6d8fd59fbb6577a0d549411cd967
2009-11-17 23:59:58 +00:00
drh
039fc32e84 Code generator tries to avoid pointless OP_IsNull and OP_Affinity opcodes.
FossilOrigin-Name: ebb0c8a3e977dc741704e733b5a5d931d9b27028
2009-11-17 18:31:47 +00:00
dan
f13b704ee6 Improvements to the way fts3 reads the full-text index.
FossilOrigin-Name: 45c051e78651d8204c17cecdda2bde705698881f
2009-11-17 12:52:10 +00:00
drh
68ff78b1b0 Make sure the output of sqlite3OsFullPathname is initialized even if the
fails due to I/O or OOM errors.

FossilOrigin-Name: e4943adb83819dee06e2e9da25ff6d967ca170de
2009-11-16 23:36:33 +00:00
drh
f6a82030a8 Fix a reference to freed memory that can occur following an OOM error in
where.c.

FossilOrigin-Name: 929b6047391411c6f539e47afe6b63d16e352ccb
2009-11-16 22:54:50 +00:00
drh
372726336b Back out part of the change in [23ea2b700fd6d28d] since TH3 reveals some
problems in OOM situations.

FossilOrigin-Name: 15d215d62df72c1bf1e605629692ee40d96546a6
2009-11-16 21:28:45 +00:00
dan
948a5f88ea Add a few extra coverage test cases for fts3.
FossilOrigin-Name: f29c8fcade4aadeae3824975cf59f306c11c906b
2009-11-16 16:36:23 +00:00
drh
af2b572028 Use the sqlite3CtypeMap[] to improve the speed and reduce the size of the
logic in the tokenizer that recognizes identifiers.

FossilOrigin-Name: 1c9243b0760741f48b15efb0da661255177aed8b
2009-11-16 15:11:51 +00:00
drh
d93a8b276d Additional optimizations in sqlite3VdbeRecordCompare().
FossilOrigin-Name: 23ea2b700fd6d28d3b13663d164faba3760c572e
2009-11-16 03:13:40 +00:00
drh
8b249a886d Optimizations to the sqlite3VdbeRecordCompare() routine help it to run 12.5%
faster for some traces.

FossilOrigin-Name: 74c76f0bf946d184275de478ec72220d76342493
2009-11-16 02:14:00 +00:00
dan
4b4d4469f5 Fixes to fts3 integrity check code.
FossilOrigin-Name: d3cae986ee1a176b1b015c3cebcd58ff0c3bdf92
2009-11-14 23:50:11 +00:00
drh
a6c2ed91ca Optimizations to the main loop inside sqlite3VdbeExec() to help VDBE byte code
run a few percent faster.

FossilOrigin-Name: d622ac6ac7a297754494d3a33dbaeea02836272e
2009-11-14 23:22:23 +00:00
drh
bbe879d516 Make the sqlite3VdbeExec() function about 2% faster by storing the opcode
array in a local variable.

FossilOrigin-Name: 8bd3cc82720ac7e8a9d4a03a882b6f8226867b0d
2009-11-14 18:04:35 +00:00
dan
91f0ce39e4 Further OOM testing for fts3 code. Add Tcl code implementing an integrity-check for fts3.
FossilOrigin-Name: c27d46b33e8596b45c562c2742b05030e8899092
2009-11-14 11:41:00 +00:00
drh
1f35012c11 Performance improvements and size reductions on the OP_Seek* family of
VDBE opcodes.

FossilOrigin-Name: ed820f45cf4354b1e1db64049c47a07221a7ff6d
2009-11-13 20:52:43 +00:00
drh
93952eb8c5 Simplify the OPFLG processing logic in the VDBE for a speed boost in the
VDBE processing loop and a reduction in code size.

FossilOrigin-Name: 3352b3eba545c3128efb7665ec91d4df3b16011d
2009-11-13 19:43:43 +00:00
drh
c54055bd25 Force 8-byte memory alignment on memory allocated for VDBE cursors.
FossilOrigin-Name: bdc45ba77fb77771c8ff46b8d6c2dd29e6d3b019
2009-11-13 17:05:53 +00:00
drh
5c03f30a9a Changes to test_intarray.c so that it build with SQLITE_OMIT_VIRTUALTABLE.
Added testcase() macros to expr.c.

FossilOrigin-Name: f0599d28fabe9e67a7150a91c266cb7655a2002e
2009-11-13 15:03:59 +00:00
dan
09977bb9f0 Start reworking fts3 code to match the rest of SQLite (code conventions, malloc-failure handling etc.).
FossilOrigin-Name: 30a92f1132801c7582007ee625c577ea2ac31cdf
2009-11-13 10:36:20 +00:00
drh
91fc4a0c4d Shift more OP_Found opcodes over to using the unpacked format, for improved
performance.

FossilOrigin-Name: 6705ab1ad12cbdbbcf1f3e5439a4e6cbdcc421b3
2009-11-12 20:39:03 +00:00
drh
8cff69df11 Enhance the OP_Found and OP_NotFound opcodes so that they can accept an
array of registers as an unpacked record in addition to a record built
using OP_MakeRecord.  Use this to avoid OP_MakeRecord calls during IN
expression processing.

FossilOrigin-Name: b9eab885cd2ca1a1633329e7036c125e8dba62c5
2009-11-12 19:59:44 +00:00
drh
e3365e6c37 Factor out the IN operator code generation into a subroutine. Use this
subroutine to implement both logic and branching versions of the IN operator.

FossilOrigin-Name: fcff5b7e2d059ffb8d21df57d0c9648bd876e813
2009-11-12 17:52:24 +00:00