From: drh Date: Mon, 3 Mar 2014 21:59:33 +0000 (+0000) Subject: Refactor the sqlite3VdbeRecordCompare() routine used to compare btree records. X-Git-Tag: version-3.8.4~34^2~2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=f2c135fabd0a4db9fb6d42a74ee5e1d77d69ce58;p=thirdparty%2Fsqlite.git Refactor the sqlite3VdbeRecordCompare() routine used to compare btree records. Create a couple of fast-track routines to handle the common cases of a string with BINARY collation or integer values as the left-most column. This gives a significant performance boost in common use. FossilOrigin-Name: aec5473a750e412eb1e11e17bbafd760db086c86 --- f2c135fabd0a4db9fb6d42a74ee5e1d77d69ce58 diff --cc manifest index 4cca5ef21a,52a206ae83..36f6559f55 --- a/manifest +++ b/manifest @@@ -1,5 -1,5 +1,5 @@@ - C Change\san\sOP_SCopy\sinto\san\sOP_Copy\sin\sa\scase\swhere\sthe\sdestination\smight\sbe\nused\safter\sthe\ssource\shas\schanged. - D 2014-03-03T17:36:39.940 -C Fix\sa\scouple\sof\sharmless\scompiler\swarnings. -D 2014-03-03T21:46:55.799 ++C Refactor\sthe\ssqlite3VdbeRecordCompare()\sroutine\sused\sto\scompare\sbtree\srecords.\nCreate\sa\scouple\sof\sfast-track\sroutines\sto\shandle\sthe\scommon\scases\sof\sa\sstring\nwith\sBINARY\scollation\sor\sinteger\svalues\sas\sthe\sleft-most\scolumn.\s\sThis\sgives\na\ssignificant\sperformance\sboost\sin\scommon\suse. ++D 2014-03-03T21:59:33.388 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f F Makefile.in 2ef13430cd359f7b361bb863504e227b25cc7f81 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 @@@ -1153,7 -1154,7 +1154,8 @@@ F tool/vdbe_profile.tcl 67746953071a9f8 F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4 F tool/warnings.sh d1a6de74685f360ab718efda6265994b99bbea01 F tool/win/sqlite.vsix 030f3eeaf2cb811a3692ab9c14d021a75ce41fff - P 559835e54e0715f2b4d207d056199a8268af739e - R 0f407d04c62b2be5f5455aa20c5e914d -P 7c0b4381f0e6f33cb13299a915851d9431bf3850 ++P c0fa0c0e2de50d7eda19ab8862496b18eff93538 fcf480cc630976b619aabd5f7fb7b09601a178fb + R 4042a62ac4c0618104f381105ba13add ++T +closed fcf480cc630976b619aabd5f7fb7b09601a178fb U drh - Z c144dcb8dd86ca2b393613351986e190 -Z 0037dd9417989b6d6f935caf436e0a2a ++Z f2b997d224dae00836e71263e0e4d70e diff --cc manifest.uuid index 097e35067a,aaa189ba4b..93e0969edd --- a/manifest.uuid +++ b/manifest.uuid @@@ -1,1 -1,1 +1,1 @@@ - c0fa0c0e2de50d7eda19ab8862496b18eff93538 -fcf480cc630976b619aabd5f7fb7b09601a178fb ++aec5473a750e412eb1e11e17bbafd760db086c86