Commit Graph

2629 Commits

Author SHA1 Message Date
danielk1977 f16c62464d Add some code to sqlite3VdbeMemSetZeroBlob() so that it works (less efficiently) even when OMIT_INCRBLOB is defined. Ticket #3977. (CVS 6906)
FossilOrigin-Name: f5f7259d811ce8c2bf0bc64128256c4cd95f676a
2009-07-18 14:36:23 +00:00
danielk1977 5368f29ac4 When the asynchronous IO backend opens a file with the EXCLUSIVE flag set, make sure only a single file-descriptor is opened (not one for reading and one for writing). This change fixes #3978. (CVS 6905)
FossilOrigin-Name: 630e669b97a81f9125d4bdc18517738b74eecdec
2009-07-18 11:52:04 +00:00
danielk1977 627a3d6ab4 Changes to test scripts so that (make test) works when OMIT_INCRBLOB is defined. (CVS 6904)
FossilOrigin-Name: 1dd834a3d61496dfa138c36676a5fa6afaa4c817
2009-07-18 08:30:44 +00:00
shane 9a8cee7f73 Skip all tests in tableapi.test if SQLITE_OMIT_GET_TABLE defined. Ticket #3975. (CVS 6901)
FossilOrigin-Name: 0219a543367638013ccd06295eeb9efc822e2dd1
2009-07-17 14:37:24 +00:00
drh e64ca7ba11 Code simplifications and comment improvements in support of structural
coverage testing. (CVS 6899)

FossilOrigin-Name: 945251798144110787b197f9eb552a2dd4a25cb4
2009-07-16 18:21:17 +00:00
drh 6be240e546 Make sure the IN operator works with zeroblobs. Ticket #3965.
Other simplifications associated with structural testing. (CVS 6890)

FossilOrigin-Name: 25dd342283046aaf66a679348ef1c7364c616402
2009-07-14 02:33:02 +00:00
danielk1977 8f880a8cfb Remove an assert ("assert( subpage>0 )") from btree.c that may not be true for a corrupt database. Also add comments and other assert() statements to btree.c function moveToRoot(). (CVS 6886)
FossilOrigin-Name: 3151dab9c78106217ec80ebadc666dfd11b42029
2009-07-13 09:41:45 +00:00
danielk1977 bd5969a268 Fix a case where deleting a row from a corrupt database could cause an assert to fail. (CVS 6881)
FossilOrigin-Name: 6994b41a94a60f6460cf9814767db321ab3851f7
2009-07-11 17:39:42 +00:00
danielk1977 93caf5ad93 Modify the integrity-check code so that each b-tree page inspected is reinitialized while doing so, even if an initialized copy exists in the cache. This prevents an assert from failing when running integrity_check on a corrupt database. (CVS 6877)
FossilOrigin-Name: 709576c670f802bf4b6e5c0e8db2bbde2cc16a90
2009-07-11 06:55:33 +00:00
danielk1977 e932ba260e Fix a double-free that can occur when using the fts3 legacy syntax '-' operator. Add tests for the same operator. Ticket #3960. (CVS 6874)
FossilOrigin-Name: c19d419e8cf94a26d9bb6ad478e84841168a882e
2009-07-10 09:24:43 +00:00
shane 20a35fd826 removed unused functions from test3.c (test code only); (CVS 6867)
FossilOrigin-Name: 0eb69e8dda13e2d52a06f66a71480f59fd766271
2009-07-09 02:48:23 +00:00
drh b1819a0b95 Make explicit the restrictions on UPDATE, DELETE, and INSERT statement syntax
within triggers.  Ticket #3947. (CVS 6840)

