1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-08-07 02:42:48 +03:00

1674 Commits

Author SHA1 Message Date
drh
af034ed685 Enhancements to the secure_delete pragma to make it easier to use.
FossilOrigin-Name: 2bb38bb96ff6b9fb91dd1cf214041cf113ac5508
2010-02-12 19:46:26 +00:00
drh
5b47efa662 All the secure-delete setting to be changed at run-time using a pragma.
The SQLITE_SECURE_DELETE compile-time option determines the default setting.

FossilOrigin-Name: f72f8a870a0fc98a9f2b564ffafe7946bbce506e
2010-02-12 18:18:39 +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
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
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
drh
7ab641fb01 Fix SQLITE_SECURE_DELETE so that it overwrites content on the root pages
of tables and indices that are dropped using the truncate optimization.

FossilOrigin-Name: 02ef972a56aab1e61786000283193165d3968842
2009-11-24 02:37:02 +00:00
drh
f25a5071a6 Performance improvement by avoiding unnecessary calls to memset().
FossilOrigin-Name: 85940468e6f93f7c493fbc129f13cf6233c5d0c0
2009-11-18 23:01:25 +00:00
drh
c54055bd25 Force 8-byte memory alignment on memory allocated for VDBE cursors.
FossilOrigin-Name: bdc45ba77fb77771c8ff46b8d6c2dd29e6d3b019
2009-11-13 17:05:53 +00:00
drh
c81c11f62c Remove the obsolete "$Id:$" RCS identifier strings from the source code.
FossilOrigin-Name: f6c045f649036958078cb15cd9d5453680c82b0c
2009-11-10 01:30:52 +00:00
drh
1d452e1de0 Fix compiler warnings. Better comments on some variables associated with
LIKE/GLOB processing in the query planner.

FossilOrigin-Name: cfa2db0ff7a94e7f66c35f672ee41cadd45a6dd7
2009-11-01 19:26:59 +00:00
drh
0ee3dbef79 Comment cleanup in btree.c.
FossilOrigin-Name: 32966ba4796e70d0afcff6abdda9bdcba08b098a
2009-10-16 15:05:18 +00:00
dan
fa401def25 Experimental fix for [f777251dc7]. This may be changed yet.
FossilOrigin-Name: 174477bca05d019e663fd2b7cd031189ab2e010a
2009-10-16 14:55:03 +00:00
drh
f1f12688d8 Added SQLITE_OPEN_SHAREDCACHE and SQLITE_OPEN_PRIVATECACHE flags as
possibilities to sqlite3_open_v2(), to override the global shared
cache mode setting.  Ticket [9fd0bc36639c15]

FossilOrigin-Name: f509eb8b488bb39deda4ca88f66ed40c6784af02
2009-09-09 14:17:52 +00:00
drh
3e9ca09453 Code simplifications, especially to the pseudo-table logic, and comment
improvements.

FossilOrigin-Name: 52449a9569b7142095cc88ee208b31cc59a3cab4
2009-09-08 01:14:48 +00:00
drh
ec9b31f033 Avoid calling sqite3VdbeRecordCompare() with uninitialized memory following
an OOM.  Doing so is harmless, but it worries valgrind.

FossilOrigin-Name: d33b9eb2567561ccfdc588c95604cce9b697d768
2009-08-25 13:53:49 +00:00
dan
4361e79f14 Fix a case where SQLite may write past the end of a buffer as a result of a corrupted database file.
FossilOrigin-Name: 43321a556031942389ca11b033c1eae46ac6141b
2009-08-14 17:01:22 +00:00
shane
5eff7cf0c9 Removed some warnings from the MSVC compile. (CVS 6965)
FossilOrigin-Name: ee034cfc71425745dda8d5fee58ae95f937c86cd
2009-08-10 03:57:58 +00:00
drh
eeb844a7f1 Suppress various compiler warnings. (CVS 6963)
FossilOrigin-Name: 257e9b575029f63277ed602d1402f87cfa15d22e
2009-08-08 18:01:07 +00:00
drh
4775ecd06a Further simplifications to pager.c in support of structural coverage testing. (CVS 6929)
FossilOrigin-Name: 866216c0b6ba23b66483046fb402ddbe4f9a7b14
2009-07-24 19:01:19 +00:00
danielk1977
595a523a10 Allow virtual tables to be used in shared-cache mode. (CVS 6928)
FossilOrigin-Name: 5d9e767a05e381235e064061043e30cc03a11a07
2009-07-24 17:58:53 +00:00
drh
e39f2f9326 Simplifications and comment enhancements on btree.c. (CVS 6925)
FossilOrigin-Name: 5ba880dde8a219543ced6f792c7f9ecdcd8c1cbb
2009-07-23 01:43:59 +00:00
drh
5d1a872ab6 Simplifications to btree.c in support of coverage testing. (CVS 6923)
FossilOrigin-Name: 375fd6f9c54fa5aa8cfae30845c7bfc0ec49e8fa
2009-07-22 18:07:40 +00:00
danielk1977
146ba99061 Fix a double-free that can occur after database corruption is detected. (CVS 6921)
FossilOrigin-Name: 5260e8b1048af2e00d49706466d9aded90c24ed2
2009-07-22 14:08:13 +00:00
drh
ea8ffdfec7 Further simplifications to btree.c, especially the sqlite3BtreeKey() and
sqlite3BtreeData() functions.  New assert() statements added to verify
that these routines are called correctly. (CVS 6917)

