dan
900defa07a
Merge latest trunk changes.
...
FossilOrigin-Name: e00ed717fbe456010ec6c746490d7c3e9d94ec5a
2014-03-03 14:45:06 +00:00
dan
fbf0f0e1f6
Fix a segfault that can occur following an OOM error.
...
FossilOrigin-Name: 7fdd378d54754a3ffdc01c6c0a66cf6d5899a495
2014-03-03 14:20:30 +00:00
drh
f21fa489b1
Change the MEM_Dyn flag so that it means that Mem.xDel exists and must
...
be used to free the string or blob. Add tighter invariant checks on Mem.
FossilOrigin-Name: e3f6c61e0333d4d237dcd2ba2e404f0a91ee5069
2014-03-03 00:12:39 +00:00
dan
7e065fcf7d
Merge trunk changes.
...
FossilOrigin-Name: 9c1747b5ded995e77fdab2fa9d334ec3c17c7c14
2014-03-01 19:45:23 +00:00
dan
3833e934d3
Remove the vdbeRecordCompareLargeHeader function. Fix some other details.
...
FossilOrigin-Name: 3861e853105cb8da344c7eebd2e455622b26395e
2014-03-01 19:44:56 +00:00
drh
c91b2fd310
Change the MEM_Dyn flag so that it means that Mem.xDel exists and must be
...
used to free the string or blob. Add tighter invariant checks on Mem.
FossilOrigin-Name: 44e1c33767cae3bf2cbd2238831fe67197009b43
2014-03-01 18:13:23 +00:00
drh
75fd054201
Factor the Mem invariant checker into a separate procedure (rather than a
...
macro) so that it can be more easily extended.
FossilOrigin-Name: 354699d50e7d251504a7b3d6fbec9e5bcf99557f
2014-03-01 16:24:44 +00:00
drh
defbd9dade
Add extra assert() statements trying to catch a Mem object in an inconsistent
...
state.
FossilOrigin-Name: 4aeb3ae435c78070232fef21a147fde4e1c5cd31
2014-03-01 14:45:18 +00:00
drh
efbf3b1a10
In the command-line shell add the (undocumented and unsupported) ".eqp"
...
command and -eqp command-line option, to cause EXPLAIN QUERY PLAN to be
run on each SQL statement as it is evaluated. Intended use is for analysis
of the query planner.
FossilOrigin-Name: e6ecf7337658624d664e1e71ba3fc527fd6578c1
2014-02-28 20:47:24 +00:00
drh
07901eb8c3
Provide an #ifdef in shell.c to work around issues when cross-compiling
...
from Ubuntu to windows.
FossilOrigin-Name: 0a3579d9b9d2a60bb85a9811bc7936edb88debae
2014-02-28 19:37:45 +00:00
dan
597515d70c
Update some test cases that deal with corrupt databases.
...
FossilOrigin-Name: 3a09f5605ac7c6e503eb10acfdc607010414d917
2014-02-28 18:39:51 +00:00
dan
063d4a041a
Minor tweak to vdbeRecordCompareInt().
...
FossilOrigin-Name: 284bde0ee20261737446eb8f5b6b36ad9bc3f355
2014-02-28 09:48:30 +00:00
dan
a6efad8a97
Merge in latest trunk changes.
...
FossilOrigin-Name: 8f30b09518d23c3f6cecd244a66ef918fdb55323
2014-02-27 20:52:26 +00:00
dan
3b9330f83c
Further changes to sqlite3VdbeRecordCompare().
...
FossilOrigin-Name: 570893740067a7caa952f259fa078cdf67017d71
2014-02-27 20:44:18 +00:00
drh
69b30abd59
A better way of handling the USE_SYSTEM_SQLITE #define in shell.c.
...
FossilOrigin-Name: 51ce713c6ee91bdf0126155334dcc800b3daa509
2014-02-27 15:11:52 +00:00
drh
c718190768
Add #defines to the command-line shell source code (shell.c) so that it
...
can be imported directly into other projects (ex: Fossil) and used without
editing.
FossilOrigin-Name: a6690400235705ecc0d1a60dacff6ad5fb1f944a
2014-02-27 15:04:13 +00:00
drh
7e4efaecad
More efficient removal of duplicates in recursive queries using the UNION
...
compound operator.
FossilOrigin-Name: 06c2db875e6cabd81c2a153b2fa4aba03eaed268
2014-02-26 21:35:31 +00:00
drh
3852b68edd
In the command-line shell for CSV import, if the lines are \r\n terminated
...
and the last field is blank, make sure an empty string and not a "\r" string
is imported.
FossilOrigin-Name: 9c2e7612cd137895e13ee872e668ce1216719d85
2014-02-26 13:53:34 +00:00
drh
434a93147c
Improved handling of constants and especially constant functions in the
...
ORDER BY clause of a query. Do not optimize out "ORDER BY random()".
Fix for ticket [65bdeb9739605cc2296].
FossilOrigin-Name: dca1945aeb3fb005263f9be00ee8e72b966ae303
2014-02-26 02:26:09 +00:00
drh
0baa035a1e
Do not allow temporary registers to be in use across an OP_Yield within a
...
co-routine. Fix for ticket [8c63ff0eca81a9132d8].
FossilOrigin-Name: 97a8c9733cba97c78e979dfd5c66610c23e90288
2014-02-25 21:55:16 +00:00
dan
1fed5dab0d
Attempt to speed up sqlite3VdbeRecordCompare() by various means. This code is in an interim state.
...
FossilOrigin-Name: 85206e0bbac29adab52bef795f6d1479f2ae2c0e
2014-02-25 21:01:25 +00:00
drh
e8c1eba9a9
Also adjust the order of files in the amalgamation to ensure that
...
_FILE_OFFSET_BITS is defined before any #include, for QNX.
FossilOrigin-Name: 23001a85cd334090cf6c70d4d7e722a01f4f6899
2014-02-25 18:12:58 +00:00
drh
5e990bea51
QNX requires that _FILE_OFFSET_BITS be set prior to any system #include.
...
FossilOrigin-Name: 953cdd6adadfd46b51ad61d7939cecca154a02cb
2014-02-25 14:52:01 +00:00
mistachkin
151d05cd39
Fix several small style/consistency issues with the previous check-in.
...
FossilOrigin-Name: 2477b3a294beb35f806a38f3ebc008942ba01617
2014-02-24 21:42:33 +00:00
mistachkin
1925a2e6f8
Enhance testing support for the Win32 VFS dynamic extension loading facilities.
...
FossilOrigin-Name: 53081e7202fb55f792a78e73627466eb0200f11c
2014-02-24 21:20:25 +00:00
dan
98c91905c9
Close some stray connections in walro.test.
...
FossilOrigin-Name: d6746cabaa22429644c956a4b5fd91896376de2d
2014-02-24 19:49:36 +00:00
drh
9d41bc105d
In memsys5, initialize new allocations to non-zero bytes. Change the content
...
of freed allocations to prevent use after free. These changes in SQLITE_DEBUG
only.
FossilOrigin-Name: ba5f0a5599dece6d8f3dfe652800c28875c74a24
2014-02-24 19:07:51 +00:00
drh
15ab9418d9
Remove an unused variable from the VDBE_PROFILE compile-time option. Keep the
...
opcode count in an u32 instead of an int.
FossilOrigin-Name: 4df0ac9023d9261145a4425a508ba009a10276fc
2014-02-24 14:24:01 +00:00
drh
4d87aaed56
Fix the text of a comment used to generate VDBE opcode documentation so that
...
it omits symbols that can be mistaken for a hyperlink by the parser.
FossilOrigin-Name: b46d4e8923e6e367412bba7aeac07039bbcbabd1
2014-02-20 19:42:00 +00:00
drh
06280ee582
Fix a harmless shadowed-variable warning.
...
FossilOrigin-Name: 824029090d1c4c4c608f67dd197961eba29c039d
2014-02-20 19:32:38 +00:00
drh
4300c1ae3b
Make sure that the difference between two string pointers is passed into
...
sqlite3_mprintf() as type "int".
FossilOrigin-Name: d5d973fedcf5a2eea219f10e11ba3dacdd0593f0
2014-02-20 19:23:15 +00:00
drh
5655c549aa
Add the VdbeCoverageNeverTaken() macro, and comments that better describe how
...
the VDBE branch coverage measurement works. Add some tags to provide 100%
VDBE branch coverage.
FossilOrigin-Name: c1e94169dd8eb80b4d18c73be9f81585330d11ad
2014-02-19 19:14:34 +00:00
drh
3d77dee935
Add the SQLITE_NOTNULL P5 code for comparison operations - really a composite
...
of SQLITE_NULLEQ and SQLITE_JUMPIFNULL. This flag indicates that NULL operands
are not possible and raises and assert() if NULL operands are seen.
Also omit an unnecessary scan of the sqlite_sequence table when writing
into an AUTOINCREMENT table.
FossilOrigin-Name: d2c047f304848e49864ed8c216b48fd671fa3916
2014-02-19 14:20:49 +00:00
drh
c0bf493ea5
Make sure a multi-row VALUES clause works correctly in a compound SELECT.
...
FossilOrigin-Name: 85b355cfb40e8dbeb171980204ffad897184063f
2014-02-19 01:31:02 +00:00
drh
49d9ba6354
Tweaks in support of VDBE branch test coverage.
...
FossilOrigin-Name: b97825646996792d0a67b83f135658027c8569ca
2014-02-19 00:53:46 +00:00
drh
f4345e40a0
Fix VDBE branch accounting on comparison operators.
...
FossilOrigin-Name: b287520c9226f7a9fab98142f5c207bfe959cd7e
2014-02-18 11:31:59 +00:00
drh
7d1761059b
Add VdbeCoverage() and VdbeCoverageIf() macros for improved VDBE coverage
...
testing.
FossilOrigin-Name: b92d31a97d5fe4606d9ae1393c7f3e052f46bf5a
2014-02-18 03:07:12 +00:00
drh
552fd45441
Improvements to "NOT IN (SELECT ...)" processing. Only test for NULL values
...
on the RHS on the first iteration, then remember the result. There has been
logic to do this for year, but it didn't work right and ended up repeating
the NULL test on every iteration. This inefficiency was found using the
VDBE coverage testing tools.
FossilOrigin-Name: 915f6f1c7aab54583729e60bdc1565f25ecc6f74
2014-02-18 01:07:38 +00:00
drh
bb13813ed1
Merge in performance enhancements for INSERT operations, especially INSERTs
...
on tables that have no affinity columns or that have many indices or INSERTs
with content coming from a SELECT. Add the SQLITE_TESTCTRL_VDBE_COVERAGE
test control and the SQLITE_VDBE_COVERAGE compile-time option used for measure
coverage of branches in VDBE programs.
FossilOrigin-Name: a72687699ba2af2e7383be7371d4121750c7e34f
2014-02-17 23:52:13 +00:00
drh
688852ab15
Add logic to do test coverage measurements on the VDBE code.
...
FossilOrigin-Name: ce184c7bb16988641d37c908d9b3042456d4be3d
2014-02-17 22:40:43 +00:00
drh
8be09304b7
Add a test case for OP_SoftNull.
...
FossilOrigin-Name: f29d194e03d6bcc78bf883b77e591dbccada02f0
2014-02-17 15:40:19 +00:00
drh
7591051a73
Merge the VDBE_PROFILE fixes from trunk.
...
FossilOrigin-Name: 2914e4191121004a3f564b1fbf1c235dcc595503
2014-02-17 15:36:39 +00:00
drh
57bf4a8eeb
Avoid unnecessary calls to applyAffinity() during INSERT and UPDATE
...
operations, especially for table that have indices and tables for which
all columns have affinity "NONE".
FossilOrigin-Name: 35b4d6e938164fabaf30b504c54cfd9a69060cee
2014-02-17 14:59:22 +00:00
drh
2926f9694f
Fix the VDBE_PROFILE logic. Add a script to process the output file.
...
FossilOrigin-Name: 7adb3da235c8c162c84f05ef4ccf1cc463805d5f
2014-02-17 01:13:28 +00:00
drh
05a86c5c0f
Enhance the code generator for INSERT INTO ... SELECT so that the SELECT
...
generates output directly in the registers that INSERT INTO will be using,
in many cases, and OP_SCopy operations can thus be avoided.
FossilOrigin-Name: aa2d8b0e8154dd2f5e2c837dc11ab362b083495b
2014-02-16 01:55:49 +00:00
drh
cfc6ca4179
Seek past NULLs in a top-constrained search. Avoid checking for NULLs in
...
the body of the search.
FossilOrigin-Name: e07a32f30862acf3b322d4d8deb015846d6f8f5f
2014-02-14 23:49:13 +00:00
drh
f78da0e6af
Reduce the number of cases where it is necessary to check for NULL after
...
the loop terminating condition.
FossilOrigin-Name: 3c1ae447dec8fc2af1c5105134061717594ac0e0
2014-02-14 20:59:53 +00:00
drh
4a1d365903
Add OP_IdxGT and OP_IdxLE as distinct opcodes. Formerly these operations where
...
done using OP_IdxGE and OP_IdxLT with the P5 flag set. But VDBE code is easier
to read with distinct opcode names. Also change OP_SeekGe to OP_SeekGE, and
so forth, so that the capitalization is consistent. The whole point of this
change is to improve the readability of VDBE listings.
FossilOrigin-Name: b6bea903ac8e1717ed50b221d73bd0be061c7663
2014-02-14 15:13:36 +00:00
mistachkin
2953ba9e20
Revise how the Tcl system encoding is handled by the test suite.
...
FossilOrigin-Name: 9e573198e107f1b85ee37c52a10343d38968bda1
2014-02-14 00:25:03 +00:00
mistachkin
3f40d40ad9
Improvements to the makefile and README for MSVC.
...
FossilOrigin-Name: b22b61406899c2694dae984995d2484fdb8122f1
2014-02-13 21:57:48 +00:00