From: drh Date: Wed, 14 Sep 2011 19:05:55 +0000 (+0000) Subject: Merge in the latest changes from trunk. X-Git-Tag: mountain-lion~21 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b19e7036cd86c6c8ec84a0a21b627d47731cd083;p=thirdparty%2Fsqlite.git Merge in the latest changes from trunk. FossilOrigin-Name: 2456b4d0d2522dd2541146031347bc5e51f2036f --- b19e7036cd86c6c8ec84a0a21b627d47731cd083 diff --cc manifest index 0f864e3ed4,bccc5fe4dc..7f32a14ca2 --- a/manifest +++ b/manifest @@@ -1,10 -1,10 +1,10 @@@ - C Merge\sthe\slatest\strunk\schanges\sinto\sthe\sapple-osx\sbranch. - D 2011-08-26T19:18:50.781 -C Remove\s'const'\sfrom\sa\svariable\sthat\smight\sactually\sbe\swritten\swhen\san\sOOM\serror\soccurs.\sAlso,\sfix\sa\scouple\sMSVC/Win32\scompiler\swarnings. -D 2011-09-14T18:19:08.529 ++C Merge\sin\sthe\slatest\schanges\sfrom\strunk. ++D 2011-09-14T19:05:55.068 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f - F Makefile.in 6d45d7ea497fd85ae06fd6e742b7cb579a02f732 -F Makefile.in d314143fa6be24828021d3f583ad37d9afdce505 ++F Makefile.in 55bbee3ada084d4aa4dab9e1e0d90a21aab8bbcf F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 - F Makefile.msc 55fe94bf23b4c1ff035f19b0ae2ea486350f8d01 - F Makefile.vxworks c85ec1d8597fe2f7bc225af12ac1666e21379151 + F Makefile.msc 25da409ce0c7799e57f48a729a8e153b23027adc + F Makefile.vxworks 1deb39c8bb047296c30161ffa10c1b5423e632f9 F README cd04a36fbc7ea56932a4052d7d0b7f09f27c33d6 F VERSION f724de7326e87b7f3b0a55f16ef4b4d993680d54 F aclocal.m4 a5c22d164aff7ed549d53a90fa56d56955281f50 @@@ -102,12 -102,9 +102,12 @@@ 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/sqlrr/README.txt 4239030e73023e72a2e727808cd433577d5bf730 +F ext/sqlrr/sqlrr.c 8d1e6571cd6a6beabdb5bcdfe3a0e723b914db41 +F ext/sqlrr/sqlrr.h 09e4f8929ad9bc2638732c0cc0db5eef8c417824 F install-sh 9d4de14ab9fb0facae2f48780b874848cbf2f895 x F ltmain.sh 3ff0879076df340d2e23ae905484d8c15d5fdea8 - F main.mk 5e57a614cd8db5935cdfd0ba6b8dcec37b33ccd0 -F main.mk 8744cb76517817170f7fd2c78fbf0006fabb93c1 ++F main.mk b737d8be1b00b3bd684c38441ba0c6b95aedf95b F mkdll.sh 7d09b23c05d56532e9d44a50868eb4b12ff4f74a F mkextu.sh 416f9b7089d80e5590a29692c9d9280a10dbad9f F mkextw.sh 4123480947681d9b434a5e7b1ee08135abe409ac @@@ -127,19 -124,19 +127,19 @@@ F src/auth.c 523da7fb4979469955d822ff92 F src/backup.c 28a4fe55327ff708bfaf9d4326d02686f7a553c3 F src/bitvec.c af50f1c8c0ff54d6bdb7a80e2fceca5a93670bef F src/btmutex.c 976f45a12e37293e32cae0281b15a21d48a8aaa7 - F src/btree.c a10d12745f395ca313e62b455b687db987260a7e - F src/btree.h 9ddf04226eac592d4cc3709c5a8b33b2351ff5f7 -F src/btree.c 77b09c69d4849a90361e6fe5db36d167f20600c0 ++F src/btree.c 71a65f9bbdc3c93bd0f043aa9148b751474cea5e + F src/btree.h f5d775cd6cfc7ac32a2535b70e8d2af48ef5f2ce F src/btreeInt.h 67978c014fa4f7cc874032dd3aacadd8db656bc3 - F src/build.c 2d5de52df616a3bf5a659cbca85211c46e2ba9bd + F src/build.c 851e81f26a75abbb98bd99a7c5f10e8670d867bb F src/callback.c 0425c6320730e6d3981acfb9202c1bed9016ad1a F src/complete.c dc1d136c0feee03c2f7550bafc0d29075e36deac - F src/ctime.c caf51429be3e0d4114056a8273b0fff812ff8ae9 + F src/ctime.c e3132ec65240b2e2f3d50831021eac387f27584d F src/date.c a3c6842bad7ae632281811de112a8ba63ff08ab3 F src/delete.c ff68e5ef23aee08c0ff528f699a19397ed8bbed8 - F src/expr.c 4bbdfaf66bc614be9254ce0c26a17429067a3e07 + F src/expr.c cbcd8c2f1588a9862291a081699854c5e1cb28ab F src/fault.c 160a0c015b6c2629d3899ed2daf63d75754a32bb F src/fkey.c 9f00ea98f6b360d477b5a78b5b59a1fbde82431c -F src/func.c 59bb046d7e3df1ab512ac339ccb0a6f996a17cb7 +F src/func.c 1b9d471b632d8529e0f86b7bd2b918dcc2cb1097 F src/global.c c70a46f28680f8d7c097dbc0430ccf3b932e90b0 F src/hash.c 458488dcc159c301b8e7686280ab209f1fb915af F src/hash.h 2894c932d84d9f892d4b4023a75e501f83050970 @@@ -164,14 -161,14 +164,14 @@@ F src/mutex_os2.c 882d735098c07c8c6a547 F src/mutex_unix.c b4f4e923bb8de93ec3f251fadb50855f23df9579 F src/mutex_w32.c 5e54f3ba275bcb5d00248b8c23107df2e2f73e33 F src/notify.c 976dd0f6171d4588e89e874fcc765e92914b6d30 -F src/os.c fcc717427a80b2ed225373f07b642dc1aad7490b +F src/os.c af614089eb9328f3a6a8374d2e4c12ff2761988b F src/os.h 9dbed8c2b9c1f2f2ebabc09e49829d4777c26bf9 - F src/os_common.h 65a897143b64667d23ed329a7984b9b405accb58 + F src/os_common.h 92815ed65f805560b66166e3583470ff94478f04 F src/os_os2.c 4a75888ba3dfc820ad5e8177025972d74d7f2440 - F src/os_unix.c 0cac72a676f4df029fc9fffd1223d6bf307e02c6 - F src/os_win.c 86bcb5bd0386c761c764c3383879469346da3a14 - F src/pager.c 382b3dd2b5c39691f5545454287c232d196c2353 - F src/pager.h 2bab1b2ea4eac58663b5833e3522e36b5ff63447 -F src/os_unix.c 10e0c4dcdbec8d4189890fdf3e71b32efae194e3 ++F src/os_unix.c fed168d5299f156532d98d88b9dee601611bfe6e + F src/os_win.c 33b7b7b48939af5cef2305f5ded19d45c025e2c7 -F src/pager.c 5545863e4e246e1744cfb6993821c6e4b63ffb64 ++F src/pager.c e36f6225d5530898aae33667143c36d676f64508 + F src/pager.h 6bea8d1949db33768de1c5b4133b267b40845f8b F src/parse.y 12b7ebd61ea54f0e1b1083ff69cc2c8ce9353d58 F src/pcache.c 49e718c095810c6b3334e3a6d89970aceaddefce F src/pcache.h c683390d50f856d4cd8e24342ae62027d1bb6050 @@@ -182,17 -179,16 +182,17 @@@ F src/printf.c 585a36b6a963df832cfb6950 F src/random.c cd4a67b3953b88019f8cd4ccd81394a8ddfaba50 F src/resolve.c 36368f44569208fa074e61f4dd0b6c4fb60ca2b4 F src/rowset.c 69afa95a97c524ba6faf3805e717b5b7ae85a697 - F src/select.c 015f2371832c921254220f9f15568f66601935f6 -F src/select.c bf7b7ea6befb483619da5f597b0864668b828c3c ++F src/select.c 97b75b400070829833dfdebbd8a8575321d2f444 F src/shell.c bbe7818ff5bc8614105ceb81ad67b8bdc0b671dd -F src/sqlite.h.in 0a6c9c23337fd1352c5c75a613ff9533aa7d91cb +F src/sqlite.h.in 175065018323ca082092f92873e074647d00bec2 +F src/sqlite3_private.h 1d18557420cb0cc51ff31ec0a3fcce11e5cd6f5a F src/sqlite3ext.h 1a1a4f784aa9c3b00edd287940197de52487cd93 - F src/sqliteInt.h 1bcfb53f94421a44d606d540d635889fe2fa1095 -F src/sqliteInt.h c7e37ee49b1a922ddcd18fa98dd750efa4d2db14 ++F src/sqliteInt.h d1575c53663f4367f5d81abadd5770abc720cb1a F src/sqliteLimit.h 164b0e6749d31e0daa1a4589a169d31c0dec7b3d F src/status.c 7ac64842c86cec2fc1a1d0e5c16d3beb8ad332bf F src/table.c 2cd62736f845d82200acfa1287e33feb3c15d62e F src/tclsqlite.c 3ef1dda2f1dc207c792eaadebf9d8adc44648581 - F src/test1.c d94212eb95dc8bdb946bab5ee652ef3d9b846dae -F src/test1.c 0f41b7c67719207a5de24b009e172c4dcf189827 ++F src/test1.c 48759e7898dd7af7ae2b01de12045814583e15c6 F src/test2.c 80d323d11e909cf0eb1b6fbb4ac22276483bcf31 F src/test3.c 124ff9735fb6bb7d41de180d6bac90e7b1509432 F src/test4.c d1e5a5e904d4b444cf572391fdcb017638e36ff7 @@@ -228,10 -224,10 +228,10 @@@ F src/test_rtree.c a2eebb68c0f1463918cd F src/test_schema.c 8c06ef9ddb240c7a0fcd31bc221a6a2aade58bf0 F src/test_server.c 2f99eb2837dfa06a4aacf24af24c6affdf66a84f F src/test_stat.c f682704b5d1ba8e1d4e7e882a6d7922e2dcf066c -F src/test_superlock.c 2b97936ca127d13962c3605dbc9a4ef269c424cd +F src/test_superlock.c 12e2bc484c6c2ba837327d37f2e6a6fd9d1464f8 F src/test_syscall.c a992d8c80ea91fbf21fb2dd570db40e77dd7e6ae F src/test_tclvar.c f4dc67d5f780707210d6bb0eb6016a431c04c7fa - F src/test_thread.c dc77f920d24f2f515bd315b87942b6396332a414 + F src/test_thread.c 35022393dd54d147b998b6b7f7e945b01114d666 F src/test_vfs.c b0baec983bd6f872715a4b44c8f39104fec333af F src/test_vfstrace.c 0b884e06094a746da729119a2cabdc7aa790063d F src/test_wholenumber.c 6129adfbe7c7444f2e60cc785927f3aa74e12290 @@@ -242,18 -238,18 +242,18 @@@ F src/update.c 74a6cfb34e9732c1e2a86278 F src/utf.c c53eb7404b3eb5c1cbb5655c6a7a0e0ce6bd50f0 F src/util.c 06302ffd2b80408d4f6c7af71f7090e0cf8d8ff7 F src/vacuum.c 05513dca036a1e7848fe18d5ed1265ac0b32365e - F src/vdbe.c 0d70d10e2e1ab0c2b9287c9d43e25c1c9c8c74ff - F src/vdbe.h 2bf6ec77d8b9980fc19da6e0b0a36d0dbf884ce4 - F src/vdbeInt.h f9250326f264ca5f100acc19e9c07096bb889096 -F src/vdbe.c 7008edbf8f608d82c035dcb1c56367ad85e68aaa ++F src/vdbe.c e46c71dbce112e6d6ad270a113792e050c706f9c + F src/vdbe.h a10b360bf69474babc8aba8fcc64b824c5e97d38 + F src/vdbeInt.h 693d6ac6810298fc6b4c503cfbe3f99a240f40af -F src/vdbeapi.c 11dc47987abacb76ad016dcf5abc0dc422482a98 +F src/vdbeapi.c 335435e65443f38d3073b5043e80cbbb7090c2d9 - F src/vdbeaux.c 11b0df8822ecf61e543562247207df75e2ebb617 + F src/vdbeaux.c ca8aa399e1be85fe82498b107128297a5d84e6a2 F src/vdbeblob.c f024f0bf420f36b070143c32b15cc7287341ffd3 - F src/vdbemem.c 0498796b6ffbe45e32960d6a1f5adfb6e419883b - F src/vdbesort.c 8a61a6d731cbe612217edf9eece6197f37c9489e + F src/vdbemem.c 5e6effb96dd53d233361cbfaa3f0a43b9af689e9 + F src/vdbesort.c 468d43c057063e54da4f1988b38b4f46d60e7790 -F src/vdbetrace.c 5d0dc3d5fd54878cc8d6d28eb41deb8d5885b114 +F src/vdbetrace.c 4b92fe7355f682368203d29b2be7125cbab85e79 F src/vtab.c 901791a47318c0562cd0c676a2c6ff1bc530e582 -F src/wal.c 3154756177d6219e233d84291d5b05f4e06ff5e9 -F src/wal.h 66b40bd91bc29a5be1c88ddd1f5ade8f3f48728a +F src/wal.c 92c7c876b026d5e38fab3ce332e49266ffcf8b2b +F src/wal.h e75d87752bd5df3dc4152ee2cb3b0dcd0b309e5e F src/walker.c 3112bb3afe1d85dc52317cb1d752055e9a781f8f F src/where.c 7d09f4c1512affb60cc1190a4b33d121d4ce039a F test/8_3_names.test 631ea964a3edb091cf73c3b540f6bcfdb36ce823 @@@ -614,10 -609,10 +614,10 @@@ F test/notnull.test cc7c78340328e6112a1 F test/null.test a8b09b8ed87852742343b33441a9240022108993 F test/openv2.test 0d3040974bf402e19b7df4b783e447289d7ab394 F test/oserror.test 3fe52e0bd2891a9bf7cdeb639554992453d46301 - F test/pager1.test 21ec8ef96675aaa7839a0a474ab965d8d5c084fa -F test/pager1.test 2d3a7c6facd899d8879d23f31454cc53f49358b9 ++F test/pager1.test 1fb47476f57ebafa05a157b73ec7a10e96c1ac10 F test/pager2.test 745b911dde3d1f24ae0870bd433dfa83d7c658c1 F test/pager3.test 3856d9c80839be0668efee1b74811b1b7f7fc95f -F test/pagerfault.test 452f2cc23e3bfcfa935f4442aec1da4fe1dc0442 +F test/pagerfault.test a15ef77c8495882d7debb43794e87b6e46174c8a F test/pagerfault2.test 1f79ea40d1133b2683a2f811b00f2399f7ec2401 F test/pagerfault3.test f16e2efcb5fc9996d1356f7cbc44c998318ae1d7 F test/pageropt.test 8146bf448cf09e87bb1867c2217b921fb5857806 @@@ -666,8 -661,8 +666,8 @@@ F test/select9.test 74c0fb2c6eecb0219cb F test/selectA.test 06d1032fa9009314c95394f2ca2e60d9f7ae8532 F test/selectB.test 0d072c5846071b569766e6cd7f923f646a8b2bfa F test/selectC.test f9bf1bc4581b5b8158caa6e4e4f682acb379fb25 - F test/server1.test f5b790d4c0498179151ca8a7715a65a7802c859c + F test/server1.test 46803bd3fe8b99b30dbc5ff38ffc756f5c13a118 -F test/shared.test 34945a516532b11182c3eb26e31247eee3c9ae48 +F test/shared.test 9d9b7085f877a8fd4bf3b353f53e52352edbf3f5 F test/shared2.test 8f71d4eb4d5261280de92284df74172545c852cc F test/shared3.test ebf77f023f4bdaa8f74f65822b559e86ce5c6257 F test/shared4.test 72d90821e8d2fc918a08f16d32880868d8ee8e9d @@@ -701,13 -696,13 +701,13 @@@ F test/sysfault.test c79441d88d23696fbe F test/table.test 50c47f5fe9c112e92723af27cd735e6c92de6f85 F test/tableapi.test 2674633fa95d80da917571ebdd759a14d9819126 F test/tclsqlite.test 5ebcbb0dccc3fbc1edc3bba84c38e2c2d574c5aa -F test/tempdb.test 19d0f66e2e3eeffd68661a11c83ba5e6ace9128c +F test/tempdb.test 3263e5c3f0604e54d307481e8587327c54544d18 F test/temptable.test 51edd31c65ed1560dd600b1796e8325df96318e2 F test/temptrigger.test 26670ed7a39cf2296a7f0a9e0a1d7bdb7abe936d -F test/tester.tcl 0b2999b578964297663de4870babbbee29225622 +F test/tester.tcl 73327b8ef71ac6338a8811f6e3dee41715332f08 - F test/thread001.test a3e6a7254d1cb057836cb3145b60c10bf5b7e60f - F test/thread002.test 716631b06cccf33b368ab7f6dd3cad92907b8928 - F test/thread003.test 33d2d46e6a53ccb2ff8dc4d0c4e3b3aaee36dcd1 + F test/thread001.test 7cc2ce08f9cde95964736d11e91f9ab610f82f91 + F test/thread002.test e630504f8a06c00bf8bbe68528774dd96aeb2e58 + F test/thread003.test ee4c9efc3b86a6a2767516a37bd64251272560a7 F test/thread004.test f51dfc3936184aaf73ee85f315224baad272a87f F test/thread005.test 50d10b5684399676174bd96c94ad4250b1a2c8b6 F test/thread1.test df115faa10a4ba1d456e9d4d9ec165016903eae4 @@@ -888,28 -883,28 +888,28 @@@ F test/vtabF.test fd5ad376f5a34fe0891df F test/vtab_alter.test 9e374885248f69e251bdaacf480b04a197f125e5 F test/vtab_err.test 0d4d8eb4def1d053ac7c5050df3024fd47a3fbd8 F test/vtab_shared.test 0eff9ce4f19facbe0a3e693f6c14b80711a4222d -F test/wal.test e11da8d5ea8a38a247339455098357e9adf63d76 -F test/wal2.test ad6412596815f553cd30f271d291ab003092bc7e -F test/wal3.test 18da4e65c30c43c646ad40e145e9a074e4062fc9 -F test/wal4.test 4744e155cd6299c6bd99d3eab1c82f77db9cdb3c -F test/wal5.test 1bbfaa316dc2a1d0d1fac3f4500c38a90055a41b -F test/wal6.test 2e3bc767d9c2ce35c47106148d43fcbd072a93b3 +F test/wal.test fa19bdb3be5103b69052cc6c4bf86df54c845a59 +F test/wal2.test cc834aa5e4361b472d115f7c8148e4d168e4db8c +F test/wal3.test b9b6477ef354fea2066083e5badbc08bba45f5b0 +F test/wal4.test 5755887f321baa4c55de0b91066fa7d0cafcac9d - F test/wal5.test 7fffb2796bb57cb12c6300a98e143293df03248b ++F test/wal5.test 3ef2b561d0e218b73b86f2223ec3d8f09cadc3ca +F test/wal6.test c561d1e44c89f9cb458a7b03003ed4baac08ba07 F test/wal7.test 2ae8f427d240099cc4b2dfef63cff44e2a68a1bd -F test/wal_common.tcl a98f17fba96206122eff624db0ab13ec377be4fe -F test/walbak.test b9f68e39646375c2b877be906babcc15d38b4877 -F test/walbig.test e882bc1d014afffbfa2b6ba36e0f07d30a633ad0 -F test/walcksum.test f5447800a157c9e2234fbb8e80243f0813941bde -F test/walcrash.test 4fcb661faf71db91214156d52d43ee327f52bde1 -F test/walcrash2.test 019d60b89d96c1937adb2b30b850ac7e86e5a142 -F test/walfault.test efb0d5724893133e71b8d9d90abdb781845a6bb0 -F test/walhook.test ed00a40ba7255da22d6b66433ab61fab16a63483 -F test/walmode.test 4022fe03ae6e830583672caa101f046438a0473c +F test/wal_common.tcl 15f152fd55703975878741beca6cfa4209d5b3b3 +F test/walbak.test b30cbbb2996947c96a2e562020dff61013a17a96 +F test/walbig.test 78ac493db2abdb65b9c6cace5b851cc32df1d449 +F test/walcksum.test 3dff8817d31a4207d1ad31e7da06073a34e7fe1c +F test/walcrash.test e2e8de53cadda0e1c5ceb86ff762b85aed2771cc +F test/walcrash2.test c032d0040374ae28b41f99fc0cc290b4e2e34f17 +F test/walfault.test c54e6a304d631565a12998fd1d4665ded7a18ee2 +F test/walhook.test c934ac5219fee2b4e7653d291db9107b8dc73bba +F test/walmode.test 9308ffc25555a1c4eaa44a863792240406637496 F test/walnoshm.test 84ca10c544632a756467336b7c3b864d493ee496 F test/walpersist.test 45fb0c94fb63908e2d66b1d99ce4645bfce0fa1e -F test/walro.test 2d5d69e2e99da19ce6faab340330234fc4ca0720 -F test/walshared.test 6dda2293880c300baf5d791c307f653094585761 -F test/walslow.test e7be6d9888f83aa5d3d3c7c08aa9b5c28b93609a -F test/walthread.test a2ed5270eb695284d4ad27d252517bdc3317ee2a +F test/walro.test 05769ae10ddce1b6ad41bdd5326ab7ef951c8278 +F test/walshared.test 0befc811dcf0b287efae21612304d15576e35417 +F test/walslow.test 3c2475d7672511380d33cef1924a065d2ad62ff0 +F test/walthread.test 3decc7e72594e0270dc1a1cc0984d6db7165b4cc F test/where.test de337a3fe0a459ec7c93db16a519657a90552330 F test/where2.test 43d4becaf5a5df854e6c21d624a1cb84c6904554 F test/where3.test 8e1175c7ef710c70502858fc4fb08d784b3620b9 @@@ -963,10 -958,10 +963,10 @@@ F tool/speedtest8.c 2902c46588c40b55661 F tool/speedtest8inst1.c 293327bc76823f473684d589a8160bde1f52c14e F tool/split-sqlite3c.tcl d9be87f1c340285a3e081eb19b4a247981ed290c F tool/symbols.sh caaf6ccc7300fd43353318b44524853e222557d5 - F tool/tostr.awk 11760e1b94a5d3dcd42378f3cc18544c06cfa576 + F tool/tostr.awk e75472c2f98dd76e06b8c9c1367f4ab07e122d06 F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f F tool/warnings.sh b7fdb2cc525f5ef4fa43c80e771636dd3690f9d2 - P c5f7977b899e93bf90bd44572db78c744ea81c14 1dada5158215d1816edb69ff2610f9d2259ce19d - R 3147a883ff036dd2141aa0af7e683788 -P a1f3aeeb0988c848d40ce8f6da6e902935a997e2 -R 0af9d8f0b3f18e81a71e0aa10948427c -U mistachkin -Z d90e2842f2c20a0f3227a4c8a539b329 ++P 55af80035f0432bbd4c4b3f4dbc9def13c5356b3 3035dc1c7398791d550f4c02774ef7f961b4bb02 ++R 05d8fe3c3352da0fc1dd647fee427e2c +U drh - Z 6674d35387f1443e6be9c6f9a17a5217 ++Z e8733d4709fe9dfd27a0d4562d922c5a diff --cc manifest.uuid index 68d4c453f4,c741eb7da4..b6fc271b61 --- a/manifest.uuid +++ b/manifest.uuid @@@ -1,1 -1,1 +1,1 @@@ - 55af80035f0432bbd4c4b3f4dbc9def13c5356b3 -3035dc1c7398791d550f4c02774ef7f961b4bb02 ++2456b4d0d2522dd2541146031347bc5e51f2036f diff --cc src/os_unix.c index f8a471c063,d85a7949b5..64c530bbce --- a/src/os_unix.c +++ b/src/os_unix.c @@@ -6686,12 -5937,14 +6680,13 @@@ static int proxyConchLock(unixFile *pFi proxyLockingContext *pCtx = (proxyLockingContext *)pFile->lockingContext; unixFile *conchFile = pCtx->conchFile; int rc = SQLITE_OK; - int nTries = 0; struct timespec conchModTime; + memset(&conchModTime, 0, sizeof(conchModTime)); do { rc = conchFile->pMethod->xLock((sqlite3_file*)conchFile, lockType); - nTries ++; if( rc==SQLITE_BUSY ){ + pCtx->nFails ++; /* If the lock failed (busy): * 1st try: get the mod time of the conch, wait 0.5s and try again. * 2nd try: fail if the mod time changed or host id is different, wait @@@ -6934,18 -6172,12 +6929,19 @@@ static int proxyTakeConch(unixFile *pFi end_takeconch: OSTRACE(("TRANSPROXY: CLOSE %d\n", pFile->h)); if( rc==SQLITE_OK && pFile->openFlags ){ + int fd; if( pFile->h>=0 ){ +#if defined(STRICT_CLOSE_ERROR) && OSCLOSE_CHECK_CLOSE_IOERR + if( close(pFile->h) ){ + pFile->lastErrno = errno; + return SQLITE_IOERR_CLOSE; + } +#else robust_close(pFile, pFile->h, __LINE__); +#endif } pFile->h = -1; - int fd = robust_open(pCtx->dbPath, pFile->openFlags, + fd = robust_open(pCtx->dbPath, pFile->openFlags, SQLITE_DEFAULT_FILE_PERMISSIONS); OSTRACE(("TRANSPROXY: OPEN %d\n", fd)); if( fd>=0 ){ diff --cc test/wal5.test index 756f727ce6,ad6bcfc7d8..bf2689f2bd --- a/test/wal5.test +++ b/test/wal5.test @@@ -247,13 -233,9 +247,13 @@@ foreach {testprefix do_wal_checkpoint} do_test 2.3.$tn.3 { sql2 { BEGIN; SELECT * FROM t1 } } {1 2} do_test 2.3.$tn.4 { sql1 { INSERT INTO t1 VALUES(3, 4) } } {} do_test 2.3.$tn.5 { sql1 { INSERT INTO t2 VALUES(3, 4) } } {} - do_test 2.3.$tn.6 { file_page_counts } {1 7 1 7} - do_test 2.3.$tn.7 { code1 { do_wal_checkpoint db -mode full } } {1 7 5} + do_test 2.3.$tn.6 { file_page_counts } [ + list 1 [wal_frames db 4 3] 1 [wal_frames db 4 3] + ] + do_test 2.3.$tn.7 { code1 { do_wal_checkpoint db -mode full } } [ + list 1 [wal_frames db 4 3] [wal_frames db 3 2] + ] - do_test 2.3.$tn.8 { file_page_counts } {2 7 2 7} + do_test 2.3.$tn.8 { file_page_counts } {1 7 2 7} } # Check that checkpoints block on the correct locks. And respond correctly