1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-11-12 13:01:09 +03:00
Commit Graph

1306 Commits

Author SHA1 Message Date
mistachkin
1b186a9947 Experimental work to allow SQLite to use the native Win32 heap API.
FossilOrigin-Name: bf3d0ab53829350637283442f75071fe6d925245
2011-08-24 16:13:57 +00:00
drh
4e50c5ec48 Further testing and bug fixing for sqlite_stat3. Added the Index.avgEq
field to index statistics.  Fixed several problems in the query planner
associated with stat3.

FossilOrigin-Name: 89b2f70884cad0abdf4c66cb64ecddb2820ded74
2011-08-13 19:35:19 +00:00
drh
faacf17cc1 Begin a branch that experimentally replaces sqlite_stat2 with a new table
called sqlite_stat3 that will hopefully facilitate better query
planning decisions.

FossilOrigin-Name: 52e1d7e8ddd4bb5ef3a9d00fd2d719a8a784f807
2011-08-12 01:51:45 +00:00
dan
da79cf0cc9 Fix for [54844eea3f]: Do not create automatic indexes on correlated sub-queries.
FossilOrigin-Name: 9f14fa56ba31afe3de8b0cf26ed09573a2cc2283
2011-07-08 16:10:54 +00:00
drh
a9b1b91436 Extend the SQLITE_TESTCTRL_OPTIMIZATIONS option to disable DISTINCT
optimizations.

FossilOrigin-Name: 18501dd1a8aa8299c091c36e35b9a10a29d4467b
2011-07-08 13:07:02 +00:00
dan
38cc40c216 Experimental changes to improve optimization of DISTINCT queries.
FossilOrigin-Name: f7ba0219ef2f235543c258be736955d91ca5ecce
2011-06-30 20:17:15 +00:00
drh
097ce2caab Add a bit to the SQLITE_TESTCTRL_OPTIMIZATIONS setting that will disable
affinity when writing to any index, regardless of whether or not the index
is on a manifestation of a view.  This allows better testing of the fix
for ticket [91e2e8ba6ff2e2].

FossilOrigin-Name: b61a76a53af04f731fe7617f7b6b4fb2aef6587b
2011-06-23 17:29:33 +00:00
dan
c17d696c14 Return an error if localtime_r() fails within one of the date/time functions. Fix for [bd484a090c].
FossilOrigin-Name: 76ae8257efc1df6e20ce5718d4824adbbde423ec
2011-06-21 12:47:30 +00:00
drh
0a32fa6d81 Use only unsigned values in the implementatin of LIKE and GLOB so that
values won't overflow to negative when dealing with malformed UTF8.

FossilOrigin-Name: 77f01578bb565d1bc884b374b68bae10ce34a084
2011-06-13 12:19:21 +00:00
drh
55a0959a18 Fix a comment type on the description of the Schema object.
FossilOrigin-Name: 095cd9a6ec175b703ff3fcafeffb3349f21bd831
2011-06-07 18:31:14 +00:00
drh
124c0b49a1 Refactor the SQL parameter processing so that parameter names for values
that are optimized out of the prepare statement are not forgotten.

FossilOrigin-Name: b3aaf715b60b8a338cc6c92dad1ead4a3f7146a3
2011-06-01 18:15:55 +00:00
drh
addd8f8729 Fix a compiler warning.
FossilOrigin-Name: 6df99e52dabf2a243ad635529649b86c21735e91
2011-05-25 15:54:09 +00:00
drh
346506f97b Changes to savepoint in virtual tables for simpler and more consistent
operation.

FossilOrigin-Name: 92f26a8b8f18832cb1f8ba7dd8e5b020e71a5883
2011-05-25 01:16:42 +00:00
drh
e485522462 Do not invoke the xRollbackTo or xRelease methods of a virtual table without
having first invoked an appropriate xSavepoint method.  Add assert() statements
to FTS3/4 to verify that this is happening in all cases.

FossilOrigin-Name: 651ef24249d8c22c4f13e4c0bb98a60099cfd23a
2011-05-24 15:36:01 +00:00
drh
81cc516352 Add the ability to limit filenames to 8+3 using the
SQLITE_ENABLE_8_3_NAMES compile-time option together with a URI
parameter of "8_3_names=1".

