]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Merge all the latest trunk changes into the sessions branch, especially
authordrh <drh@noemail.net>
Thu, 19 May 2011 02:48:46 +0000 (02:48 +0000)
committerdrh <drh@noemail.net>
Thu, 19 May 2011 02:48:46 +0000 (02:48 +0000)
the disappearing WAL transaction fix.

FossilOrigin-Name: 5b1b536cf828850d0e8ac2ab08e8696082715877

1  2 
main.mk
manifest
manifest.uuid
src/main.c
src/sqlite.h.in
src/sqliteInt.h
src/test_config.c
src/vdbe.c
src/vdbeaux.c
test/tester.tcl

diff --cc main.mk
Simple merge
diff --cc manifest
index 0c02b5eafe7371cc995b62ddcce1382893b75b4b,a2fbca16d75c5e183155053362fe3d233bd31a7e..7c550ad27a4dbdf47e5a34196e8ce8c886571984
+++ b/manifest
@@@ -1,7 -1,7 +1,7 @@@
- C Merge\sthe\slatest\strunk\schanges\sinto\sthe\ssessions\sbranch.
- D 2011-05-05T15:46:16.843
 -C When\scommitting\sa\sWAL\stransaction,\smake\ssure\sat\sleast\sone\spage\sis\nwritten\sto\sthe\sWAL\sfile\sso\sthat\sthe\sWAL\ssubsystem\swill\shave\sa\spage\non\swhich\sto\sset\sthe\scommit\sflag.\nTicket\s[2d1a5c67dfc236].
 -D 2011-05-19T01:21:42.431
++C Merge\sall\sthe\slatest\strunk\schanges\sinto\sthe\ssessions\sbranch,\sespecially\nthe\sdisappearing\sWAL\stransaction\sfix.
++D 2011-05-19T02:48:46.609
  F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f
- F Makefile.in 7a4d9524721d40ef9ee26f93f9bd6a51dba106f2
+ F Makefile.in 11dcc00a8d0e5202def00e81732784fb0cc4fe1d
  F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23
  F Makefile.vxworks c85ec1d8597fe2f7bc225af12ac1666e21379151
  F README cd04a36fbc7ea56932a4052d7d0b7f09f27c33d6
@@@ -100,19 -100,9 +100,19 @@@ F ext/rtree/rtree_util.tcl 06aab2ed5b82
  F ext/rtree/sqlite3rtree.h 1af0899c63a688e272d69d8e746f24e76f10a3f0
  F ext/rtree/tkt3363.test 142ab96eded44a3615ec79fba98c7bde7d0f96de
  F ext/rtree/viewrtree.tcl eea6224b3553599ae665b239bd827e182b466024
 +F ext/session/session1.test f5d9f2e362abe2563181389509822bda956516ee
 +F ext/session/session2.test 99ca0da7ddb617d42bafd83adccf99f18ae0384b
 +F ext/session/session3.test a7a9ce59b8d1e49e2cc23d81421ac485be0eea01
 +F ext/session/session4.test a6ed685da7a5293c5d6f99855bcf41dbc352ca84
 +F ext/session/session5.test 8fdfaf9dba28a2f1c6b89b06168bdab1fef2d478
 +F ext/session/session_common.tcl 1539d8973b2aea0025c133eb0cc4c89fcef541a5
 +F ext/session/sessionfault.test 401045278298a242cbc2e4bc986c102f01ff2180
 +F ext/session/sqlite3session.c 26de50c3e34d89ae62e97024ad07e772e1c52db2
 +F ext/session/sqlite3session.h 665f5591562e3c71eb3d0da26f1a1efae26f7bcf
 +F ext/session/test_session.c 311e5b9228374d0b5780448f289847ff1cf7d388
  F install-sh 9d4de14ab9fb0facae2f48780b874848cbf2f895 x
  F ltmain.sh 3ff0879076df340d2e23ae905484d8c15d5fdea8
- F main.mk 352002cedf9e754ec96cfe0a8d1688cdea343fea
 -F main.mk 6111163d4e9720e4212ef288e967b4aa2c2ce379