FossilOrigin-Name: 96cfd079528501f6f1e658ce8a5a4e3bdea729be
2009-07-22 00:35:23 +00:00
danielk1977
89bc4bc645 Change getAndInitPage() (btree.c) to use only PagerAcquire(), not PagerLookup() and PagerAcquire(). (CVS 6916)
FossilOrigin-Name: 0b41dfc066b60ccabbf1a9ab4db41ebcb73a2799
2009-07-21 19:25:24 +00:00
drh
fe3313f9b1 Additional simplifications to btree.c in support of coverage testing. (CVS 6915)
FossilOrigin-Name: 716fccea58c4c217e68e04e0776e44ae39c11950
2009-07-21 19:02:20 +00:00
drh
fd5f02f0c6 Remove an assert() in btree.c which is no longer true due to changes in
the error reporting behavior of ptrmapPut(). (CVS 6914)

FossilOrigin-Name: 110998f18a7ad1ddaffab048cabef675d882cbb8
2009-07-21 15:33:14 +00:00
drh
c314dc7996 Changes to btree.c in support of coverage testing. (CVS 6913)
FossilOrigin-Name: 4cf23e9e860bd6245344884ec84f487fdf36f86f
2009-07-21 11:52:34 +00:00
drh
cd09c53d7f Reverse the order of two conditionals in a test in order to achieve coverage
of them both.  Also: clarifications to comments in btree.c. (CVS 6912)

FossilOrigin-Name: a159e9d24708dfe6c5a98d220e39f3b1b2a3d281
2009-07-20 19:30:00 +00:00
drh
98add2ed74 Modify various routines inside btree.c to take a pointer to the return-code
as a parameter and to no-op if the return-code storage location already
contains a non-zero code. (CVS 6911)

FossilOrigin-Name: 7dcf2a78727ce448d9d26bd6e2e23b553456ec54
2009-07-20 17:11:49 +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
e184965d7e Fix a potential database corruption following DROP TABLE when the pending
byte page corresponds to a ptrmap page.  This situation cannot happen in
a real deployment - but it still needs to be fixed. (CVS 6897)

FossilOrigin-Name: 6242db39f7f4ead5017bf684139d1f8312799f81
2009-07-15 18:15:22 +00:00
drh
4c301aaca8 Simplifications to btree.c in support of structural testing. Renamed the
"skip" field of the BtCursor object to "skipNext" to make it easier to
search for places where it is used. (CVS 6896)

FossilOrigin-Name: d3897235d77e48ad09f7edb0a7641458afa0a282
2009-07-15 17:25:45 +00:00
drh
c046e3edeb Added the SQLITE_TESTCTRL_RESERVE option to sqlite3_test_control().
Simplifications to btree.c to facilitate structural coverage testing. (CVS 6894)

FossilOrigin-Name: cfbeda1b3126503e9631471ce4713e25b007859f
2009-07-15 11:26:44 +00:00
drh
d7c7ecdb01 Simplifications to the PRAGMA integrity_check logic. Remove unreachable code. (CVS 6892)
FossilOrigin-Name: 17749fa5480069cc4909acd992ab26d10afb279d
2009-07-14 17:48:06 +00:00
danielk1977
31d31b87e9 Change an unreachable condition in btree.c to a NEVER(). (CVS 6888)
FossilOrigin-Name: 9f800e11391a108d7aa57f5a96d9a58711129132
2009-07-13 13:18:07 +00:00
danielk1977
a299d61249 In sqlite3PagerWrite(), do not set the PGHDR_NEED_SYNC flag on a page if an IO error occured while attempting to journal it. (CVS 6887)
FossilOrigin-Name: b9be365d85fddedbfa93eebf3ee62a140cbaa426
2009-07-13 11:22:10 +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
3fd7cf5aa1 Remove a case from BtreeMovetoUnpacked() that is unreachable as of (6881). (CVS 6885)
FossilOrigin-Name: 39ce2097da03176e256a2ff35bb857e578f3ca2d
2009-07-13 07:30:52 +00:00
drh
3bcdfd25bd Simplifications to btree.c to help facilitate coverage testing. (CVS 6884)
FossilOrigin-Name: dfb146ef003bae8ff216baf68cc43d7eb7855c68
2009-07-12 02:32:21 +00:00
drh
fb1926837a Remove an unused parameter from the accessPayload() function in btree.c. (CVS 6882)
FossilOrigin-Name: 7deb6568d89335926b77336756837c6dc3985529
2009-07-11 18:26:28 +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
drh
41d628c123 Bug fix in the computation of the number of pages to autovacuum when
nReserve is greater than zero. (CVS 6880)

FossilOrigin-Name: 618a83d65f973183d21245721dc656a35ff594a4
2009-07-11 17:04:08 +00:00
drh
a4ec1d443a Unwind some complex conditions in sqlite3BtreeDelete() into
separate "if" statements. (CVS 6879)

FossilOrigin-Name: d99bde9ca61eeccfe6363ff0882fd4bcdb9a34dc
2009-07-11 13:13:11 +00:00
danielk1977
d8a3f3dd0d Remove another unreachable branch from btree.c. (CVS 6878)
FossilOrigin-Name: b0853100a9f8e185e8d027502822337a79a2ba0c
2009-07-11 11:45:23 +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
171fff3c9a Remove unreachable condition from btree.c. (CVS 6876)
FossilOrigin-Name: 47b40fefa67f7c563ce2004509aaf8e203038be4
2009-07-11 05:06:51 +00:00