FossilOrigin-Name: 96d609856025919571f781207dfa6a24b1732e8d
2011-05-17 20:36:21 +00:00
drh
522c26fbfb Fix minor compiler warnings.
FossilOrigin-Name: 139eecbe1b072711a36128f1eeb24fc3e3bacc1c
2011-05-07 14:40:29 +00:00
dan
8d7a2d3b45 Remove some unnecessary modifications from the uri branch. Add a test to show that ATTACH only interprets its argument as a URI if the connection was opened with SQLITE_OPEN_URI (or URI interpretation is globally enabled).
FossilOrigin-Name: aa90b943254cf348aa2d23ac05e1895b188e2101
2011-05-06 18:53:27 +00:00
dan
00142d70a9 Fix a problem in the URI code preventing the amalgamation from building. Add comments describing SQLITE_CONFIG_URI and SQLITE_OPEN_URI to sqlite.h.in.
FossilOrigin-Name: ea562d6d67c2f2ef8baca02a77634c21b945196f
2011-05-05 12:35:33 +00:00
dan
ff4ec04240 Merge latest trunk changes with uri branch.
FossilOrigin-Name: af279f367e01732560b8b2b6aeb5ede4f04415dd
2011-05-04 17:35:12 +00:00
dan
d9495cd0c6 Fix problems related to savepoint rollback and fts3.
FossilOrigin-Name: ff69f823f23e6fb6e8b2857c4576d9c0732d9572
2011-04-27 12:08:04 +00:00
dan
a311b80392 Extra tests for fts3. And fixes for conflict-handling related problems in fts3.
FossilOrigin-Name: fb4a355871d9482ccb28b6ba03b842b3cc87b696
2011-04-26 19:21:34 +00:00
dan
b061d058cb Add support for on conflict clauses to fts3/fts4.
FossilOrigin-Name: 6d2633a6d0a9bb88fb1a6adac0827dc51df2d4d2
2011-04-25 18:49:57 +00:00
dan
cd74b611f4 Add the start of the "uri-filenames" feature.
FossilOrigin-Name: b8a8132e7148a7c90ca1352f20ab71d97b0bc4b0
2011-04-22 19:37:32 +00:00
dan
579667537a Add VerifyCookie instructions to "DROP XXX IF EXISTS" statements if the specified database object does not exist when the statement is prepared.
FossilOrigin-Name: a46f32900a013aa6bb2dad2a9ed3ce00ab2493fd
2011-04-09 17:32:58 +00:00
drh
c2822b76b4 If the keyword "unordered" appears at the end of the SQLITE_STAT1.STAT
column for an index, then use that index for equality lookups only, never 
for range queries or sorting.  This feature is currently undocumented and
my change or be removed in a future release.

FossilOrigin-Name: 8a42e236701c8afd9ada7d4568712a21690ea087
2011-04-09 03:20:59 +00:00
drh
cdf011dcc4 Additional schema mutex checks for sqlite3RootPageMoved().
Reduce the scope of sqlite3ResetInternalSchema() in a few places.

FossilOrigin-Name: 39c00907833413c0d97d3e06fdda967b825d23ea
2011-04-04 21:25:28 +00:00
drh
9bbc2e283e Minor comment typo corrections. Simplify an assert. No functional changes.
FossilOrigin-Name: 82c2316240345167a571507d9392dfb6445ef523
2011-04-04 20:40:22 +00:00
drh
2120608e0f Add a description of access rules for the Schema object and lots of asserts
to verify that the access rules are followed.

FossilOrigin-Name: ae8374af057b6e6546e9265148cfffe32fcb0849
2011-04-04 18:22:02 +00:00
drh
b6ee66072e Rename sqlite3SchemaFree() to sqlite3SchemaClear() to more accurately reflect
its function.

FossilOrigin-Name: 71d7440023f67760d0bff4bd7459fe88bd226f30
2011-04-04 13:40:53 +00:00
drh
6412358526 Change the name of the "tAttachMask" datatype to "yDbMask".
FossilOrigin-Name: 3d6f2e82358c0d8c0ca04e0da20b84fc65c3f7fa
2011-04-02 20:01:02 +00:00
drh
d6ee353c84 If the keyword "unordered" appears at the end of the SQLITE_STAT1.STAT
column for an index, then use that index for equality lookups only, never
for range queries or sorting.

FossilOrigin-Name: 3b964155f611c437d53d44feafa22f531942b1b4
2011-03-29 15:00:17 +00:00
drh
01c7dc887c Increase the upper bound on SQLITE_MAX_ATTACHED from 30 to 62.
FossilOrigin-Name: 7aaf8772274422f5020fad9eea490e195170720f
2011-03-23 18:22:34 +00:00
drh
e83cafd2f0 Add the ability to enable and disable foreign key constraints and triggers
using calls to sqlite3_db_config().