FossilOrigin-Name: c8bf40df7be728b11bb633516d1988c6064a9d70
2009-07-03 15:37:27 +00:00
danielk1977 34acdc9573 Fix to sqlite3AuthRead to accommodate "new" or "old" references that are used in a context where a column reference may also be used (i.e. "SELECT new.<col> FROM <tble>"). Ticket #3944. (CVS 6838)
FossilOrigin-Name: 45fd5419a7cde29eb6ab5d98141bd642af0d78fb
2009-07-02 18:40:34 +00:00
danielk1977 94b30733f7 When a b-tree transaction is committed when there are open cursors, downgrade shared-cache write-locks to read-locks instead of relinquishing all locks. Fix for #3942. (CVS 6837)
FossilOrigin-Name: 611e704fdf90a3d3932ca1cbab4be7e282bf1ddf
2009-07-02 17:21:57 +00:00
danielk1977 8b32282795 Change to test code and scripts allowing memsys3 to be tested using a build that has both memsys3 and memsys5 enabled. (CVS 6834)
FossilOrigin-Name: a00aeec21cca7ccf19d4cdef618149aa2773c005
2009-07-01 18:09:01 +00:00
danielk1977 bd1a0a4f61 Report an error if a USING or ON clause is specified following a from-list element that is not to the right of a join operator. Fix for #3846. (CVS 6832)
FossilOrigin-Name: 29b48972b65a17dab343b063a620cf8d456a923c
2009-07-01 16:12:07 +00:00
danielk1977 9b87d7b904 Do not ignore alias "a" in a query of the form "SELECT ... FROM (...) AS a" Fix for #3935. Also expand upon (6751) to fix some similar obscure memory leaks. (CVS 6831)
FossilOrigin-Name: 42f9d1e56483a59353bff57d75f09ed67e1d9c3c
2009-07-01 14:56:39 +00:00
danielk1977 96d48e963a Cause incremental-blob read/write operations lock shared-cache tables in the same way as normal SQL read/writes. Add complex assert statements to make sure tehe correct shared-cache locks are held when accessing the database. Eliminate some redundant checks from btree.c. (CVS 6830)
FossilOrigin-Name: f17ef37897da9bcaf20b5acdce6840522c0a0b16
2009-06-29 06:00:37 +00:00
drh 9ed7a9953e Remove the priorNewRowid field from the sqlite3 structure. Use the
last_insert_rowid as the initial value when searching for a new random
rowid in the OP_NewRowid opcode. (CVS 6824)

FossilOrigin-Name: 96729b2d499f029bfaec6648a592e8ec697d9521
2009-06-26 15:14:55 +00:00
shane 389ae2c52d Skip a couple tests requiring working 64bit int support on platforms without that support. Test code change only. (CVS 6823)
FossilOrigin-Name: d8c8145c9d28d014eb9218b3f1312b957ccc72b7
2009-06-26 14:17:47 +00:00
danielk1977 31559aee71 Fix a test script problem in exclusive.test. (CVS 6821)
FossilOrigin-Name: a52ef5a4216f26c617bd1471cd19f3da2a6d2c4c
2009-06-26 12:30:39 +00:00
danielk1977 6f4c73eedb Avoid writing the 8-byte journal-header magic until the journal-header is synced. In persistent journal-mode, this prevents any old content that follows an unsynced journal-header from being interpreted as part of the rollback journal. (CVS 6817)
FossilOrigin-Name: a5ecffcf025da2fcb241e83c7bebc1095a3b51d6
2009-06-26 07:12:06 +00:00
drh 4c8555fd47 Improved handling of oversize string and blob errors. Other simplifications
in support of full coverage testing. (CVS 6813)

FossilOrigin-Name: 8b34076668f0f712de0fbbe9bc2e68d42797e1b2
2009-06-25 01:47:11 +00:00
drh c3927537d8 Disable the new malloc-37 test when locking_mode==exclusive. The test
basically works, but sometimes reports "database is locked" instead of
"out of memory" and that messes up the error reporting. (CVS 6811)

