drh
36ff0bf684
Allow an automatic index to be used if the only uses of declared indexes for
...
the same loop use the skip-scan algorithm.
FossilOrigin-Name: c52f7971e90cac1058d6b66c9e334cbc8607def3
2014-11-18 21:45:35 +00:00
drh
04e8a58669
Merge recent trunk enhancements, including the read-after-ROLLBACK change
...
and the addition of sqlite3_stmt_scanstatus() support, as well as various
minor bug fixes.
FossilOrigin-Name: f09055f3c4348264c7336f90646375f0d98b061e
2014-11-18 21:20:57 +00:00
drh
64b600ff13
Merge in all the other ROLLBACK fixes from the branch-3.8.7 branch.
...
I don't know why I was doing them one-by-one.
FossilOrigin-Name: 296b0c7397790ceadbdb330959e962f6491abc3e
2014-11-18 20:49:30 +00:00
drh
58f95c43ad
Update a couple of test cases to account for the fact that ROLLBACK does not always abort all running SELECT statements.
...
FossilOrigin-Name: abccda769a3f6b755c3bf70b5fb31a5e16718ef3
2014-11-18 20:16:27 +00:00
dan
2b8669a9da
Avoid calling sqlite3BtreeKeysize() on a b-tree cursor in SKIPNEXT or SKIPPREV state.
...
FossilOrigin-Name: 54e7d3fcb1ab21c03ffef1af93ae029a2901098a
2014-11-17 19:42:48 +00:00
drh
77b1deec40
When a SELECT statement is terminated by a ROLLBACK TO operation, make the
...
error message be "abort due to ROLLBACK" rather than
"callback requested query abort".
FossilOrigin-Name: 34fc4a082c192830e48f643549c04a4f91912b8b
2014-11-17 17:13:06 +00:00
dan
302f583aa4
Update a couple of test cases to account for the fact that ROLLBACK does not always abort all running SELECT statements.
...
FossilOrigin-Name: eba171e980fa4491dfee9d7e4df50c87a0ebbf87
2014-11-17 15:22:08 +00:00
dan
48d7014067
Fix the customization interfaces so that they match the documentation.
...
FossilOrigin-Name: fba0b5fc7eead07a4853e78e02d788e7c714f6cd
2014-11-15 20:07:31 +00:00
drh
f9df2fbdcd
Adding the "noskipscan" token to an sqlite_stat1.stat field prevents an
...
index for being used with the skip-scan algorithm.
FossilOrigin-Name: 00fe09505792cd0d104b2da9d040f023e30fa871
2014-11-15 19:08:13 +00:00
dan
70273d0bab
Consider using an automatic-index for a scan even if there exists a possible skip-scan that uses one or more "=" operators.
...
FossilOrigin-Name: 93642a65ef3d53ece322ffd85233b68fc9a86c9d
2014-11-14 19:34:20 +00:00
drh
0a9d9d566e
Do not automatically remove the DISTINCT keyword from "a IN (SELECT DISTINCT ...)" expressions. Fix for [db87229497].
...
FossilOrigin-Name: 98457a57d642b35917eb9ad8f70065e273aad206
2014-11-14 15:42:23 +00:00
dan
dd715f7c57
Do not automatically remove the DISTINCT keyword from "a IN (SELECT DISTINCT ...)" expressions. Fix for [db87229497].
...
FossilOrigin-Name: 55e453aadbb676dda07f0fa537d39ce184ef636c
2014-11-14 15:28:33 +00:00
dan
fad01993b7
Have calls to sqlite3_backup_init() fail if there is already a read or read-write transaction open on the destination database.
...
FossilOrigin-Name: 169b5505498c0a7ee2b5dbb2ba13c41dfaa7c62f
2014-11-13 14:18:25 +00:00
drh
6f9c5669e2
When a transaction or savepoint rollback occurs, save the positions of all open read-cursors so that they can be restored following the rollback operation. Cherry-pick of check-in [dd03a2802f3f27]
...
FossilOrigin-Name: 402780a9c8df9e7ea898bdca49c1191042fe387a
2014-11-13 13:42:39 +00:00
dan
d7b06909ad
Add further tests for rollback operations in the presence of ongoing selects.
...
FossilOrigin-Name: eaf3aae014f59c8d37aa20aa31d54cf13f9e86fc
2014-11-12 17:45:37 +00:00
dan
8023104252
When a transaction or savepoint rollback occurs, save the positions of all open read-cursors so that they can be restored following the rollback operation.
...
FossilOrigin-Name: dd03a2802f3f276525f3cef9a93f825dd8606626
2014-11-12 14:56:02 +00:00
drh
5a2c8c885c
Fix the %c format character in sqlite3VXPrintf() so that it correctly handles precisions larger than 70.
...
FossilOrigin-Name: 839a6df9f98b90fb593534a62145d9c913540bae
2014-11-12 14:12:28 +00:00
drh
51a205410c
Make sure that NULL results from OP_Column are fully and completely NULL and do not have the MEM_Ephem bit set. Fix for ticket [094d39a4c95ee4].
...
FossilOrigin-Name: e1017745e183f5d7429ce787ec2feef946a24f0f
2014-11-12 14:07:28 +00:00
drh
85fabf1444
This is a cherry-pick of version [b5df5ac052].
...
FossilOrigin-Name: d4b2d5d066891e06f2bf4337902b44b000fa9fd2
2014-11-11 22:55:26 +00:00
mistachkin
bfa395d085
Remove some calls to the 'breakpoint' test command.
...
FossilOrigin-Name: 1412fcc480799ecbd68d44dd18d5bad40e20ccf1
2014-11-11 19:07:56 +00:00
dan
2d8e3caa2e
Add tests for sqlite3_blob_bytes().
...
FossilOrigin-Name: a066a3832a7c6de65c3016e77e49ac00e09db749
2014-11-11 16:11:04 +00:00
drh
949d43a5fd
Permit read operations to continue after a ROLLBACK as long as the schema
...
does not change.
FossilOrigin-Name: b5df5ac0529f7b0d1e880a7f4a307e7d77b7fa6c
2014-11-11 14:59:31 +00:00
dan
43f4066e10
Add new test file e_blobclose.test, containing tests for sqlite3_blob_close().
...
FossilOrigin-Name: 5a1eac2419b1462e6f21595a3fff26d9cc49d203
2014-11-11 12:20:35 +00:00
drh
47b7fc7843
Experimental changes that permit read operations to continue after a
...
ROLLBACK, as long as the schema is unchanged.
FossilOrigin-Name: fa6e6a9ae276cad60e9a4abc1bc23cf2809ea786
2014-11-11 01:33:57 +00:00
drh
de58f4fe7f
New test cases for deleting content out from under a SELECT statement.
...
FossilOrigin-Name: 8289c3e9b47f7c2a606a88839f6bf615f8904ac2
2014-11-10 19:16:59 +00:00
dan
923c4b35be
Add test file e_blobwrite.test, containing tests for the sqlite3_blob_write() interface.
...
FossilOrigin-Name: 1df77e5f1bd82de4dc92fe28359c3e56ab3f9ed4
2014-11-10 17:53:03 +00:00
drh
1728bcb07f
Add the eval() SQL function extension in ext/misc/eval.c.
...
FossilOrigin-Name: 27cf665b957f2c0ced403e3032099e80c295598f
2014-11-10 16:49:56 +00:00
dan
b391b94431
Add new test file e_blobopen.test, containing tests for sqlite3_blob_open().
...
FossilOrigin-Name: ecbccd0e594d22b3ae7fabc8037951dc49570bc3
2014-11-07 14:41:11 +00:00
drh
518140ed04
Change the SQLITE_SCANSTAT_EST parameter so that it returns a double for
...
the estimated number of output rows per loop, rather than a 64-bit integer.
Revise the output format for the ".scanstats on" in the shell to make use
of this new capability.
FossilOrigin-Name: f9684000665ae7ef6f89c3773612b8286b8f545a
2014-11-06 03:55:10 +00:00
drh
e1db0db899
Fixes to the Windows VFS to allow memory mapped files to work without WAL support.
...
FossilOrigin-Name: 272fddc14cc322655eeba670bc0f9fc30e5a804c
2014-11-05 21:34:56 +00:00
drh
6d3f91d040
Change the query planner to do a better job of estimating the number rows
...
selected by a BETWEEN operator using STAT4 when both upper and lower bounds
are contained within the same sample.
FossilOrigin-Name: 2d36be5d9a1cdd4fd2d54fc4eeece32a81cbacc1
2014-11-05 19:26:12 +00:00
drh
6b5631e02f
Make sure that NULL results from OP_Column are fully and completely NULL
...
and do not have the MEM_Ephem bit set. Fix for ticket [094d39a4c95ee4].
FossilOrigin-Name: 42705fd7d892c4fdfb95fbbb468c99569beece25
2014-11-05 15:57:39 +00:00
dan
937994aa65
Add a test case to check that the previous commit is effective.
...
FossilOrigin-Name: 948d6e5d07bc14b6de32ec2144c716a5532f894c
2014-11-05 14:19:05 +00:00
mistachkin
fdece7bad1
Skip tests that require WAL mode when it is not enabled.
...
FossilOrigin-Name: 6fc4ead26d19b9348bbda34c3053ae1e066abc32
2014-11-04 19:52:15 +00:00
dan
e2f771b047
Add further tests. Fixes so that compilation without ENABLE_STMT_SCANSTATUS works.
...
FossilOrigin-Name: a2303c719222f1effb51acc6b37930561148c00c
2014-11-03 15:33:17 +00:00
dan
037b5324bd
Remove unused variable from struct WhereInfo. Add some explanatory comments to new code.
...
FossilOrigin-Name: f5313e0c680d9baebefb1cf50ddadedd4418a334
2014-11-03 11:25:32 +00:00
dan
6f9702ed4d
If SQLITE_ENABLE_STMT_SCANSTATUS is defined, record the number of times each VDBE opcode is executed. Derive the values returned by sqlite3_stmt_scanstatus() from these records on demand.
...
FossilOrigin-Name: 9ea37422a8cc2fce51bb10508e5e90f40fd4b511
2014-11-01 20:38:06 +00:00
dan
89e71646df
Minor fixes and documentation improvements for sqlite3_stmt_scanstatus().
...
FossilOrigin-Name: 8d8cc9608d30bb65fffcfe488e904411cbbc7f41
2014-11-01 18:08:04 +00:00
dan
04489b6dce
Add the experimental sqlite3_stmt_scanstatus() API.
...
FossilOrigin-Name: 6a9bab34aeb6a01b612211a28c140de60a3e883c
2014-10-31 20:11:32 +00:00
drh
ca3e10ea37
Merge recent trunk enhancements, and in particular the improvements to
...
the b-tree balancing logic, into the sessions branch.
FossilOrigin-Name: 28b044a51215a3f64dafb2cf3b6cb7d2029580ef
2014-10-31 14:53:32 +00:00
drh
af8f513f9d
Fix the %c format character in sqlite3VXPrintf() so that it correctly
...
handles precisions larger than 70.
FossilOrigin-Name: 08a27440f19b7fc884464832e6105af1bf008172
2014-10-29 18:20:18 +00:00
drh
a26b9a7727
Fix problems with running UPDATE and DELETE against a VIEW and referencing
...
the rowid in the WHERE clause. This is a cherrypick of [95f8ebdbf87326f2]
and [8523670d50004f3].
FossilOrigin-Name: cc33e846c8509419f0a1fbfb286807b4c137788d
2014-10-29 01:26:25 +00:00
drh
739383d25d
In the OP_Column opcode, when extracting a field that is past the end of
...
a short record (because the row was originally inserted prior to ALTER TABLE
ADD COLUMN) then make sure the output register is fully NULL and does not
contain leftover flags (such as MEM_Ephem) from its previous use.
Fix for ticket [43107840f1c02]. This is a cherrypick of
check-in [24780f8ddc1683fc].
FossilOrigin-Name: 304ea6ba6f4cf40a76d32d37af73a253f493ba47
2014-10-29 01:13:58 +00:00
drh
22e8d833f0
In the OP_Column opcode, when extracting a field that is past the end of
...
a short record (because the row was originally inserted prior to ALTER TABLE
ADD COLUMN) then make sure the output register is fully NULL and does not
contain leftover flags (such as MEM_Ephem) from its previous use.
Fix for ticket [43107840f1c02].
FossilOrigin-Name: 24780f8ddc1683fc62180e6961dc6bfe1168f4df
2014-10-29 00:58:38 +00:00
dan
aa55563d7e
Add new test file e_totalchanges.test, containing tests of the sqlite3_total_changes() interface.
...
FossilOrigin-Name: f84af4adcc34d7a4c72027bf5b038a1a45a4c307
2014-10-28 20:49:59 +00:00
dan
c3da667b25
Modify the documentation for sqlite3_changes() to make it more testable. Add tests and minor fixes for the same.
...
FossilOrigin-Name: 41cdd0c422d61533a94870cb5ad094682956d472
2014-10-28 18:24:16 +00:00
dan
dd8c460081
Fix a crash that could occur if the WHERE clause of an UPDATE statement on a view that does not feature a column named "rowid" contains a term such as "rowid=?".
...
FossilOrigin-Name: 8523670d50004f3112b7871f11c8b8b02aab96ab
2014-10-28 16:50:10 +00:00
dan
f77b610e44
Add test file e_wal.test.
...
FossilOrigin-Name: fc6920b5483eeeb06a474ff399a21afa51dc4859
2014-10-27 11:25:28 +00:00
drh
059b2d50e1
Enhance the automatic index logic so that it creates a partial index when
...
doing so gives the same answer for less work.
FossilOrigin-Name: d95d0313c447f5baeabdb17284d8606331ab7d49
2014-10-24 19:28:09 +00:00
dan
d6446a0abe
Test that sqlite3ota_open() works with URI paths. Fix some other issues.
...
FossilOrigin-Name: 6fd09854feb46739f42b7e7a5e76680d5f9b8c5a
2014-10-21 19:35:03 +00:00