/ Check-in [d6c4d48a]
Login
SQLite training in Houston TX on 2019-11-05 (details)
Part of the 2019 Tcl Conference

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

Overview
Comment:Initialize a variable in fts3_write.c on the grounds that the argument required to show that it does not require initialization with is complicated. Add an assert() to where.c to silence a clang scan-build warning.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: d6c4d48a002a6d7057fccc30064ce0b049678f0c
User & Date: dan 2013-08-19 19:29:50
Context
2013-08-19
20:04
Performance improvement in sqlite3BtreeNext() and sqlite3BtreePrevious() for the common case of a valid cursor. check-in: dc65ad8c user: drh tags: trunk
19:29
Initialize a variable in fts3_write.c on the grounds that the argument required to show that it does not require initialization with is complicated. Add an assert() to where.c to silence a clang scan-build warning. check-in: d6c4d48a user: dan tags: trunk
18:37
Fix test script pragma2.test so that it works with ENABLE_MEMORY_MANAGEMENT. check-in: 6acf7281 user: dan tags: trunk
Changes
Hide Diffs Side-by-Side Diffs Ignore Whitespace Patch

Changes to ext/fts3/fts3_write.c.

  2844   2844         */
  2845   2845         for(i=0; i<nMerge; i++){
  2846   2846           fts3SegReaderFirstDocid(p, apSegment[i]);
  2847   2847         }
  2848   2848         fts3SegReaderSort(apSegment, nMerge, nMerge, xCmp);
  2849   2849         while( apSegment[0]->pOffsetList ){
  2850   2850           int j;                    /* Number of segments that share a docid */
  2851         -        char *pList;
         2851  +        char *pList = 0;
  2852   2852           int nList = 0;
  2853   2853           int nByte;
  2854   2854           sqlite3_int64 iDocid = apSegment[0]->iDocid;
  2855   2855           fts3SegReaderNextDocid(p, apSegment[0], &pList, &nList);
  2856   2856           j = 1;
  2857   2857           while( j<nMerge
  2858   2858               && apSegment[j]->pOffsetList

Changes to src/where.c.

  4478   4478   ** the table is used by an index.  Only the first 63 columns are considered.
  4479   4479   */
  4480   4480   static Bitmask columnsInIndex(Index *pIdx){
  4481   4481     Bitmask m = 0;
  4482   4482     int j;
  4483   4483     for(j=pIdx->nColumn-1; j>=0; j--){
  4484   4484       int x = pIdx->aiColumn[j];
         4485  +    assert( x>=0 );
  4485   4486       testcase( x==BMS-1 );
  4486   4487       testcase( x==BMS-2 );
  4487   4488       if( x<BMS-1 ) m |= MASKBIT(x);
  4488   4489     }
  4489   4490     return m;
  4490   4491   }
  4491   4492