FossilOrigin-Name: 09e167f9c14625924b17bbb1f292f89ac9ddc93a
2011-03-21 17:15:58 +00:00
drh
c2a75551ef Add a generation counter to the Schema object and enhance OP_VerifySchema
to also check the Schema generation.  Fix for
ticket [f7b4edece25c99].

FossilOrigin-Name: 36c04dd1695f0899b53ce58738181b146fc005ed
2011-03-18 21:55:46 +00:00
drh
d50ffc416f Fix additional cases of possible signed integer overflow, especially with
regard to negation.

FossilOrigin-Name: 2d5800bd8cfc7d7f5578a71b1aeaa74b2ec4b372
2011-03-08 02:38:28 +00:00
drh
158b9cb965 Fix all known instances of signed-integer overflow. Within SQL expressions,
integer overflow now forces coercion to floating point.  The shift operators
work with any integer right-hand operand with negative values reversing
the direction of the shift.

FossilOrigin-Name: abf21394124a0af46f072793718964cee2ce55d0
2011-03-05 20:59:46 +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
27381bd519 Modify the trace callback mechanism so that SQL commands executed from within virtual table or user function callbacks are passed to the trace callback without parameter expansion and enclosed in SQL comments.
FossilOrigin-Name: a764915b87564fa91ee68e9b1f41394ce0f1fc7e
2011-01-22 13:32:29 +00:00
drh
0b12e7f860 Add additional DBSTATUS options for measuring the hit and miss rates against
the lookaside memory pool - information useful in tuning the lookaside size.
Currently experimental pending analysis of performance impact.

FossilOrigin-Name: 34613f1dc54c638531ca2f5907b71fbe8841233e
2010-12-20 15:51:58 +00:00
drh
f58ee7f1aa Add the ability to disable constant factoring using sqlite3_test_control().
Add a TCL interface to this new capability and add tests cases to the TCL
test scripts to actually use the new capability.

FossilOrigin-Name: ad8bc68197f2b47435149c3dbc035f4e7210fc76
2010-12-06 21:06:09 +00:00
dan
ce7e189d24 Change the type of a variable in struct SrcList so that it fits in a 100 byte lookaside buffer on a 64-bit architecture.
FossilOrigin-Name: 7df43f4892e628ecb8a83c5ed2dce5e24f6dd529
2010-12-01 19:00:48 +00:00
drh
60ac3f426c Fix the max_page_count pragma so that it will not set to a value smaller
than the current database size, as the documentation requires.  Also,
remove all occurances of atoi() from the core.

FossilOrigin-Name: 2031974b606ef713b5f34522b2221470d98687c5
2010-11-23 18:59:27 +00:00
drh
27f9aba18c Merge the checkpoint_fullfsync pragma and the superlock demonstration into
the checkpoint-v2 experimental branch.

FossilOrigin-Name: ebf74015f09fe241c1c6902dc8954f2b59ab41ec
2010-11-19 18:51:31 +00:00
drh
c97d84638e Add the checkpoint_fullfsync pragma which enables F_FULLFSYNC on checkpoint
operations only, not during ordinary commit fsyncs.

FossilOrigin-Name: a069867301de3ca2e1753bd4d2e426d27365be4c
2010-11-19 18:23:35 +00:00
dan
cdc1f049bf Modify the interface to the blocking wal-checkpoint functionality.
FossilOrigin-Name: 72787c010c8944e8fcf9c98aa4482f129142d8e9
2010-11-18 12:11:05 +00:00
dan
a58f26f93f Add experimental command "PRAGMA wal_blocking_checkpoint", which uses the busy-handler to block until all readers have finished in order to ensure the next writer will be able to wrap around to the start of the log file.
FossilOrigin-Name: 7e3fc2c833a5baa08820c499867b6902bdc2ed5a
2010-11-16 18:56:51 +00:00
drh
95aa47b10a Use the estimated number of rows computed for subqueries in the cost
computations for outer queries.

FossilOrigin-Name: 56bbc539246a6dc9f1ae1edb898db7a4f6f6d322
2010-11-16 02:49:15 +00:00
dan
4a07e3db27 Further enhancements and fixes for explain query plan.
FossilOrigin-Name: 73c93f5a2a32ee8c5d07c9ba33b2641e72626627
2010-11-09 14:48:59 +00:00
dan
2ce224535f Experimental changes to EXPLAIN QUERY PLAN.
FossilOrigin-Name: f4747eb83dacce6430ad6e5eb20155ffad975514
2010-11-08 19:01:16 +00:00
shaneh
5f1d6b616e Changes to remove sqlite3FitsIn64Bits().
FossilOrigin-Name: 43fef1cab6315f837782ea601d5a2aeb9843ab3c
2010-09-30 16:51:25 +00:00