Commit Graph

11610 Commits

Author SHA1 Message Date
drh 01752bc805 Adjust the command-line shell EXPLAIN indentation logic to handle the
second loop of an UPDATE that reads out a RowSet.

FossilOrigin-Name: ea141a9b87dbb5fa1402bf7f6e36e89cc9de3cb3
2013-11-14 23:59:33 +00:00
drh 052e6a8a07 Remove an unused local variable.
FossilOrigin-Name: 10d59226382adcb8016fc2d927e5a0c0b36f3980
2013-11-14 19:34:10 +00:00
drh 400fcbad71 Simplification to the progress callback check. On branch removed.
FossilOrigin-Name: 24ef16548eebcdb9d8b40308f6a16dabf8f8d474
2013-11-14 00:09:48 +00:00
drh e6400b9901 Make sure the progress callback is invoked prior to an SQLITE_ROW return if
it is overdue to be called.

FossilOrigin-Name: 21f59b04f74738d08ebad693646bbaea24dc45ef
2013-11-13 23:48:46 +00:00
drh 1f57794c92 Merge the skip-scan enhancement into trunk.
FossilOrigin-Name: b0bb975c0986fe01f1184c1d4888fe397174ad0f
2013-11-13 20:46:11 +00:00
drh d24474475e Import the "PRAGMA vdbe_eqp" enhancement and the enhanced EXPLAIN formatting
the shell from trunk.  Fix a bug in skip-scan and add a test case to prevent
a regression.

FossilOrigin-Name: f668616a29686f3ce532731c534b168e536adbb5
2013-11-13 19:01:41 +00:00
dan a98bf365fe In the shell tool, if an "EXPLAIN" command is executed in ".explain on" mode, attempt to automatically indent the bodies of loops in the output VDBE program.
FossilOrigin-Name: e7d34ec6814ed4606a6d5d7f68c218ae4d25e666
2013-11-13 18:35:01 +00:00
drh 84e55a80db Add the "PRAGMA vdbe_eqp" command, only available with SQLITE_DEBUG. Simplify
some of the other debugging logic.

FossilOrigin-Name: 8ce33f4c818e1c785a1c176f6f631b8184e1166b
2013-11-13 17:58:23 +00:00
drh e084f40b37 Add VDBE comments to the beginning and end of skip-scan loops.
FossilOrigin-Name: 0c85d93b52311dee7980d977be6ed0dc70b060c1
2013-11-13 17:24:38 +00:00
drh 2e5ef4ed77 Improve the way that skip-scan loops are constructued. Add test cases.
Improved the scoring of skip-scan loops.

FossilOrigin-Name: 5e75ab93881b85801cb4ebf70f2063ff7c51ac19
2013-11-13 16:58:54 +00:00
drh c2b23e7a98 Add test cases for skip-scan. Enhance "do_test" so that if the expected result
is of the form "/*..*/" or "~/*..*/" it treats the expected result as a glob
pattern rather than as a regular expression.  Fix a bug in ANALYZE result
loading associated with WITHOUT ROWID tables.

FossilOrigin-Name: d3e6e9b2a74074c05429d3c341c23525504351ab
2013-11-13 15:32:15 +00:00
drh cd8629e4bb Add the ability to use an index even if the left-most columns of the index
are unconstrainted, provided that the left-most columns have few distinct
values.

FossilOrigin-Name: 27dd5993d1ae5625eb94bf406421eb390d001be9
2013-11-13 12:27:25 +00:00
drh c181c26cba Avoid an unnecessary OP_IfNull while doing an indexed search.
FossilOrigin-Name: 5196000930600d0cd931b87e864507791b9dab08
2013-11-13 08:55:02 +00:00
mistachkin 015a304f75 Adjust the SQLITE_MALLOCSIZE defines, primarily to make sure _msize gets used with MSVC when appropriate.
FossilOrigin-Name: 4e7e805e1139b2dc05d85e86e5c8254e5d361bf2
2013-11-12 21:37:04 +00:00
mistachkin 3aa4be39a9 Fix harmless compiler warning.
FossilOrigin-Name: ddacd10105c6df2d3a9d707947e72c62e88212eb
2013-11-12 21:10:02 +00:00
drh 5e6790cb15 Minor enhancements to the auxiliary information added to EXPLAIN output with
SQLITE_EXPLAIN_ENABLE_COMMENTS.