FossilOrigin-Name: 3b8f9dec24d06865455a75587bbfc199c19c6215
2009-06-24 13:13:45 +00:00
drh 0b9f50d8aa Enhance autoincrement so that it works with triggers that also do
autoincrement inserts, even multiple inserts into the same table.
Ticket #3928 (CVS 6807)

FossilOrigin-Name: 1330993de8eae7baeec24100216158063c9bdc19
2009-06-23 20:28:53 +00:00
danielk1977 1c84ac596d Add a test to verify that #3929 is fixed. (CVS 6801)
FossilOrigin-Name: 16c1ae9bde895d39c4eaababbd1dbf9e3b9cb653
2009-06-23 11:53:09 +00:00
danielk1977 3582c8f7ae If an OOM error occurs just after obtaining a shared lock on the database file, release the lock before returning. (CVS 6795)
FossilOrigin-Name: 971a9650f66f079630489c34e40003eee97d1683
2009-06-22 05:43:24 +00:00
drh 9eb8cbe5c0 Do now allow a COMMIT to occur while even a single write operating is
in progress. (CVS 6790)

FossilOrigin-Name: 605520ec04061e389226fbec59f7aedf674b3c4e
2009-06-19 22:23:41 +00:00
drh 8bfd719065 Make sure group_concat() ignores initial NULL values. (CVS 6787)
FossilOrigin-Name: 90c3b23ccac8a9e7fc1cc831e43888e4e43badc9
2009-06-19 16:44:41 +00:00
drh ccf6d0934d Update the filefmt.test test script to conform to the previous check-in. (CVS 6781)
FossilOrigin-Name: 40a40e81b3ad80114422d6a48146e5fb27e2551d
2009-06-18 11:34:42 +00:00
drh 3a9cf17d7c Fix a problem in vdbe.c that could cause a double-free of memory if the
SQLITE_LIMIT_LENGTH is changed after a statement is prepared but before
it is run.  Also remove debugging statements from tkt3841.test. (CVS 6777)

FossilOrigin-Name: 3d7327fd6af983d5ce9bc9a2ba869b23c44cc8e6
2009-06-17 21:42:33 +00:00
drh 94c3a2b16f Use caution to avoid integer overflow when doing real to integer affinity
operations.  Ticket #3922. (CVS 6776)

FossilOrigin-Name: 392559465d499f491907ef7f42d37a1a6c699511
2009-06-17 16:20:04 +00:00
danielk1977 e576521d96 Fix for #3918. Also, fix the TRACE macros in balance_nonroot(). (CVS 6772)
FossilOrigin-Name: 368e44ec2e648b04f3b817f82586ccd864e60c89
2009-06-17 11:13:28 +00:00
drh 9da742f969 Changes sqlite3_prepare_v2() (and related routines) so that if it fails due
to a missing table and the schema is out of date, it retries once before
returning SQLITE_SCHEMA.  Other changes to prepare.c to facilitate coverage
testing. (CVS 6769)

FossilOrigin-Name: 256ec3c6af41c2324db82e4deb54edbba5b581e8
2009-06-16 17:49:36 +00:00
drh 994704d1cb Enable the SQLITE_LIMIT_FUNCTION_ARG limiter. (CVS 6753)
FossilOrigin-Name: a17e3317176772446abdc8ebe6fb6f0d3b7ac018
2009-06-12 12:04:16 +00:00
drh c3a8402a94 Make sure nested queries with USING clauses do not leak memory.
Preliminary fix for ticket #3911. (CVS 6750)

FossilOrigin-Name: bd341a103c25395b1189d05edebfe4af8a943941
2009-06-12 03:27:26 +00:00
drh aed2460877 Honor the SQLITE_OPEN_READONLY flag even on a :memory: or temporary database,
even though such a database is pointless.  Ticket #3908. (CVS 6748)

FossilOrigin-Name: 73ba841ac1ed39fb09b3917bafe0ce349e88eb04
2009-06-11 17:32:45 +00:00
drh 5901b571d4 Do not let the reverse_unordered_selects pragma force the use of an index that
would not otherwise be used.  Ticket #3904.
Also: remove an test which is always true. (CVS 6745)

