]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Allocate KeyInfo objects from lookaside if possible.
authordrh <drh@noemail.net>
Sat, 4 Jun 2016 17:12:26 +0000 (17:12 +0000)
committerdrh <drh@noemail.net>
Sat, 4 Jun 2016 17:12:26 +0000 (17:12 +0000)
FossilOrigin-Name: b411107a3609d53af4e147f01e311b858b78420b

manifest
manifest.uuid
src/select.c

index 64889ef359fad2af0b63d96b0f174ad36bbb0ed4..5cfb3e8240425870f3780604c6a087cb3561e871 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Fix\sup\sspeedtest1.c\sso\sthat\sit\swill\scompile\sand\srun\son\sSQLite\sversions\sprior\nto\s3.6.18\s(circa\s2009-09-11).
-D 2016-06-04T16:33:48.064
+C Allocate\sKeyInfo\sobjects\sfrom\slookaside\sif\spossible.
+D 2016-06-04T17:12:26.466
 F Makefile.in 7321ef0b584224781ec7731408857fa8962c32cc
 F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434
 F Makefile.msc 831503fc4e988f571590af1405645fff121b5f1e
@@ -382,7 +382,7 @@ F src/printf.c a5f0ca08ddede803c241266abb46356ec748ded1
 F src/random.c ba2679f80ec82c4190062d756f22d0c358180696
 F src/resolve.c cca3aa77b95706df5d635a2141a4d1de60ae6598
 F src/rowset.c 7b7e7e479212e65b723bf40128c7b36dc5afdfac
-F src/select.c a0c4abf54bc6bd3a9c77a36ef3d1676045706cb2
+F src/select.c f3c6e9065fb34f6a23af27ec7f1f717ffbfc2ee4
 F src/shell.c 14ff7f660530a52b117d110ba3390b7b2eb719b6
 F src/sqlite.h.in 5f8113dbec74c6c093ead9930afb8c9fbd9f643d
 F src/sqlite3.rc 5121c9e10c3964d5755191c80dd1180c122fc3a8
@@ -1500,7 +1500,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 313e990c741d7db082f1d9b9f3f4c65fdd91b812
-R 0ccf0692aa5b1e3235a74f8650fcfe4f
+P 9583c0fb39f357a76e0c99ea03b034aea3e03c75
+R 065fce549d6916be91d3267449fff27c
 U drh
-Z a2bd3a06dcb83b470b97f0c6e2306afd
+Z 36eef125b8bc40e49e28e0447e72ab1c
index 12c744c1c5fa7f832d4141f90df81490959d0cca..b10b2154c9ae6c2665b6ba79fb4af694c7deaf96 100644 (file)
@@ -1 +1 @@
-9583c0fb39f357a76e0c99ea03b034aea3e03c75
\ No newline at end of file
+b411107a3609d53af4e147f01e311b858b78420b
\ No newline at end of file
index 495d47e20bf405dab2b6f9fcf5e61b7112e27781..e21ac57dc5aa7b40732fbff9ed6afe322964eb10 100644 (file)
@@ -1028,7 +1028,7 @@ static void selectInnerLoop(
 */
 KeyInfo *sqlite3KeyInfoAlloc(sqlite3 *db, int N, int X){
   int nExtra = (N+X)*(sizeof(CollSeq*)+1);
-  KeyInfo *p = sqlite3Malloc(sizeof(KeyInfo) + nExtra);
+  KeyInfo *p = sqlite3DbMallocRaw(db, sizeof(KeyInfo) + nExtra);
   if( p ){
     p->aSortOrder = (u8*)&p->aColl[N+X];
     p->nField = (u16)N;
@@ -1050,7 +1050,7 @@ void sqlite3KeyInfoUnref(KeyInfo *p){
   if( p ){
     assert( p->nRef>0 );
     p->nRef--;
-    if( p->nRef==0 ) sqlite3DbFree(0, p);
+    if( p->nRef==0 ) sqlite3DbFree(p->db, p);
   }
 }