5407 Commits

Author SHA1 Message Date
drh
3918795951 Make sure new pages are zeroed even when loading a freelist page using the
noContent option.  This prevents a harmless valgrind warning.

FossilOrigin-Name: e47e213369a2652d7eb6bddd58617959e21ca82b
2010-01-05 13:40:35 +00:00
dan
4564cedd80 Fix a problem in the shell tool. In some cases sqlite3_errmsg() was being called before sqlite3_finalize(), causing error messages to be more generic than they should be.
FossilOrigin-Name: e5d07045fabe0803715cfb291aa9e971235cb08a
2010-01-05 04:59:56 +00:00
drh
10f864e8ef In the debugging memory allocator, initialize new memory allocations to
pseudo-randomness in an effort to find problems with memcmp() of structures
that have uninitialized pad bytes.

FossilOrigin-Name: 6462817b2f817a6105449b0ea3e1e336e42571d1
2010-01-05 03:30:15 +00:00
drh
9061ad10bc Fix a case in os_unix.c where two structures that might have uninitialized
padding bytes are compared using memcmp().

FossilOrigin-Name: e02f25560216c7c96c5e1c7e71a8531650b3a96f
2010-01-05 00:14:49 +00:00
drh
855787a1b3 Fix a bug in the new sqlite3_test_control case of the previous check-in.
FossilOrigin-Name: 3b77701bc854997346e9cc33fe64d00d4b6332bd
2010-01-02 03:46:43 +00:00
drh
0e857739c4 Add a new sqlite3_test_control() verb that facilitates testing that all
keywords are shown in the documentation.  (Two keywords were found to
be missing while testing the change.)

FossilOrigin-Name: d3cdc4b12be7f1ed2249ad210482200868956d12
2010-01-02 03:21:35 +00:00
drh
c79c761f84 Add evidence marks associated with autoincrement.
FossilOrigin-Name: 0e918c54893c361fb005295847f89aadcbfae35d
2010-01-01 18:57:48 +00:00
drh
5cfa584831 Add comments and an assert() to help clarify the operation of the
sqlite3VdbeList() routine used to implement EXPLAIN.

FossilOrigin-Name: e1ccdb93d79a6f7b16f1f59cc3ad78f8d02eae84
2009-12-31 20:35:08 +00:00
shaneh
46aae3c0da Changes to remove warnings in MSVC build.
FossilOrigin-Name: 6cf76c2ae25d6e58926637ecd42eed6b300b1a25
2009-12-31 19:06:23 +00:00
drh
f49f352320 Adjustments to column cache handling in order to restore 100% branch
test coverage.

FossilOrigin-Name: cc6b959bc1f968e08eea1afd387201d70a0c1e80
2009-12-30 14:12:38 +00:00
drh
27ee406e2c Remove some code in the column cache that is no longer used. Replace it with
an assert().

FossilOrigin-Name: 1f890efb7863bd743b9f6ef841e0c0c4e67d76e1
2009-12-30 01:13:11 +00:00
drh
c82b7513bf Remove obsolete comment text from expr.c. No functional code changes.
FossilOrigin-Name: 84058be0beb799bc989d73a8d4cd8791ab709395
2009-12-30 00:12:39 +00:00
drh
25e978df92 Within the special new.* and old.* tables of a trigger, recognize all the
original table names even if those names overload the "rowid", "oid", or
"_rowid_" special names.  Ticket [34d2ae1c6d0].

FossilOrigin-Name: 1a0e5fa9f0ff792c678c99d49960601a0cef925b
2009-12-29 23:39:04 +00:00
drh
b6da74ebd5 Immediately purge entries from the column cache when the associated register
undergoes an affinity change.  Ticket [eb5548a849].  Enhance the
SQLITE_TESTCTRL_OPTIMIZATIONS setting of sqlite3_test_control so that it
can disable the column cache for testing purposes, in an effort to prevent
future problems of a similar nature to this one.

FossilOrigin-Name: ea4e57e1c1b6663ceb12872e31a8503f6c14e3d8
2009-12-24 16:00:28 +00:00
drh
07096f68ae Move the query flattener turn-off from a pragma to an sqlite3_test_control()
call.  Make provisions (not yet implemented) to turn off other optimizers
using the same call.

FossilOrigin-Name: 4a97c623f4e190134de4b2ca406e311034a74797
2009-12-22 23:52:32 +00:00
drh
7b688ede64 Add a pragma to disable the query flattener - for use during testing.
FossilOrigin-Name: 1d8550e5c88db0ea76aea579c1a5bf99d48fbe43
2009-12-22 00:29:53 +00:00
shaneh
c7d526e92b Modified statement machine in sqlite3_complete() to return 0 on empty string.
Added/updated tests for same.  Ticket 356c885b0b.

