From: drh Date: Fri, 29 Apr 2016 16:01:18 +0000 (+0000) Subject: Merge the latest enhancements from trunk. X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b0b18f6dcaeb4a3755df0d1923838601bfb7418c;p=thirdparty%2Fsqlite.git Merge the latest enhancements from trunk. FossilOrigin-Name: 91e5c07eaf884d3598df8eb54f0910a80df48397 --- b0b18f6dcaeb4a3755df0d1923838601bfb7418c diff --cc manifest index 9a3a2004c1,79ea0c73d4..cc7dd90dc4 --- a/manifest +++ b/manifest @@@ -1,6 -1,6 +1,6 @@@ - C Merge\sall\srecent\senhancements\sfrom\strunk. - D 2016-04-20T12:16:05.997 - F Makefile.in eba680121821b8a60940a81454316f47a341487a -C Postpone\sI/O\sassociated\swith\sTEMP\sfiles\sfor\sas\slong\sas\spossible,\swith\sthe\nhope\sthat\sthe\sI/O\scan\sultimately\sbe\savoided\scompletely. -D 2016-04-29T15:39:48.423 ++C Merge\sthe\slatest\senhancements\sfrom\strunk. ++D 2016-04-29T16:01:18.190 + F Makefile.in 9e816d0323e418fbc0f8b2c05fc14e0b3763d9e8 F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434 F Makefile.msc 71b8b16cf9393f68e2e2035486ca104872558836 F README.md 8ecc12493ff9f820cdea6520a9016001cb2e59b7 @@@ -359,28 -361,28 +361,28 @@@ F src/os.c 4d83917f072ad958fba9235136fa F src/os.h 8e976e59eb4ca1c0fca6d35ee803e38951cb0343 F src/os_common.h b2f4707a603e36811d9b1a13278bffd757857b85 F src/os_setup.h c9d4553b5aaa6f73391448b265b89bed0b890faa - F src/os_unix.c d0b41a47eb5f0dc00e423a1723aadeab0e78c85f - F src/os_win.c b169437dff859e308b3726594094a2f8ca922941 + F src/os_unix.c 8422fba2eb592fbbb2d4006b6f2a67cad8951495 + F src/os_win.c 852fc2ff6084296348ed3739c548b2cf32df394e F src/os_win.h eb7a47aa17b26b77eb97e4823f20a00b8bda12ca - F src/pager.c 476884ce8d8e845daf88f1b12b8ca446bac5fdc5 -F src/pager.c a8d30c49c231e9a20d05257613db922532588963 -F src/pager.h 329bdf078a4e0a3b35084534d58625d21fd03681 -F src/parse.y 10eb2f3fb62341291528c7984498054731f9d31e ++F src/pager.c 41559a2b4461a6cf4b24bedb47d4e303d02729b5 +F src/pager.h 6656436178c295d0668520739118e71a46163b8e +F src/parse.y 2e1d371f99535ff29d1cd85052aa11cc636e21c8 - F src/pcache.c 647bb53a86b7bbcf55ad88089b3ea5a9170b90df - F src/pcache.h 4d0ccaad264d360981ec5e6a2b596d6e85242545 - F src/pcache1.c c40cdb93586e21b5dd826b5e671240bd91c26b05 + F src/pcache.c b3230ecfc7f797063fbe167f2845da363e8f07f8 + F src/pcache.h 6b865be765d1ebd06145219550b10921c7da7cc9 + F src/pcache1.c 7f51d2b541aab57596adf62db2c4bb025d34f04d F src/pragma.c faf42922bb7ab2f6672cb550356c1967abae3c84 F src/pragma.h 64c78a648751b9f4f297276c4eb7507b14b4628c F src/prepare.c 22df6171aec1d86904ed2ad30c2348a5748aa04e F src/printf.c 63e6fb12bbe702dd664dc3703776c090383a5a26 F src/random.c ba2679f80ec82c4190062d756f22d0c358180696 F src/resolve.c b8f7174e5f8c33c44ded3a25a973d0bb89228c20 - F src/rowset.c 9fe4b3ad7cc00944386bb600233d8f523de07a6e - F src/select.c 30217121bdf6b587462150b8ee9e1467f7a6036b + F src/rowset.c 49eb91c588a2bab36647368e031dc5b66928149d + F src/select.c fd4a7ce2937497181063cfedb92058ac89491a5d F src/shell.c 14ff7f660530a52b117d110ba3390b7b2eb719b6 - F src/sqlite.h.in 64eb70a3b309751bebf73a5552a51244f68f0ea5 + F src/sqlite.h.in 9984129d86243424b765fcb3f147c697bd20bb54 F src/sqlite3.rc 5121c9e10c3964d5755191c80dd1180c122fc3a8 F src/sqlite3ext.h 98f72cbfe00169c39089115427d06ea05fe4b4a2 - F src/sqliteInt.h 0d9f22432cf553bab15e25cf168b57d93396922b -F src/sqliteInt.h f4a53f3547dab80dc7db975fa1192d9bad1f38e8 ++F src/sqliteInt.h e6ac0d8f8cbb062a57882858b1deed1a7924314b F src/sqliteLimit.h c0373387c287c8d0932510b5547ecde31b5da247 F src/status.c 70912d7be68e9e2dbc4010c93d344af61d4c59ba F src/table.c 5226df15ab9179b9ed558d89575ea0ce37b03fc9 @@@ -400,9 -402,9 +402,9 @@@ F src/test_backup.c 2e6e6a081870150f20c F src/test_bestindex.c 29af3cc3b963ffe5760c85d142b9b3e5302c1e3d F src/test_blob.c b2551a9b5573232db5f66f292307c37067937239 F src/test_btree.c 2e9978eca99a9a4bfa8cae949efb00886860a64f -F src/test_config.c 7003f6f35134de6f19c6588f44783e43390ea277 +F src/test_config.c 5165f79b3aea5305627ac36dd7b9b5f124572da1 F src/test_demovfs.c 0de72c2c89551629f58486fde5734b7d90758852 - F src/test_devsym.c 7e73009d5297b603c11c66d7c7d6723d4b5c73e1 + F src/test_devsym.c 4e58dec2602d8e139ca08659f62a62450587cb58 F src/test_fs.c f10f840ca4f8c72e4837908bd8347ac4bcab074b F src/test_func.c 37453d346cfcf118774efd5bf6187f7e6a7e3254 F src/test_hexio.c abfdecb6fa58c354623978efceb088ca18e379cd @@@ -439,9 -441,9 +441,9 @@@ F src/treeview.c e4b41a37530a191579d3c5 F src/trigger.c e14840ee0c3e549e758ec9bf3e4146e166002280 F src/update.c 3e67ab3c0814635f355fb1f8ab010a2b9e016e7d F src/utf.c 699001c79f28e48e9bcdf8a463da029ea660540c - F src/util.c 187a0a2aaa3c5d2ccd2ab0143b2fd9e86d6bc816 + F src/util.c 810ec3f22e2d1b62e66c30fe3621ebdedd23584d -F src/vacuum.c feb1eabb20987983d9350cad98299b21fa811f52 -F src/vdbe.c 08fbea00a7f7f723973093c5f5bf7c40c025e2b3 +F src/vacuum.c c1a94413f8fa9d9b2cbe3af9a89377f777be676c - F src/vdbe.c 226c51cced9aa6f66748f626413d3f0348f2fcb8 ++F src/vdbe.c 4f0378eb44406a6a61686dff7970fa314f0f44bd F src/vdbe.h 5591b5add447096e31288b5a0a78ec5d7b5c5170 F src/vdbeInt.h ddb157974436d87652de7dc641f7191496d9a8cd F src/vdbeapi.c ba85b78fe08dc4a9ce747e62c89a2b4a4547e74c @@@ -1485,7 -1486,8 +1489,7 @@@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a9 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0 - P d7381efff47c0a2f307478f196d03df7534f19e3 eba27d4d17a76884292667d570d542e580ee3e77 - R b2d94baa5aa70083709fce61087ef618 -P 4cbd50245440e714935399a5c285cf32d8bfc424 b7bec7f2d3d08d0c14f77654be2c5cedf1619e58 -R f9ef4e1af8653e902d9192ffb04cabc2 -T +closed b7bec7f2d3d08d0c14f77654be2c5cedf1619e58 ++P 1f709fbf931e4d75848fc90532e2bc67ccd47cd4 9d0a5ae00273686ea35b43bc2ffaa8775c176363 ++R 53ca713e0bf5b0eed86d88e36153628f U drh - Z 09ace714760db63cbd8099bd8f9784df -Z 20681342134be4241c18925dab8e4f41 ++Z e98bb20abec63c17e483c921950d1a1a diff --cc manifest.uuid index 82a5e61542,fc6b7bfe05..43d7e4a998 --- a/manifest.uuid +++ b/manifest.uuid @@@ -1,1 -1,1 +1,1 @@@ - 1f709fbf931e4d75848fc90532e2bc67ccd47cd4 -9d0a5ae00273686ea35b43bc2ffaa8775c176363 ++91e5c07eaf884d3598df8eb54f0910a80df48397 diff --cc src/pager.c index 363ddf7f33,d24337cd50..36a936a9c3 --- a/src/pager.c +++ b/src/pager.c @@@ -2053,9 -2029,14 +2079,13 @@@ static int pager_end_transaction(Pager } #endif - sqlite3BitvecDestroy(pPager->pInJournal); - pPager->pInJournal = 0; + pagerFreeBitvecs(pPager); pPager->nRec = 0; - sqlite3PcacheCleanAll(pPager->pPCache); + if( MEMDB || pagerFlushOnCommit(pPager) ){ + sqlite3PcacheCleanAll(pPager->pPCache); + }else{ + sqlite3PcacheClearWritable(pPager->pPCache); + } sqlite3PcacheTruncate(pPager->pPCache, pPager->dbSize); if( pagerUseWal(pPager) ){