drh
5b6c545ba1
When a stale schema-cookie is seen, expire only the one statement that
...
encountered the bad cookie, not every statement on the database
connection. Ticket [b72787b1a7cea1f]
FossilOrigin-Name: 1bca0a7e198391202fd2bc1650c0a62028a9aaa5
2011-02-22 03:34:56 +00:00
dan
ef7075de1f
Fix a problem with "EXPLAIN QUERY PLAN SELECT count(*) FROM tbl".
...
FossilOrigin-Name: 9f9f32882501ac9b6e60f81195a64bdbf6e4497b
2011-02-21 17:49:49 +00:00
dan
e18d495315
Have os_unix.c call sqlite3_log() following errors in certain system calls.
...
FossilOrigin-Name: 01076528a43b61ae20ef6969b7d326de9b5313e4
2011-02-21 11:46:24 +00:00
drh
03c6967f34
An SQLITE_PROTOCOL error counts as a locking error for verification
...
purposes.
FossilOrigin-Name: e87d499a4f8a456111c1f96ca6da31d0810fb7c8
2011-02-19 23:18:12 +00:00
drh
c90e0811d8
Change a testcase() added by the previous checkin into an assert().
...
FossilOrigin-Name: 6f3dad32aa0e1e9ee374302c82bea9bd60d5854b
2011-02-19 17:02:44 +00:00
drh
ab1cc7462f
Add testcase macros to verify that all return values from
...
walTryBeginRead() are tested.
FossilOrigin-Name: 262b6fca0b7a251c02604c684a9f7e7a1434d630
2011-02-19 16:51:45 +00:00
drh
658d76c9f8
Changes to make WAL more robust against SQLITE_PROTOCOL errors.
...
FossilOrigin-Name: fd578a32f8e9f04957359e73f244a60f02afe08c
2011-02-19 15:22:14 +00:00
drh
b1aa0ab6da
Fix the sqlite3ValueFromExpr() routine so that it returns SQLITE_NOMEM
...
on an OOM when trying to extract a NULL.
FossilOrigin-Name: 1061e94fa983a441b289753b873559163ab849e6
2011-02-18 17:23:23 +00:00
drh
cd92e84d07
Remove a no-op code path from sqlite3ExprIsInteger(). Replace it with an
...
assert() that proves it always does nothing.
FossilOrigin-Name: 7af66d1bd53fd5973281646511e4e1d3b16601a3
2011-02-17 15:58:20 +00:00
drh
0cf0e6c912
Remove an assert() that was made redundant by the previous checkin.
...
FossilOrigin-Name: 21db719156deef9fb26aff27a01e324da255c825
2011-02-17 13:52:02 +00:00
drh
6f2e6c0026
Add an ALWAYS() around a always-true test in where.c.
...
FossilOrigin-Name: 8123283ee1a360586a1721a56b4db15718c25ee0
2011-02-17 13:33:15 +00:00
drh
650f432e33
Fix harmless compiler warnings in the query planner.
...
FossilOrigin-Name: 31fc4ba66e76876b2e7b6b2b74c07f47571938ce
2011-02-16 23:32:24 +00:00
drh
e9ce585779
Add a NEVER() around a test that is believed to always be false.
...
FossilOrigin-Name: f7e2ea33d5b37e5b133d96e96a11d2842504355c
2011-02-11 22:54:28 +00:00
shaneh
a91491e5c7
Skip flattening if subquery has LIMIT and outer query is DISTINCT. Fix for ticket 752e1646fc.
...
FossilOrigin-Name: 559739998833643f589fa76d8360080691f83c18
2011-02-11 20:52:20 +00:00
drh
da91e71308
Fix a bug in the new WHERE-clause processing that tries to use an
...
index to resolve IS NOT NULL constraints when SQLITE_ENABLE_STAT2 is
defined. The bug could cause memory overruns and segfaults. The bug
was new to the code and has not appeared in an official release.
Found during structural testing.
FossilOrigin-Name: a5c36b9f39ab9629b857ec9c550f3892c0d94fb4
2011-02-11 06:59:02 +00:00
drh
ac6de304e5
Allow an index paired with a NOT NULL constraint to be used for sorting
...
under the condition that the index be treated as a non-unique index.
FossilOrigin-Name: d78949fc93077e1aa7f05cf9f7e947727939cc96
2011-02-11 03:56:11 +00:00
drh
59b6188bb0
Disable unused NULL tests when SQLITE_ENABLE_STAT2 is not in use.
...
FossilOrigin-Name: 5ecd11788269e78dc26639b2503a10b7e25b2483
2011-02-11 02:43:14 +00:00
shaneh
96887e1619
Add .testctrl option to CLI.
...
FossilOrigin-Name: f85afa0ecc7b31d32659ae53e70771cd42abda38
2011-02-10 21:08:58 +00:00
drh
3625008a54
Split the documentation for sqlite3_wal_checkpoint_v2() and its constants
...
onto separate pages. No changes to code.
FossilOrigin-Name: 0ef8ffd12fce47c3c89e851e5116e2777ea9f435
2011-02-10 18:56:09 +00:00
drh
84e30ca0ed
Prevent a segfault when automatic indices try to use a column with an
...
unknown collating function. Ticket [77aa3b1e6592582e38605d36]. This
check-in also removes some stray \r characters unrelated to the problem.
FossilOrigin-Name: f01030a0df4f94f886ab209ee8766b095da28c1e
2011-02-10 17:46:14 +00:00
drh
3772206769
Refactor the cost function in the query planner. Give extra cost (thus
...
reduce likelihood of selection) to full table scans.
FossilOrigin-Name: 878da276ebf643b716ddd650d4d0ca3595fe5bf2
2011-02-10 00:08:47 +00:00
shaneh
bb201344cf
Make sure code *compiles* with each OMIT and ENABLE option. Mostly changes to test modules.
...
FossilOrigin-Name: 7cc515edc9cade2bc6c74699b3e4153bf2b74ebb
2011-02-09 19:55:20 +00:00
dan
ecac670a8b
Do not report corruption if the the db size header field is greater than the file size on disk unless the two change-counter header fields are identical. Fix for ticket [89b8c9ac54].
...
FossilOrigin-Name: 00c4596f0b270120848ab8d06dcdec7813a9a315
2011-02-09 18:19:20 +00:00
drh
7924f3e8e7
Use macros to define the relative costs of search and seek operations when
...
computing costs in the query planner. Current constants seems wrong and
need to be fixed, but doing so will alter test results. Need more
experimentation to determine accurate relative costs.
FossilOrigin-Name: 5f2ec44b22062ee9d31e20806fcec0101675aced
2011-02-09 03:04:27 +00:00
drh
383d79ee0b
Simplifications to the sqlite3_wal_checkpoint_v2() logic.
...
FossilOrigin-Name: 652b8835c58fc9d474c9837fc966d8857bec4a91
2011-02-09 03:03:16 +00:00
drh
30aa3b93b6
Cleanup to the OP_Checkpoint opcode.
...
FossilOrigin-Name: f611a5a879b7dec1ed1d8bf32413c8a6b81c3172
2011-02-07 23:56:01 +00:00
dan
9c5e3680df
Change blocking-checkpoint tests so that they run once using "PRAGMA wal_checkpoint" and once using calls to sqlite3_wal_checkpoint_v2(). Also fix edge cases surrounding the output variables set by wal_checkpoint_v2().
...
FossilOrigin-Name: 5a4b6652cf3780ffed6fe0fe669e8090b0b71e81
2011-02-07 15:12:12 +00:00
drh
47fe5533a6
Merge the stat2 query planner enhancements into the trunk.
...
FossilOrigin-Name: 499edcbc8ab70fcf35431d4e672c68dbcb6c5aad
2011-02-04 06:36:44 +00:00
drh
9ab724f196
If a deferred foreign key constraint fails on a statement that is not part
...
of a larger transation, make sure that the statement fully ends so that
subsequent invocations of the same statement will not pass the constraint
because they think the transaction is not closed. This is a merge of
the deferred-fk-quirk branch together with a test case.
FossilOrigin-Name: 2f94d4623f9aae1b5bc7041bd85f4e3a7462c60e
2011-02-04 05:47:51 +00:00
drh
0097eb3942
Fix the ATTACH command so that the filename argument can be any expression
...
and so that if authorizer callback gets a NULL pointer for the filename
if the filename argument is anything other than a string literal.
Ticket [9013e13dba5b58c7]
FossilOrigin-Name: e64e1453a9c204d93de1af92dc0b3ca26762b024
2011-02-04 00:51:16 +00:00
dan
d42892ebaf
Fix minor problems with the output of "PRAGMA wal_checkpoint". In both code and tests.
...
FossilOrigin-Name: aef61036b31963e4c3ff4e8acf8c1734dc9394af
2011-02-02 19:17:39 +00:00
drh
87fa53ee8d
Merge in the blocking-checkpoint enhancement, including the new
...
sqlite3_wal_checkpoint_v2() interface and the
PRAGMA wal_checkpoint(full) statement.
FossilOrigin-Name: bac7342c368a7c4f5f2878e08d9581dcbf57dd58
2011-02-02 16:34:08 +00:00
dan
290c939fbf
Remove extra instances of the text "checked out." from sqlite.h.in. Also add new file fts3_aux.c to mksqlite3c.tcl.
...
FossilOrigin-Name: 9897da22c5b51611597350efbe8d5dcaf39d748b
2011-02-01 18:59:34 +00:00
dan
6d311fb0ac
Fix a problem causing builds with SQLITE_OMIT_WAL defined to fail.
...
FossilOrigin-Name: b9b48dd8ddceec009b5a22a3699e1524542c004a
2011-02-01 18:00:43 +00:00
drh
bd1334dfd9
Change pager_truncate() to a different method for extending files while
...
also ensuring that writes are page-size and page-aligned.
FossilOrigin-Name: 874bc8844f6494cdbf700bd884dee67d40f11fc0
2011-01-28 15:46:14 +00:00
dan
fb3828c25f
When extending a database file, do so by writing one or more page-size chunks of data to the file, instead of just a single byte to the end.
...
FossilOrigin-Name: 58577135a81d3f19667b1de6167d2e3f1b74cd53
2011-01-28 15:07:55 +00:00
drh
083310dfcc
Change the weighting of binary searches on tables to 1/10th the cost of a
...
search on an index. Change the assumed reduction in search space from a
indexed range constraint from 1/3rd to 1/4th. Do not let the estimated
number of rows drop below 1.
FossilOrigin-Name: 4847c6cb71423248b186ab7842b97c83e2f5fefd
2011-01-28 01:57:41 +00:00
drh
0b52b7d0cd
Update all built-in VFSes to return SQLITE_OK for the
...
SQLITE_FCNTL_SYNC_OMITTED file-control operation. Also change the
xFileControl methods to return SQLITE_NOTFOUND for unrecognized
operation codes.
FossilOrigin-Name: 6f2c72a0f6579db3f40c079436ca40e3e52bd6d9
2011-01-26 19:46:22 +00:00
drh
15ad92f2ae
More mutexes around another sqlite3StatusAdd() call.
...
FossilOrigin-Name: e3b500fb5d93d98e6e1ddf6d494a841274d1b68d
2011-01-26 13:28:06 +00:00
drh
9bf3da8eab
Add a mutex around an sqlite3StatusAdd() call to prevent the pagecount
...
overflow measurements from getting off in multithreaded applications.
FossilOrigin-Name: 3d8b298dc24fe13a3f390da41f79b8613a6f25a7
2011-01-26 13:24:40 +00:00
dan
6d4fb833b7
Update mutex1.test so that it works with the memsubsys1 permutation (pagecache memory). Change a few instances of SQLITE_MUTEX_STATIC_LRU2 in comments and test code to STATIC_PMEM.
...
FossilOrigin-Name: 456bd5c63b41bae8e389df81e318b830aa314000
2011-01-26 07:25:32 +00:00
drh
25ca568251
Rename the PCache1.mxPinned field to n90pct (since it is 90% of nMax) in order
...
to distinguish it from PGroup.mxPinned. Fix the computation of n90pct so that
it does not overflow adversely on excessively large cache sizes.
FossilOrigin-Name: c85202baac49b22a4be36b9733d44f01d83edb28
2011-01-26 00:07:03 +00:00
drh
1e4040a4b4
Fix new compiler warnings in pcache1.c that were introduced by the recent
...
performance enhancement patches of [e14649301138b684].
FossilOrigin-Name: c17703ec1e604934f8bd5b1f66f34b19d17a6d1f
2011-01-25 18:30:51 +00:00
dan
4d26d585d6
Add a missing call to sqlite3PagerSync() removed by [ce552d975] to the backup code.
...
FossilOrigin-Name: 1965b85318c1fac62fae9691059021b298c17dde
2011-01-25 18:19:24 +00:00
drh
534a58a76d
Make sure the return code from doing an xSync is correctly initialized
...
so that a valid return code is produced regardless of the path taken through
the logic.
FossilOrigin-Name: f12b5d76854c2f294ac60afe38a6dac37eb5b174
2011-01-25 16:48:56 +00:00
drh
951596cdef
Change the name of SQLITE_FCNTL_SYNC to SQLITE_FCNTL_SYNC_OMITTED and only
...
send it when PRAGMA synchronous=OFF. Add better documentation to explain
what that file-control opcode is used for.
FossilOrigin-Name: 64914980855dbbf19512642836ca962a507b3ddb
2011-01-25 16:20:16 +00:00
dan
0ecdeb2414
Fix a couple of typos in comments. No changes to actual code.
...
FossilOrigin-Name: 9167fdb3560b1567a0bdc9a1906a87ec98e161f1
2011-01-25 13:43:35 +00:00
dan
d1cf7e2972
Fix a broken assert() in pager.c.
...
FossilOrigin-Name: 13108ce13c281f31aa60b403567710ae3d925797
2011-01-25 11:33:01 +00:00
drh
41692e9d7c
Shave a few cycles so that performance is better than 3.7.4 in speed tests.
...
FossilOrigin-Name: e14649301138b6840e24a4bbd2cf5205c0f72409
2011-01-25 04:34:51 +00:00
drh
3778ac15dd
Modify the test_quote.c demonstration shim so that it works when
...
SQLITE_THREADSAFE=0 is defined.
FossilOrigin-Name: b70bcccaf5597c8a59cccb64fb997523f7b8fe4f
2011-01-24 20:18:05 +00:00