FossilOrigin-Name: 76eca7295cf7df4bef013af6c8c37251300cd383
2009-12-17 22:17:38 +00:00
shaneh
13b3602e1c In shell.c (CLI), modified local_getline() to remove '\r' as well as '\n' from end of lines.
FossilOrigin-Name: b1b48be1cf55f3179eab8824cf5fee8100518845
2009-12-17 21:07:15 +00:00
shaneh
d77f56efe5 Fix typo in comment of prepare.c.
FossilOrigin-Name: 333c3ffe6d4d2293d01958812b9c02b0bf9796a4
2009-12-17 21:05:42 +00:00
drh
702b919a67 Disable trace when recursively running commands while vacuuming.
FossilOrigin-Name: 69a1348a3c88ffbf401cf72bbec8b4a76557bd11
2009-12-17 03:49:56 +00:00
drh
b057e56f22 Remove unreachable code that was added by the fix to the "(xANDy)OR(z)" bug
in the previous check-in.

FossilOrigin-Name: 04915562a0c2cb377bc7baa0c06c5d9ac376563c
2009-12-16 23:43:55 +00:00
drh
c01a3c1775 Ensure WHERE clause terms involving tables on the right end of a join
are not prematurely evaluated when tables on the left end of the join
make use of the OR-clause optimization.  
Fix for ticket [31338dca7e].

FossilOrigin-Name: 2c2de252666662f5459904fc33a9f2956cbff23c
2009-12-16 22:10:49 +00:00
drh
d3479b94e3 Add a few simple evidence comments to the tokenizer. No functional changes.
FossilOrigin-Name: 0daec3099d439ce8a8779260b12975f262037bc8
2009-12-14 17:42:12 +00:00
drh
7a98b853da Additional corrections to documentation comments. No functional code changes.
FossilOrigin-Name: b3740b0aa0a7c6932e33e02b37baed5a5960a0bd
2009-12-13 23:03:01 +00:00
drh
df6473aa7a Minor documentation updates. No functional changes.
FossilOrigin-Name: 6ae7e40ba0f710609cf1bc8baa54e7839eb7a2d7
2009-12-13 22:20:08 +00:00
drh
9be37f691b Fix some documentation comments in sqlite.h.in. No functional code changes.
FossilOrigin-Name: c16b9bec77c8b9120b728f8431648d95175a83b8
2009-12-12 23:57:36 +00:00
dan
f5fff2a7b2 Add coverage test cases for fts3.
FossilOrigin-Name: 8fcb0478c82507403165719724b62a308cb83b57
2009-12-12 09:51:25 +00:00
drh
fb43403641 Additional changes to C-language interface documentation.
FossilOrigin-Name: 1342916fd350d06e1c1f3d7d380249f0c9282c7b
2009-12-11 23:11:26 +00:00
drh
d68eee04b4 Extensive edits to the comments in the sqlite.h.in source file to identify
testable statements of truth about the C-language interface.

FossilOrigin-Name: ea884e1ed8dba1aa0f3cf68fc71923954983f6c6
2009-12-11 03:44:18 +00:00
drh
0edb3cf53d Only declare the sqlite3_mutex_held() and sqlite3_mutex_notheld() interfaces
in the header file if NDEBUG is not defined.

FossilOrigin-Name: ee9b1c05a7f12d3d668b804bd11ae0def984b66e
2009-12-10 01:17:29 +00:00
drh
c29c5aa1fd Restore the incorrect legacy ON INSERT syntax to the parser as a no-op.
That way, older databases that actually use this meaningless syntax will
still be readable.

FossilOrigin-Name: 54b955c36ba5c139a63c6031855305b764d3fa6c
2009-12-09 21:43:36 +00:00
drh
2179b43465 The USING clause and NATURAL JOIN look at all tables to the left when
searching for a match, not just the one table to the immediate left.
Tables further to the left are preferred.
Fix for ticket [f74beaabde].  Still need to add test cases to complete
the ticket.

FossilOrigin-Name: b558e96f0a3cd2cbbe86e44293246a4730960d52
2009-12-09 17:36:39 +00:00
drh
0e3c512bff Change to order of two branches in vtab.c in order to a restore 100% test
coverage.

FossilOrigin-Name: fdfdc777c59a108496c7381c8b267b38485e2c13
2009-12-08 22:16:15 +00:00
drh
19875c8240 Add comments to better explain the two-pass memory allocation approach
for prepared statements.