FossilOrigin-Name: 78a391dca05dbe3ad1d8124b80b31bc2ce75778f
2009-06-10 19:33:28 +00:00
danielk1977 b46d004548 Change savepoint4.test to limit database growth. Otherwise the test can take a very long time to run, depending on the prng. (CVS 6737)
FossilOrigin-Name: ed1d4f47ee9a2bcafdee92ee6bfcb2b0d1758f76
2009-06-09 15:25:33 +00:00
drh 3b2a3fa42e Enable cell overflow checking in sqlite3BtreeInitPage() using the
compile-time option SQLITE_ENABLE_OVERSIZE_CELL_CHECK.  Change the tests
so that they recognize different error messages depending on the setting
of this macro. (CVS 6735)

FossilOrigin-Name: 56bff6eb2fc5f0afbd96afc986671ec744bd40e1
2009-06-09 13:42:24 +00:00
drh c4ac22e905 Disable the LIKE optimization if the affinity of the LHS column is
not TEXT.  Ticket #3901. (CVS 6727)

FossilOrigin-Name: a255c645c46ae03b65f862858fe57e462076e1fc
2009-06-07 23:45:10 +00:00
drh 49008596ed Update the error message on one of the corruption tests to account for the fact
that we are finding the corruption sooner. (CVS 6726)

FossilOrigin-Name: ba9848e7b89df1fb6bf6db2b9d66cd3ffce375df
2009-06-06 19:21:13 +00:00
danielk1977 08746af43b Fix an error in the malloc.test test script causing a small buffer overread. (CVS 6725)
FossilOrigin-Name: 4d129bee696f3a537f7ea5501a387012fc08c27e
2009-06-06 16:08:22 +00:00
drh dda70fe38e Remove leftover "breakpoint" commands from test scripts. Also remove blank
lines at the end of scripts. (CVS 6721)

FossilOrigin-Name: 1fef16ec2b89981770cf44f606a420fbe031a7a4
2009-06-05 17:09:11 +00:00
drh d46b6c23d3 Fix an assertion fault in balance_quick() that occurs when an interior
btree node has zero cells due to database corruption.  Also update the
corrupt7.test result vectors for a couple of cases where the error report
on database corruption changed due to earlier detection. (CVS 6717)

FossilOrigin-Name: 1335e4440f5a3d24ce9ce187e0e23fc9b166ca98
2009-06-04 17:02:51 +00:00
shane e71169ba30 Minor updates to comments in test scripts. (CVS 6714)
FossilOrigin-Name: 453ff88f73a01a54ff464563effdb63014b1972c
2009-06-04 02:47:03 +00:00
shane bbc795fdaf Minor tweak to test script to ensure every byte in file touched at least once. (CVS 6713)
FossilOrigin-Name: bc6c2d894b711361808a19b673803186d3a28369
2009-06-04 02:46:19 +00:00
danielk1977 93c829c110 Add corruptD.test, a container for testing the "cell overflow" problem. Also shuffle a small amount of code in BtreeInitPage() to check that the page header pointer to the start of the cell offset array is set to a sane value. (CVS 6710)
FossilOrigin-Name: 7fa5d3cb0fa05f7d901bcc139c2c037ce5944caa
2009-06-03 17:26:17 +00:00
drh e4a96be62b Add a test case for ticket #3893 and ticket #3894. (CVS 6705)
FossilOrigin-Name: 2472f6db95cd537a908bdbbbbc41bad2bd987b2f
2009-06-02 15:47:37 +00:00
shane 739a277031 Fix a couple of Windows only issues with test scripts. (CVS 6698)
FossilOrigin-Name: 0f6bc5e1ba6937b36df08ed3b5903839389021bb
2009-06-01 16:42:17 +00:00