FossilOrigin-Name: 0d1328e33ca761eddcf8a50e8e83c997861e9047
2013-11-12 20:18:14 +00:00
drh e54df42d87 Break out the structure and macro definitions of where.c into a separate
header file whereInt.h for easier editing and debugging.

FossilOrigin-Name: c44467124623733aac64096d605f16139b733a7f
2013-11-12 18:37:25 +00:00
dan 85963f5474 When possible, have FTS use 32-bit operations to read varints from the database.
FossilOrigin-Name: aa7ba302ed13aedde89b5bcbe9119799c0da8a42
2013-11-12 17:46:44 +00:00
drh 5c7917e4b4 A better (simpler) fix to the count(*) problem addressed in the previous
check-in.

FossilOrigin-Name: 0f924c6ef6cf2ac5a61aafa8dd8e3309b3970499
2013-11-12 15:33:40 +00:00
drh abcc1941db Make sure the count(*) optimization works correctly on WITHOUT ROWID tables.
FossilOrigin-Name: 91174779786be07d63f3c4a5277602ddc5f0ba26
2013-11-12 14:55:40 +00:00
dan e3ab729a9c Update test command [explain_i] to handle the opcodes used by virtual tables (VNext, VFilter etc.).
FossilOrigin-Name: 1b215ee3219750d3beda8f3628c8673efd517061
2013-11-12 12:30:09 +00:00
dan ff4b23ba9e Fix for [4065ac8595]: Do not order CROSS or LEFT joins, even if the right-hand-side is a virtual table.
FossilOrigin-Name: e2684ece455f53563ae6da7cbb5505d9a4a3076a
2013-11-12 12:17:16 +00:00
drh f8396b201c Fix an error message in the spellfix extension so that it conforms to the
style of error messages in the core.

FossilOrigin-Name: b896ae3d2787c370be3ff5d09da7d631a16d3a2a
2013-11-12 01:11:56 +00:00
drh 5d2f6c211e Add a comment to the sqlite3_index_info structure indicating that the new
field is only available in SQLite 3.8.2 or later.

FossilOrigin-Name: 239648f8ccf057eb05841ce65b108da53fdbf0a4
2013-11-11 23:26:34 +00:00
dan 14ec33f73b Fix typos in compile and run-time tests of the sqlite library version number in rtree.c.
FossilOrigin-Name: f58d57017199421167dae8ebc67db2f19be45082
2013-11-11 19:56:35 +00:00
dan a9f5815b67 Add a way for virtual tables to return the expected number of rows for a scan (not just the overall cost) to SQLite. Have the rtree module make use of this.
FossilOrigin-Name: 5a3cfd747a85480d215784817c3821d87ecfa2f7
2013-11-11 19:01:33 +00:00
drh 4308e348d7 Remove unreachable code, replacing it in most cases with assert() or NEVER()
macros.

FossilOrigin-Name: 924d63b283a3d059838114c95d42c6feaf913529
2013-11-11 16:55:52 +00:00
mistachkin d55bccd7cc Fix issue with several memory allocation tests due to KeyInfo allocations now being shared.
FossilOrigin-Name: 569fedd6bb07bdd3430da8dc65de4a9fdfe204cc
2013-11-11 03:37:04 +00:00
drh 3da046d8ba Convert several ALWAYS() macros in vdbe.c into assert() statements.
FossilOrigin-Name: acc40ff6b47595432ebc1b3ec71ac50384bec323
2013-11-11 03:24:11 +00:00
mistachkin 9939118083 Fix several harmless compiler warnings.
FossilOrigin-Name: e6ff492f0d475c395b82e2b3b294155674d4c6d1
2013-11-11 02:46:32 +00:00
mistachkin 055f16543b Modify a HeapValidate assert in the Win32 native allocator.
FossilOrigin-Name: aaed7d1d3ba0aef9f99fb157d3704b9f279aef71
2013-11-11 01:42:10 +00:00
drh af1c01c107 Fix a problem in OP_IdxDelete as used by REPLACE conflict resolution that
comes up due to recent enhancements that reduce the work required for
UNIQUE NOT NULL indices.