++F main.mk bc31e3b2cfa42337a34fc4509a1b550c0cd5b202
  F mkdll.sh 7d09b23c05d56532e9d44a50868eb4b12ff4f74a
  F mkextu.sh 416f9b7089d80e5590a29692c9d9280a10dbad9f
  F mkextw.sh 4123480947681d9b434a5e7b1ee08135abe409ac
@@@ -154,8 -144,8 +154,8 @@@ F src/journal.c 552839e54d1bf76fb8f7abe
  F src/legacy.c a199d7683d60cef73089e892409113e69c23a99f
  F src/lempar.c 7f026423f4d71d989e719a743f98a1cbd4e6d99e
  F src/loadext.c 3ae0d52da013a6326310655be6473fd472347b85
- F src/main.c 8b97db74cb876bf34ca4fb3720b18e4ffdcf9fd5
- F src/malloc.c 74c740e8ba22b806cfb980c8c0ddea1cbd54a20e
 -F src/main.c 059daeed5876b3604f0192f838faf5f4db138901
++F src/main.c 8206d7970cb858979ec84eea9a5eff2b575849a6
+ F src/malloc.c 591aedb20ae40813f1045f2ef253438a334775d9
  F src/mem0.c 6a55ebe57c46ca1a7d98da93aaa07f99f1059645
  F src/mem1.c 00bd8265c81abb665c48fea1e0c234eb3b922206
  F src/mem2.c e307323e86b5da1853d7111b68fd6b84ad6f09cf
@@@ -188,17 -178,17 +188,17 @@@ F src/random.c cd4a67b3953b88019f8cd4cc
  F src/resolve.c 1c0f32b64f8e3f555fe1f732f9d6f501a7f05706
  F src/rowset.c 69afa95a97c524ba6faf3805e717b5b7ae85a697
  F src/select.c d9d440809025a58547e39f4f268c2a296bfb56ff
- F src/shell.c 72e7e176bf46d5c6518d15ac4ad6847c4bb5df79
- F src/sqlite.h.in 628de30f6063695288eadf34c167e49bc34c9828
+ F src/shell.c decd04236a7ef26be5ef46d4ea963044bfad9a48
 -F src/sqlite.h.in 8bbf8d9bc5f1a9474a633a2de7014506f1f06b90
++F src/sqlite.h.in b851102bb0840bf6d4dde5d6690c2ad127a65ade
  F src/sqlite3ext.h c90bd5507099f62043832d73f6425d8d5c5da754
- F src/sqliteInt.h 1577ac69cb67a1dc0c07974a4e5129b1cde039a3
 -F src/sqliteInt.h 771087591052966d36ac1fcd3c8bb7a8c6cf9a38
++F src/sqliteInt.h 2fb482cff778112e6b2797226f30f3862a627468
  F src/sqliteLimit.h 164b0e6749d31e0daa1a4589a169d31c0dec7b3d
  F src/status.c 7ac64842c86cec2fc1a1d0e5c16d3beb8ad332bf
  F src/table.c 2cd62736f845d82200acfa1287e33feb3c15d62e
 -F src/tclsqlite.c 501c9a200fd998a268be475be5858febc90b725b
 +F src/tclsqlite.c fe0da0eb0ebd8d21eec90683b779456e64351de6
- F src/test1.c e0e4af306b678da05334c2ccaf0377ae8f06e911
+ F src/test1.c 4a1171af201be90c21d64a872e686b1333d9a2cf
  F src/test2.c 80d323d11e909cf0eb1b6fbb4ac22276483bcf31
- F src/test3.c 056093cfef69ff4227a6bdb9108564dc7f45e4bc
+ F src/test3.c 124ff9735fb6bb7d41de180d6bac90e7b1509432
  F src/test4.c d1e5a5e904d4b444cf572391fdcb017638e36ff7
  F src/test5.c e1a19845625144caf038031234a12185e40d315c
  F src/test6.c c7256cc21d2409486d094277d5b017e8eced44ba
