From: drh Date: Mon, 12 Dec 2016 18:12:03 +0000 (+0000) Subject: Remove unnecessary MemPage initialization resets in the autovacuum ptrmap X-Git-Tag: version-3.16.0~51 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=2a70254f7430455ac89abbfc67fe95f2bf3e8941;p=thirdparty%2Fsqlite.git Remove unnecessary MemPage initialization resets in the autovacuum ptrmap processing. FossilOrigin-Name: 1b36fbb9f05f3a5844e198b489bff36ef6cd908c --- diff --git a/manifest b/manifest index a14a5ca3c0..bbdb5fc0a1 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Faster\soperation\sfor\slarge\sin-memory\sdatabases. -D 2016-12-12T16:08:44.373 +C Remove\sunnecessary\sMemPage\sinitialization\sresets\sin\sthe\sautovacuum\sptrmap\nprocessing. +D 2016-12-12T18:12:03.591 F Makefile.in 7639c6a09da11a9c7c6f2630fc981ee588d1072d F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434 F Makefile.msc b8ca53350ae545e3562403d5da2a69cec79308da @@ -331,7 +331,7 @@ F src/auth.c 930b376a9c56998557367e6f7f8aaeac82a2a792 F src/backup.c faf17e60b43233c214aae6a8179d24503a61e83b F src/bitvec.c 17ea48eff8ba979f1f5b04cc484c7bb2be632f33 F src/btmutex.c bc87dd3b062cc26edfe79918de2200ccb8d41e73 -F src/btree.c 383ce69bd36b0f409bfb8bd028786b2f0a4cbb24 +F src/btree.c 0d377e5769657d3ac2a1b6ba081ba77a128610d5 F src/btree.h 2349a588abcd7e0c04f984e15c5c777b61637583 F src/btreeInt.h 10c4b77c2fb399580babbcc7cf652ac10dba796e F src/build.c 178f16698cbcb43402c343a9413fe22c99ffee21 @@ -1536,8 +1536,7 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0 -P d4dff10a3d4edf8e1cc77c0a4f185d33f2c2e953 4fe94b0f1841180dfd8cac33838e335dc6a428bf -R ea4e252aab274ae80300d82ccbdd9ba6 -T +closed 4fe94b0f1841180dfd8cac33838e335dc6a428bf +P 9675518b33e8d40769daefb860dc748113f750b6 +R 5c1b605906a01e86141edb10d66002b4 U drh -Z 222df42015043d416e25238322e825fe +Z 43d64d3ee0d93b0119909f8d75d1fdb9 diff --git a/manifest.uuid b/manifest.uuid index ce37cd3aa6..c16cee434f 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -9675518b33e8d40769daefb860dc748113f750b6 \ No newline at end of file +1b36fbb9f05f3a5844e198b489bff36ef6cd908c \ No newline at end of file diff --git a/src/btree.c b/src/btree.c index a6a8a4782a..e91fad3b12 100644 --- a/src/btree.c +++ b/src/btree.c @@ -3296,14 +3296,11 @@ static int setChildPtrmaps(MemPage *pPage){ int nCell; /* Number of cells in page pPage */ int rc; /* Return code */ BtShared *pBt = pPage->pBt; - u8 isInitOrig = pPage->isInit; Pgno pgno = pPage->pgno; assert( sqlite3_mutex_held(pPage->pBt->mutex) ); rc = btreeInitPage(pPage); - if( rc!=SQLITE_OK ){ - goto set_child_ptrmaps_out; - } + if( rc!=SQLITE_OK ) return rc; nCell = pPage->nCell; for(i=0; iisInit = isInitOrig; return rc; } @@ -3351,7 +3346,6 @@ static int modifyPagePointer(MemPage *pPage, Pgno iFrom, Pgno iTo, u8 eType){ } put4byte(pPage->aData, iTo); }else{ - u8 isInitOrig = pPage->isInit; int i; int nCell; int rc; @@ -3387,8 +3381,6 @@ static int modifyPagePointer(MemPage *pPage, Pgno iFrom, Pgno iTo, u8 eType){ } put4byte(&pPage->aData[pPage->hdrOffset+8], iTo); } - - pPage->isInit = isInitOrig; } return SQLITE_OK; }