]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Experimental patch restore the slight bias in btree-balancing immediately btree-balance-bias
authordrh <drh@noemail.net>
Thu, 14 Jul 2016 20:19:24 +0000 (20:19 +0000)
committerdrh <drh@noemail.net>
Thu, 14 Jul 2016 20:19:24 +0000 (20:19 +0000)
after the change to reduces the amount of memcpy() work done by balancing.

FossilOrigin-Name: 46bd9533c0b4656e9fb10eb41c9369ba8a113746

manifest
manifest.uuid
src/btree.c

index 94ec16445ae8d87469ea820aa9d080eaadc23358..311bdc5bea49c0655b14d18e568ff71979c7cf65 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Optimizations\saimed\sat\sreducing\sthe\snumber\sof\smemcpy()\soperations\srequired\sby\sbalance_nonroot().
-D 2014-10-27T14:26:54.508
+C Experimental\spatch\srestore\sthe\sslight\sbias\sin\sbtree-balancing\simmediately\nafter\sthe\schange\sto\sreduces\sthe\samount\sof\smemcpy()\swork\sdone\sby\sbalancing.
+D 2016-07-14T20:19:24.187
 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f
 F Makefile.in cf57f673d77606ab0f2d9627ca52a9ba1464146a
 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23
@@ -172,7 +172,7 @@ F src/auth.c d8abcde53426275dab6243b441256fcd8ccbebb2
 F src/backup.c a31809c65623cc41849b94d368917f8bb66e6a7e
 F src/bitvec.c 19a4ba637bd85f8f63fc8c9bae5ade9fb05ec1cb
 F src/btmutex.c 49ca66250c7dfa844a4d4cb8272b87420d27d3a5
-F src/btree.c 9790fb4df51d36861bcbb8cd0a9b41586cbae699
+F src/btree.c 44c34502f17681eb957149cc1b8b4e1964ed231a
 F src/btree.h a79aa6a71e7f1055f01052b7f821bd1c2dce95c8
 F src/btreeInt.h 026d0129724e8f265fdc60d44ec240cf5a4e6179
 F src/build.c 9dc2bd94347b878c89627000c92b0c8d97ec2919
@@ -1207,7 +1207,10 @@ F tool/vdbe_profile.tcl 67746953071a9f8f2f668b73fe899074e2c6d8c1
 F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4
 F tool/warnings.sh 0abfd78ceb09b7f7c27c688c8e3fe93268a13b32
 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
-P fc6920b5483eeeb06a474ff399a21afa51dc4859 1f80f8c136ac970dcc7fb2337263dc5922e348c3
-R ed2304a6a2e587056109284e9717f063
-U dan
-Z 986c15e36469a97fa56839a4b2a55b25
+P face33bea1ba3a6d57780655fa827226b4d2baa9
+R 554fefe0a719f26931bb9cdfcdd471c4
+T *branch * btree-balance-bias
+T *sym-btree-balance-bias *
+T -sym-trunk *
+U drh
+Z 0e91eabd67698f71b8b9d1b306b232d2
index 37f4629c8732459741dd83e8bd435c6319a85dfd..310b53c8ec1283ae8cfc494069ff75276703b639 100644 (file)
@@ -1 +1 @@
-face33bea1ba3a6d57780655fa827226b4d2baa9
\ No newline at end of file
+46bd9533c0b4656e9fb10eb41c9369ba8a113746
\ No newline at end of file
index 9b14dc2b6e0cff1ad3496fc1cacb6244f41d99ff..bf052ba10e5751287088d198c95a1a8c8f6c873d 100644 (file)
@@ -6786,7 +6786,7 @@ static int balance_nonroot(
     assert( d<nMaxCells );
     assert( r<nMaxCells );
     while( szRight==0 
-       || (!bBulk && szRight+szCell[d]+2<=szLeft-(szCell[r]+2)) 
+       || (!bBulk && szRight+szCell[d]+2<=szLeft-(szCell[r]+(i==k-1?0:2))) 
     ){
       szRight += szCell[d] + 2;
       szLeft -= szCell[r] + 2;