Commit Graph

6888 Commits

Author SHA1 Message Date
dan
69f8bb9c72 If a binary operator in a WHERE clause that should be performed with no affinity conversions applied to its operands (see http://www.sqlite.org/datatype3.html) is optimized by index lookup, do not apply any conversions to the key value before looking it up in the index. Fix for 93fb9f89d6.
FossilOrigin-Name: e72186f2d68d28c2e0c32894f9adb28c155b5f63
2009-08-13 19:21:16 +00:00
drh
320b3a7a3a Enhancements to the whereB.test to check more affinity corner cases.
FossilOrigin-Name: 1048459824746307c9e4296cbc21716bf8b5449d
2009-08-13 18:14:32 +00:00
drh
9fa7207b1b Add a test case for the affinity problem reported by ticket [93fb9f89d6].
FossilOrigin-Name: 149ec24e61437fac2b0dd6239276d3aa543c56cb
2009-08-13 17:14:59 +00:00
drh
3da9a940b7 Merge the accidental fork.
FossilOrigin-Name: 86a06dd0494c2fe83d4fde517557600956cedd9e
2009-08-13 15:42:52 +00:00
drh
97e35a9378 Fix a typo on a comment in sqlite3VdbeIntegerAffinity().
FossilOrigin-Name: b5a709d3609d40a6e5ef77f9889077d7395d3d26
2009-08-13 15:13:52 +00:00
dan
5236ac1d04 Changes to the query planner that improve the order in which tables/indexes are scanned in join queries.
FossilOrigin-Name: 19f799b32f9d1be25d4185ce18b13f4dd502e199
2009-08-13 07:09:33 +00:00
shane
d87873d19b Fixed some compiler warnings in WINCE only sections when using the MSVC compiler.
FossilOrigin-Name: 1f0a93e17d6291268da909699ce1a5a7619ae637
2009-08-12 15:34:02 +00:00
drh
2210dcc60d Make sure the large-file support macros occur first in sqliteInt.h.
Fix for CVSTrac ticket #4022.

FossilOrigin-Name: b0848925babde5241aefe0a117ebb10299c94a15
2009-08-12 11:45:40 +00:00
danielk1977
2d04deb21d Instead of adding SQLITE_API macros sqlite3.h while creating sqlite3.c, add them as part of generating the sqlite3.h target, while copying from sqlite.h.in to sqlite3.h. This fixes a build problem that was causing multiple SQLITE_API macros to be added to a single line of sqlite3.h, and the problem cited by #4016. (CVS 6971)
FossilOrigin-Name: 7f4810747b0864981f27edbd504bfab2efea1e3c
2009-08-11 05:50:36 +00:00
drh
1a5c00f8ce Reduce the maximum supported sector size to 64KiB. (CVS 6970)
FossilOrigin-Name: 8e1e0ba292150f8968e5295e8ba9cd7360b6a64b
2009-08-10 17:48:57 +00:00
drh
50a595200d Version 3.6.17 (CVS 6969)
FossilOrigin-Name: 36650102285ef9663853cacd5daf8dd6d7cf418f
2009-08-10 15:16:26 +00:00
danielk1977
8f00a826ca Update a couple of tests in corrupt7.test to account for a change in the error message text emitted by SQLite. (CVS 6968)
FossilOrigin-Name: 3172a296926c6b50af5b6edfe38013056e155fa0
2009-08-10 10:18:07 +00:00
danielk1977
c551288256 Exclude a static function in test1.c from the build when OMIT_DEPRECATED is defined. This avoids a compiler warning that occurs with some compilers. (CVS 6967)
FossilOrigin-Name: ace499506e3c7a315f66928d8a98de255491b2b9
2009-08-10 04:37:49 +00:00
danielk1977
f77a367db4 Change mallocI.test to close a database connection that was being left open. (CVS 6966)
FossilOrigin-Name: 4f0096d7ef43f4b9f32c4d78b3dfe34271f2120a
2009-08-10 04:26:39 +00:00
shane
5eff7cf0c9 Removed some warnings from the MSVC compile. (CVS 6965)
FossilOrigin-Name: ee034cfc71425745dda8d5fee58ae95f937c86cd
2009-08-10 03:57:58 +00:00
shane
1987c8d4c3 Fixed "Interlocked" logic error that prevented the "static" mutexes from being released when sqlite3_shutdown() is called. Ticket #4011. (CVS 6964)
FossilOrigin-Name: 04cafb7ee3b67a68c0604d7f1143feaec44be610
2009-08-10 03:23:21 +00:00
drh
eeb844a7f1 Suppress various compiler warnings. (CVS 6963)
FossilOrigin-Name: 257e9b575029f63277ed602d1402f87cfa15d22e
2009-08-08 18:01:07 +00:00
danielk1977
410b6bb578 Enhancement to (6844). If sqlite3_exec() is to return SQLITE_NOMEM because it fails to allocate space for an error message, set the database error-code to SQLITE_NOMEM too. (CVS 6962)
FossilOrigin-Name: 8293fa19c02abe0e2a7594b9bceac28929de8fdf
2009-08-07 16:55:59 +00:00
danielk1977
9af00021a1 Mark the rtreeUpdate function as static. (CVS 6961)
FossilOrigin-Name: b6bdfdc69df4fc6cad669fd8b2cbaa9ecb95cb78
2009-08-06 18:36:47 +00:00
drh
3d5f74b275 Alternative fix for ticket #3810. This is a replacement for check-in (6956). (CVS 6960)
FossilOrigin-Name: ba1afc040171810d0c996708d7b9cb11abcd99d8
2009-08-06 17:43:31 +00:00
drh
e33b0ed3b7 Change a hyperlink label on shared cache mode documentation. No changes
to code. (CVS 6959)

FossilOrigin-Name: 3d08ca0e54dd4c292b3db3a8364ab237713c5c43
2009-08-06 17:40:45 +00:00
shane
338ea3c140 Simplified conditional for read-only lock in winceLockFile() function. Ticket #3991. (CVS 6958)
FossilOrigin-Name: a1c184cd2ac5a7559d787e6c34b1d0ce034d10cf
2009-08-05 04:08:29 +00:00
drh
b4bc2b7a07 Make sure all database connections are closed at the end of the test case
for ticket #3810. (CVS 6957)

FossilOrigin-Name: 9bca5a0e8f22da6be41b0eda298fd2e19f64e8b6
2009-08-01 18:22:30 +00:00
drh
35ccb3d3bc Return a better error message when problems are encountered parsing a
TEMP trigger or TEMP view that references objects in other databases that
have been modified or dropped.  Ticket #3810. (CVS 6956)

FossilOrigin-Name: 102785b9fbc5ab5dd740110243f080e3f3661e87
2009-08-01 16:27:00 +00:00
drh
a0e0d8ea98 Add a testcase for ticket #3810. (CVS 6955)
FossilOrigin-Name: 29972f7445cede64d99c2433742572120c92b393
2009-08-01 15:54:25 +00:00
drh
38210ac500 Fix a segfault following OOM that was introduced by check-in (6949) which
was a fix for ticket #3997. (CVS 6954)

FossilOrigin-Name: 359d78e144c2399791d341eda1760eb486f9740a
2009-08-01 15:09:58 +00:00
drh
a147a9ea37 Increment the version number in preparation for the next release. (CVS 6953)
FossilOrigin-Name: 12d9b87316cf072d8071fb43ca1232d36720bbca
2009-08-01 15:04:19 +00:00
danielk1977
f51d1bd665 Fix a bug in where.c that could cause SQLite to write to freed memory while compiling a query with many terms in the WHERE clause. (CVS 6952)
FossilOrigin-Name: 8161af840e8fd2b06457e75023f934e1b8fe5fd6
2009-07-31 06:14:51 +00:00
danielk1977
1a4eaf0be2 Add a test to mallocI.test to show that a shared lock is correctly released if an OOM condition occurs while parsing a database schema. (CVS 6951)
FossilOrigin-Name: 5a82620efa1298530760e69e4e34d446a30233b8
2009-07-29 06:04:56 +00:00
danielk1977
ee0484c1b5 Add the experimental API sqlite3_strnicmp(). Modify fts3 so that in terms like 'column_name:token' the column_name is interpreted in a case-insenstive fashion. Ticket #3996. (CVS 6950)
FossilOrigin-Name: 4571aa9e9142db465ae8250b0adf27e0a094331a
2009-07-28 16:44:26 +00:00
danielk1977
0a458e5e2f When flattening a SELECT query, do not discard collation sequences explicitly attached to expressions in the parent query. Fix for #3997. (CVS 6949)
FossilOrigin-Name: b2784cf5d8b520fb714efdb2d2746b2c88b56edf
2009-07-28 13:30:30 +00:00
shane
3190f4b5f1 Fixed reversed labels in WHERETRACE() statement. Debugging code only. (CVS 6948)
FossilOrigin-Name: 614a8d83158eb59e3fbe78d62461635bfcc13525
2009-07-28 08:43:09 +00:00
danielk1977
ded6d0f1a9 If there is a hot-journal in the file-system, a connection with journal_mode=memory set may have to open it to effect rollback. Account for this in pager_end_transaction(). This prevents an assert from failing in the in-memory journal permutation test. (CVS 6947)
FossilOrigin-Name: 224bc69a04f4fe6d1004125847761b7842c2bfe0
2009-07-27 14:15:44 +00:00
danielk1977
b5a1920816 Do not simulate OOM conditions in the sqlite3OsXXX() calls if the underlying file is an in-memory journal file. (CVS 6946)
FossilOrigin-Name: d486811715350f315374cc41f3d808a75d140afb
2009-07-27 11:41:20 +00:00
danielk1977
c7538b5f63 When extracting values from a record to use in an UPDATEd version of that record, apply OP_RealAffinity if required. Fix for #3992. (CVS 6945)
FossilOrigin-Name: 3616766a6f5c8179cc55444c29ecf29cc69f88ce
2009-07-27 10:05:04 +00:00
drh
a53c704fec The noReadlock property on a pager object implies the readOnly property.
Use this fact to simplify the logic in sqlite3PagerSharedLock(). (CVS 6944)

FossilOrigin-Name: 886e665f6cf780464b280c286b03c9fb5c1a6b2a
2009-07-25 22:13:34 +00:00
drh
f31506b7b7 Remove obsolete assert and testcase macros related to ticket #2565 (CVS 6943)
FossilOrigin-Name: f0024b3189245d608a0cb57fa7e472c6daa1406f
2009-07-25 19:31:31 +00:00
drh
bdd7191cc6 Adjust memory size computations to avoid a conditional that is always
false on 64-bit systems. (CVS 6942)

FossilOrigin-Name: 04211e6af9cdd3e7f19b458c72b722f8f8584245
2009-07-25 17:42:21 +00:00
danielk1977
c7ca875ec9 Change an unreachable condition in PagerSharedLock to a NEVER(...). Add an assert to pager_error() to show that it is never called to put an in-memory pager to the error-state. (CVS 6941)
FossilOrigin-Name: 1d931f77519baf3586708c77cbd161c0e75bcbaf
2009-07-25 17:39:13 +00:00
drh
7ee27b07c3 Change a condition to a '%' operator in bitvec.c. (CVS 6940)
FossilOrigin-Name: 10250fe5c039dbef2e1614e6320f7bd354c10211
2009-07-25 17:33:25 +00:00
drh
b75d570ef8 More simplifications to pager.c. (CVS 6939)
FossilOrigin-Name: 533d6cc67a3b6467db5b83c5ca535d229d36ad27
2009-07-25 17:08:35 +00:00
drh
5e1fa03dca Simplifications and comment improvements to pager.c in support of coverage
testing. (CVS 6938)

FossilOrigin-Name: 5b70b5c19cd587a8afbf2909ac7a4c04aea20f44
2009-07-25 15:24:13 +00:00
drh
0b0abe45ca Add a NEVER() on an always-false conditional in pager.c.
Make sure the text of the master journal file is zero-terminated before
trying to process it - to prevent a buffer overrun in strlen(). (CVS 6937)

FossilOrigin-Name: cc9430e334fe98e1c35d408f81a2d8953377cda6
2009-07-25 14:18:57 +00:00
danielk1977
8c924fe002 Remove the "proc zeroblob" implementation from incrvacuum2.test. It is no longer required as of (6906) and, as #3988 points out, unreliable. (CVS 6936)
FossilOrigin-Name: 03153831635342a744ee42f14cb041499cdece2a
2009-07-25 13:42:50 +00:00
danielk1977
750e87df2e Add files that should have gone in with the previous checkin. (CVS 6935)
FossilOrigin-Name: 64c7afc704e95e13fb3315be402525d277a0d8d8
2009-07-25 11:46:48 +00:00
danielk1977
9f0b6be85c Add a complex assert() that checks a pager invariant. (CVS 6934)
FossilOrigin-Name: 2e08ad7bf629485a79ccebcf4c413e9dcc0d3ccf
2009-07-25 11:40:07 +00:00
drh
8a938f9808 Add assert() statements to more tightly constrain the state of pager.c.
Remove the three pager*.test scripts since they violate the constraints
asserted above by modifying the state of the system in ways that it cannot
be modified in a live system. (CVS 6933)

FossilOrigin-Name: 3b6d370ed68eaf9636b26c7240a8b3a43d2edd70
2009-07-25 04:12:02 +00:00
drh
d4e5cd05a4 Remove two more overzealous assert() statements. (CVS 6932)
FossilOrigin-Name: 788aa9dde9e76f67f22c07a904faf03e97e032c6
2009-07-25 00:13:58 +00:00
drh
16ff1700a9 Remove an overzealous assert() from pager.c. (CVS 6931)
FossilOrigin-Name: 4a924b475aa0f7f2f69caed0adc2e60d29c47f21
2009-07-25 00:10:45 +00:00
drh
d05c223c2e Fix an issue with the previous check-in, (6929). (CVS 6930)
FossilOrigin-Name: e5165c80abfdba0ad74e1042e4c94fe00d4b3308
2009-07-24 21:23:15 +00:00