/ Check-in [c94318b9]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Speed up sqlite3_finalize() by removing redundant code. (CVS 5436)
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: c94318b982e9bb5b4c743cf8d5659f9eec697366
User & Date: danielk1977 2008-07-18 08:10:47
Context
2008-07-18
09:34
Performance improvement: reduce the number of calls to ptrmapPageno() made by ptrmapPut() and ptrmapGet(). (CVS 5437) check-in: d807fb27 user: danielk1977 tags: trunk
08:10
Speed up sqlite3_finalize() by removing redundant code. (CVS 5436) check-in: c94318b9 user: danielk1977 tags: trunk
05:36
Init zFullCp to prevent crashes in case DosQueryPathInfo() fails. (CVS 5435) check-in: 70685b2a user: pweilbacher tags: trunk
Changes
Hide Diffs Side-by-Side Diffs Ignore Whitespace Patch

Changes to src/vdbeaux.c.

    10     10   **
    11     11   *************************************************************************
    12     12   ** This file contains code used for creating, destroying, and populating
    13     13   ** a VDBE (or an "sqlite3_stmt" as it is known to the outside world.)  Prior
    14     14   ** to version 2.8.7, all this code was combined into the vdbe.c source file.
    15     15   ** But that file was getting too big so this subroutines were split out.
    16     16   **
    17         -** $Id: vdbeaux.c,v 1.397 2008/07/11 21:02:54 drh Exp $
           17  +** $Id: vdbeaux.c,v 1.398 2008/07/18 08:10:47 danielk1977 Exp $
    18     18   */
    19     19   #include "sqliteInt.h"
    20     20   #include <ctype.h>
    21     21   #include "vdbeInt.h"
    22     22   
    23     23   
    24     24   
................................................................................
  1772   1772     int rc = SQLITE_OK;
  1773   1773     if( p->magic==VDBE_MAGIC_RUN || p->magic==VDBE_MAGIC_HALT ){
  1774   1774       rc = sqlite3VdbeReset(p, 1);
  1775   1775       assert( (rc & p->db->errMask)==rc );
  1776   1776     }else if( p->magic!=VDBE_MAGIC_INIT ){
  1777   1777       return SQLITE_MISUSE;
  1778   1778     }
  1779         -  releaseMemArray(&p->aMem[1], p->nMem, 1);
         1779  +  /* releaseMemArray(&p->aMem[1], p->nMem, 1); */
  1780   1780     sqlite3VdbeDelete(p);
  1781   1781     return rc;
  1782   1782   }
  1783   1783   
  1784   1784   /*
  1785   1785   ** Call the destructor for each auxdata entry in pVdbeFunc for which
  1786   1786   ** the corresponding bit in mask is clear.  Auxdata entries beyond 31
................................................................................
  1802   1802   
  1803   1803   /*
  1804   1804   ** Delete an entire VDBE.
  1805   1805   */
  1806   1806   void sqlite3VdbeDelete(Vdbe *p){
  1807   1807     int i;
  1808   1808     if( p==0 ) return;
  1809         -  Cleanup(p, 1);
         1809  +  /* Cleanup(p, 1); */
  1810   1810     if( p->pPrev ){
  1811   1811       p->pPrev->pNext = p->pNext;
  1812   1812     }else{
  1813   1813       assert( p->db->pVdbe==p );
  1814   1814       p->db->pVdbe = p->pNext;
  1815   1815     }
  1816   1816     if( p->pNext ){