/ Check-in [503ba172]
Login

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

Overview
Comment:Avoid unnecessary calls to sqlite3GetCollSeq() for a small performance gain.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256: 503ba172e4c32e288abf006fc5cb53fd2b0313c4ee4c526c2d9c4c21b7178f2d
User & Date: drh 2017-07-06 02:49:26
Context
2017-07-06
03:06
Small size reduction in findCollSeqEntry(). check-in: 55ecd303 user: drh tags: trunk
02:49
Avoid unnecessary calls to sqlite3GetCollSeq() for a small performance gain. check-in: 503ba172 user: drh tags: trunk
01:28
Slightly more compact implementation of the byte-code generator for the COMMIT and ROLLBACK commands. check-in: 4da663d9 user: drh tags: trunk
Changes
Hide Diffs Side-by-Side Diffs Ignore Whitespace Patch

Changes to src/callback.c.

   117    117   **
   118    118   ** If required, this routine calls the 'collation needed' callback to
   119    119   ** request a definition of the collating sequence. If this doesn't work, 
   120    120   ** an equivalent collating sequence that uses a text encoding different
   121    121   ** from the main database is substituted, if one is available.
   122    122   */
   123    123   int sqlite3CheckCollSeq(Parse *pParse, CollSeq *pColl){
   124         -  if( pColl ){
          124  +  if( pColl && pColl->xCmp==0 ){
   125    125       const char *zName = pColl->zName;
   126    126       sqlite3 *db = pParse->db;
   127    127       CollSeq *p = sqlite3GetCollSeq(pParse, ENC(db), pColl, zName);
   128    128       if( !p ){
   129    129         return SQLITE_ERROR;
   130    130       }
   131    131       assert( p==pColl );