FossilOrigin-Name: 61d7d4753f36932293c0eb1ca893b17d18355ad3
2013-11-11 00:43:21 +00:00
mistachkin 080464948f Fix typo in comment and remove superfluous blank line. No changes to code.
FossilOrigin-Name: 023233f16ec2e6f582a7491643036ba5cad9379c
2013-11-10 00:03:11 +00:00
mistachkin 9858bf2fb1 Fix compilation errors with some compilers that do not reference recent Windows SDK header files.
FossilOrigin-Name: a5805976f0e06ece2eeebd825f383a1ee88121fc
2013-11-09 23:55:18 +00:00
mistachkin c6efe12d0d Fix memory type mismatch when compiled with MEMDEBUG.
FossilOrigin-Name: 2c32bd6d4d5da2055633e8fb43ee184f729d8b91
2013-11-09 23:44:02 +00:00
drh 660760f8e6 Add the sqlite3_win32_compact_heap() function for cleaning up memory
allocations on Win32 system.  Also cleanup the winGetTempname() function.
Changes to the Win32 VFS only.

FossilOrigin-Name: d06d9fdb6e6ac369035c825d9c30970115b3ba71
2013-11-09 22:08:10 +00:00
drh 6c41b61f62 Updates to documentation on sqlite3_last_insert_rowid(). No changes to code.
FossilOrigin-Name: a4c5804efc63ff993e93f8a7b6acb6bb0a19dd3e
2013-11-09 21:19:12 +00:00
mistachkin dc7b05558a Use the UNICODE_STRING_MAX_CHARS constant from WinNT.h.
FossilOrigin-Name: 3fefe4dd43539ec7e525ef58f0bfeffd31288ebd
2013-11-09 21:11:36 +00:00
mistachkin fd4b90be1a Furhter cleanup of the winGetTempname function.
FossilOrigin-Name: 674de36bcaafc1130b7603e69616c71fc8cd7de7
2013-11-09 21:10:47 +00:00
drh eb091cdfc4 Updates to requirements marks. No changes to code.
FossilOrigin-Name: 8a0366285b94dc43d932736e7b1eedb71e241857
2013-11-09 19:47:15 +00:00
drh d2fe3358cf Throw an error if AUTOINCREMENT appears in a WITHOUT ROWID table.
Updates to API documentation to discuss WITHOUT ROWID.

FossilOrigin-Name: b1abb2b078d1cb9ec5fbd7f98221914b93632e9f
2013-11-09 18:15:35 +00:00
mistachkin 7f9d179884 Add more assert() statements and fix compilation issues when the Win32 native heap is not enabled.
FossilOrigin-Name: fbf8c3828327d19bbce0d7f6735e7577abfd54b3
2013-11-08 20:10:57 +00:00
mistachkin 5134a8178d Disable use of HeapCompact on Windows CE as it is not available on all versions.
FossilOrigin-Name: e9694b877178572665048d1015ca033c469160e7
2013-11-08 19:51:12 +00:00
mistachkin 2eb0966ef2 Adjust the winMemInit return code handling used when resetting the Win32 native heap.
FossilOrigin-Name: 37853665e75fc92b4d15e6db0b3346722527e799
2013-11-08 18:52:45 +00:00
mistachkin 17bc3ff956 Minor corrections to logging for sqlite3_win32_compact_heap().
FossilOrigin-Name: 71347d021bea90ad7e4cc0d3e54940ce29b9ea69
2013-11-08 18:37:02 +00:00
mistachkin e8f91053f6 Enhancements to the Win32 native heap integration.
FossilOrigin-Name: c54dc9672b686c8e323eac0c33cd90ea89d36364
2013-11-08 18:13:48 +00:00
drh 511717c645 Fix harmless compiler warnings.
FossilOrigin-Name: 0077c0772a884b54d81fa3733aac6f0c364ef1a8
2013-11-08 17:13:23 +00:00
drh 95a5bcbb00 Merge the Cygwin directory separator fix. Also fix a C++-ism in the
multiplexor code so that it will compile on MSVC.

FossilOrigin-Name: 830629d31d171155d90ff87ae8e70094d17bb2d3
2013-11-08 17:03:50 +00:00
drh 392ee21d1a Performance improvement: Avoid unnecessary seeks on REPLACE INTO for a
WITHOUT ROWID table.

FossilOrigin-Name: fd11afa5f5c853dcac2290444b581a3fe1d4332d
2013-11-08 16:54:56 +00:00
drh fc8d4f96b4 Performance improvements:
Avoid unnecessary seeks when doing a single-row UPDATE on a WITHOUT ROWID
table.

FossilOrigin-Name: 6f187a0fb1b09ebc4732c4afbf3c813f82e069f1
2013-11-08 15:19:46 +00:00