@@@ -209,7 -199,7 +209,7 @@@ F src/test_async.c 0612a752896fad42d55c
  F src/test_autoext.c 30e7bd98ab6d70a62bb9ba572e4c7df347fe645e
  F src/test_backup.c c129c91127e9b46e335715ae2e75756e25ba27de
  F src/test_btree.c 47cd771250f09cdc6e12dda5bc71bc0b3abc96e2
- F src/test_config.c 25a4128c2dc9e1dbebafcb7e8c61d45f09f7fbc3
 -F src/test_config.c 9a6aa8301a56906612b5e70f5b38e80cfb8af8e7
++F src/test_config.c 2794d55f27c7faa6c8203b15e634e7103953ddcc
  F src/test_demovfs.c 938d0f595f8bd310076e1c06cf7885a01ce7ce01
  F src/test_devsym.c e7498904e72ba7491d142d5c83b476c4e76993bc
  F src/test_func.c cbdec5cededa0761daedde5baf06004a9bf416b5
@@@ -242,15 -232,15 +242,15 @@@ F src/test_wholenumber.c 6129adfbe7c744
  F src/test_wsd.c 41cadfd9d97fe8e3e4e44f61a4a8ccd6f7ca8fe9
  F src/tokenize.c 604607d6813e9551cf5189d899e0a25c12681080
  F src/trigger.c 144cc18bb701f3286484aae4292a9531f09278c8
 -F src/update.c 5bcb56e5c7380a2eecb0e71891dbd4ad7437748f
 +F src/update.c f66b651c15e42875f36501ec39a968e836ee5586
  F src/utf.c d83650c3ea08f7407bd9d0839d9885241c209c60
- F src/util.c 465fe10aabf0ca7d7826a156dab919b0b65c525a
+ F src/util.c 0f33bbbdfcc4a2d8cf20c3b2a16ffc3b57c58a70
  F src/vacuum.c 05513dca036a1e7848fe18d5ed1265ac0b32365e
- F src/vdbe.c fa5bfc0c820706a1f78042b134a0f7a388ca9a3e
 -F src/vdbe.c 343a068e8daeb8475e66776feb9f2974046e95c5
 -F src/vdbe.h 8a675fefdf7119441fe817c800a9a52440c2e797
 -F src/vdbeInt.h fe8f58d305e629fff02f61f655aca1d299f1f6ae
 -F src/vdbeapi.c e0e2672e0a96ae3f8575c8ecd02912a3e8a554a1
 -F src/vdbeaux.c 535851211df61d83213c83d5ffd3c6ce9ecbdc18
++F src/vdbe.c af2e9d0ffd3e111140bc51769f6995834be69e11
 +F src/vdbe.h 44fd57aeed86da0cd31206626c13cdde0e72cc0e
 +F src/vdbeInt.h b95de01246c15499c700ae00cfda0de25c01358a
 +F src/vdbeapi.c 8051038f7674c708f4515ab189fc3ea929e09a4c
- F src/vdbeaux.c cc95d80b899b75829cb93d260d3f14125a5c26ad
++F src/vdbeaux.c be135f46ee48b5726fb59ca41224475c1dbe8f8b
  F src/vdbeblob.c c3ccb7c8732858c680f442932e66ad06bb036562
  F src/vdbemem.c 0498796b6ffbe45e32960d6a1f5adfb6e419883b
  F src/vdbetrace.c 5d0dc3d5fd54878cc8d6d28eb41deb8d5885b114
@@@ -700,7 -691,7 +702,7 @@@ F test/tclsqlite.test 1ce9b6340d6d41242
  F test/tempdb.test 19d0f66e2e3eeffd68661a11c83ba5e6ace9128c
  F test/temptable.test f42121a0d29a62f00f93274464164177ab1cc24a
  F test/temptrigger.test b0273db072ce5f37cf19140ceb1f0d524bbe9f05
- F test/tester.tcl cf301cdb35f20378b086849acd26a4574187183f
 -F test/tester.tcl a791ee74cb6b8f8613079ccc018bf2c8b952a26c