FossilOrigin-Name: 0e5e18ea12c70559d4c63981c0bb5f9430c5bcbb
2009-12-08 19:58:19 +00:00
dan
84db21ec6a Add tests to improve coverage of fts3. Associated bugfixes.
FossilOrigin-Name: f0eac4175aee6c50ee68acc253f76fbe44574250
2009-12-08 19:05:53 +00:00
drh
4800b2ee95 Avoid pointer aliasing in the allocSpace() routine in vdbeaux.c.
FossilOrigin-Name: d6ae27512229d95502c584b17bb2cbdba401f80a
2009-12-08 15:35:22 +00:00
drh
1e15c031ca Begin updating API documentation to use the new MD5-hash based
automatic requirements numbering.  Comment changes only.  Many similar
changes will follow.

FossilOrigin-Name: 973c5c86eed31dcce54d14e71938f2e255f5f1c7
2009-12-08 15:16:54 +00:00
drh
972a23119e Allow zero-length names for tables, columns, and indices.
Fix for ticket [78e04e52eaf].

FossilOrigin-Name: 7b1cfd65a6f7c85ef8f6e4622973457cff9d007c
2009-12-08 14:34:08 +00:00
drh
b290e1c75e Avoid dereferencing a null pointer when doing a multi-database comment where
one or more of the databases is an ATTACH-ed TEMP database.
Ticket [abe728bbc311d].

FossilOrigin-Name: f43e37e0a4cc7c15c996f4404dc775636396567d
2009-12-08 13:36:55 +00:00
drh
2ba3cccf22 Add evidence marks for the abs() and soundex() SQL functions.
FossilOrigin-Name: 003f3ed10cdb64b73d6df00e28260dd3491e1f16
2009-12-08 02:06:08 +00:00
drh
00ce39458d Enhanced detection of database corruption in btree.c:allocateSpace().
FossilOrigin-Name: 5a511f98877f0f7f12d336b7831f3da901856b02
2009-12-06 03:35:51 +00:00
drh
dc9b5f8ee3 Fix to check-in [f221f31eff]: Make sure local variable rc is declared even
when compiled without SQLITE_DEBUG.

FossilOrigin-Name: 7a9a35327c55452e858335933ce11669fc888aeb
2009-12-05 18:34:08 +00:00
dan
89e060e462 Catch an obscure case of database corruption.
FossilOrigin-Name: 0f9b17a6da42b4da667bbbc00f713effe92a66b5
2009-12-05 18:03:50 +00:00
drh
8e14c59611 Add the SQLITE_4_BYTE_ALIGNED_MALLOC compile-time option which tells some
assert() statements that the underlying system only requires 4-byte alignment
of 8-byte data objects like double or int64 and that system malloc() only
guarantees 4-byte alignment of returned pointers.

FossilOrigin-Name: 08faee686eb2fabe0dde51231ee55880e78541e8
2009-12-04 23:10:12 +00:00
drh
44a1d92050 Remove an assert() in btree.c:releasePage() that is not necessarily true
when the btree is recovering from an OOM that occurs in the middle of
a balance().

FossilOrigin-Name: 04fc9c7661dd24d080f965e7eae9010a2d346e6a
2009-12-04 22:51:39 +00:00
drh
476bda7de4 In the OSTRACE debugging macros in os_unix.c, identify the VFS currently
in use.

FossilOrigin-Name: 082b8da005128f47f63e95b6b702bf4517221b2a
2009-12-04 14:25:18 +00:00
drh
c9b9b8aab7 Fix an assert() in btree.c that might have fired on a corrupt database file.
FossilOrigin-Name: 5ab2b3e300b70bc04cdead69275f8f734ea2d885
2009-12-03 21:26:52 +00:00
drh
313aa5735a Remove a NEVER() from btree.c that could occur in a very obscure tested
evaluation with an I/O error on fstat().

FossilOrigin-Name: d5861d9ffecca499d79d722b5f742ffe3a5aff44
2009-12-03 19:40:00 +00:00
shaneh
5e17e8b7dd Fix a couple of compiler warnings under MSVC.
FossilOrigin-Name: e3aa0870fce0666bf8c67ad6ec23e135d03b604a
2009-12-03 04:40:47 +00:00
drh
a94cc4206a Add links from C/C++ interfaces to their equivalent SQL functions. Comment
changes only - no changes to code.

FossilOrigin-Name: acce10f77125b5ab05d10ec10aef68dffa4e826a
2009-12-03 01:01:02 +00:00