diff --git a/manifest b/manifest index ec3deff973..86986efb67 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Changes\sto\ssupport\smedium\ssector\ssizes\slarger\sthan\sthe\sdatabase\spage\ssize.\s(CVS\s3701) -D 2007-03-19T11:25:20 +C Fix\sa\scomment\sin\sbtree.c\s(CVS\s3702) +D 2007-03-19T11:54:10 F Makefile.in 1fe3d0b46e40fd684e1e61f8e8056cefed16de9f F Makefile.linux-gcc 2d8574d1ba75f129aba2019f0b959db380a90935 F README 9c4e2d6706bdcc3efdd773ce752a8cdab4f90028 @@ -58,7 +58,7 @@ F src/alter.c 2c79ec40f65e33deaf90ca493422c74586e481a3 F src/analyze.c 7d2b7ab9a9c2fd6e55700f69064dfdd3e36d7a8a F src/attach.c fd286a9140a2df84b1482f052b67ff5fad9569a1 F src/auth.c 902f4722661c796b97f007d9606bd7529c02597f -F src/btree.c 4336ada77332acb947af6d382f0f3648ea9d8b6c +F src/btree.c f5278b44929198098ed382101ce97b58ceacb5cd F src/btree.h 066444ee25bd6e6accb997bfd2cf5ace14dbcd00 F src/build.c f2edc786b5bf165a7d0949ed3a5872455a610c0e F src/callback.c 31d22b4919c7645cbcbb1591ce2453e8c677c558 @@ -437,7 +437,7 @@ F www/tclsqlite.tcl bb0d1357328a42b1993d78573e587c6dcbc964b9 F www/vdbe.tcl 87a31ace769f20d3627a64fa1fade7fed47b90d0 F www/version3.tcl 890248cf7b70e60c383b0e84d77d5132b3ead42b F www/whentouse.tcl 97e2b5cd296f7d8057e11f44427dea8a4c2db513 -P 5752d84d374205e011d49b0221d6237967fe0743 -R 35e0cdc81bf64a560c8bcc30c7e3b7e8 -U danielk1977 -Z 835c96473334a1bbc531e7fce3e63932 +P 3a3e8eb25d8e04cfccc5c0513ed04efcc25d3dbf +R a297b1419430310b47806366b750440a +U drh +Z 55992e8d0ba687290ede6e38f8418c27 diff --git a/manifest.uuid b/manifest.uuid index 4a1553172f..200fd54ba3 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -3a3e8eb25d8e04cfccc5c0513ed04efcc25d3dbf \ No newline at end of file +05700c11a9e5177a437d2240e72fb61ea47b973b \ No newline at end of file diff --git a/src/btree.c b/src/btree.c index fe04ddc9ac..12aa538df0 100644 --- a/src/btree.c +++ b/src/btree.c @@ -9,7 +9,7 @@ ** May you share freely, never taking more than you give. ** ************************************************************************* -** $Id: btree.c,v 1.339 2007/03/19 11:25:20 danielk1977 Exp $ +** $Id: btree.c,v 1.340 2007/03/19 11:54:10 drh Exp $ ** ** This file implements a external (disk-based) database using BTrees. ** For a detailed discussion of BTrees, refer to @@ -2649,25 +2649,16 @@ static int dfltCompare( ** ** 1: The cursor must have been opened with wrFlag==1 ** -** 2: No other cursors may be open with wrFlag==0 on the same table +** 2: Other database connections that share the same pager cache +** but which are not in the READ_UNCOMMITTED state may not have +** cursors open with wrFlag==0 on the same table. Otherwise +** the changes made by this write cursor would be visible to +** the read cursors in the other database connection. ** ** 3: The database must be writable (not on read-only media) ** ** 4: There must be an active transaction. ** -** Condition 2 warrants further discussion. If any cursor is opened -** on a table with wrFlag==0, that prevents all other cursors from -** writing to that table. This is a kind of "read-lock". When a cursor -** is opened with wrFlag==0 it is guaranteed that the table will not -** change as long as the cursor is open. This allows the cursor to -** do a sequential scan of the table without having to worry about -** entries being inserted or deleted during the scan. Cursors should -** be opened with wrFlag==0 only if this read-lock property is needed. -** That is to say, cursors should be opened with wrFlag==0 only if they -** intend to use the sqlite3BtreeNext() system call. All other cursors -** should be opened with wrFlag==1 even if they never really intend -** to write. -** ** No checking is done to make sure that page iTable really is the ** root page of a b-tree. If it is not, then the cursor acquired ** will not work correctly.