++F test/tester.tcl 1949b4af9701daaca189fd5d53a6e48173c162af
  F test/thread001.test a3e6a7254d1cb057836cb3145b60c10bf5b7e60f
  F test/thread002.test afd20095e6e845b405df4f2c920cb93301ca69db
  F test/thread003.test b824d4f52b870ae39fc5bae4d8070eca73085dca
@@@ -944,7 -938,7 +949,7 @@@ F tool/speedtest8.c 2902c46588c40b55661
  F tool/speedtest8inst1.c 293327bc76823f473684d589a8160bde1f52c14e
  F tool/split-sqlite3c.tcl d9be87f1c340285a3e081eb19b4a247981ed290c
  F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f
- P b91b4c31fe311b292044c9c747feba294ffce25c 930be6a1bdec8c150caafd790973f7a401fc1970
- R 13217a0634732c3fc1250bf1a2936d3d
 -P de58cb28387f44c35b1a81bdab853cafd938c1a6
 -R e623b89a5e0b9474dd0884ecf24382fc
++P 6883580e6c8973010a42d1d2c5bde04c6b2f4eb7 67bf1c9a888b0d84d252d6c4c754c2c51994d208
++R f15f9213bb9ad0f88efa9254eb2387a3
  U drh
- Z f29377c78641e183f6acae5b288b38b3
 -Z 83669a82fd950b01af57955dbca1c918
++Z 1a1886a9d9151866e45101a5d0e49b24
diff --cc manifest.uuid
index c83e756c42c0f3a8a44a597ae215f6023ae492ef,ad5e5387847228a7588ff6dc44d9333d51ca5ca9..fe55e4156524c3eaaa530394ec7c3149d7c5654a
@@@ -1,1 -1,1 +1,1 @@@
- 6883580e6c8973010a42d1d2c5bde04c6b2f4eb7
 -67bf1c9a888b0d84d252d6c4c754c2c51994d208
++5b1b536cf828850d0e8ac2ab08e8696082715877
diff --cc src/main.c
Simple merge
diff --cc src/sqlite.h.in
Simple merge
diff --cc src/sqliteInt.h
Simple merge
Simple merge
diff --cc src/vdbe.c
index 420afd41e2ac4938d0e1dc32ebcd944df06f46d1,cac0906998c8b8944d364a48349a38209ee6cda6..59154b6aa71bc31d5beda4d1a4c6fc07518e67c5
@@@ -3929,26 -3922,8 +3933,26 @@@ case OP_InsertInt: 
      iKey = pOp->p3;
    }
  
 +  if( pOp->p4type==P4_TABLE && HAS_UPDATE_HOOK(db) ){
 +    assert( pC->isTable );
 +    assert( pC->iDb>=0 );
 +    zDb = db->aDb[pC->iDb].zName;
 +    pTab = pOp->p4.pTab;
 +    op = ((pOp->p5 & OPFLAG_ISUPDATE) ? SQLITE_UPDATE : SQLITE_INSERT);
 +  }
 +
 +#ifdef SQLITE_ENABLE_PREUPDATE_HOOK
 +  /* Invoke the pre-update hook, if any */
 +  if( db->xPreUpdateCallback 
 +   && pOp->p4type==P4_TABLE
 +   && (!(pOp->p5 & OPFLAG_ISUPDATE) || pC->rowidIsValid==0)
 +  ){
 +    sqlite3VdbePreUpdateHook(p, pC, SQLITE_INSERT, zDb, pTab, iKey, pOp->p2);
 +  }
 +#endif
 +
    if( pOp->p5 & OPFLAG_NCHANGE ) p->nChange++;
-   if( pOp->p5 & OPFLAG_LASTROWID ) db->lastRowid = iKey;
+   if( pOp->p5 & OPFLAG_LASTROWID ) db->lastRowid = lastRowid = iKey;
    if( pData->flags & MEM_Null ){
      pData->z = 0;
      pData->n = 0;
diff --cc src/vdbeaux.c
Simple merge
diff --cc test/tester.tcl
Simple merge