SQLite4
Check-in [ed333d20c7]
Not logged in

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

Overview
Comment:Fix for optimization of DISTINCT.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | nextgen-query-planner
Files: files | file ages | folders
SHA1: ed333d20c765c307b2a7b94438016c1ad04fb744
User & Date: dan 2013-07-20 20:20:39
Context
2013-07-22
12:50
Merge the NGQP branch back into trunk. Currently 12 tests are failing in src4.test (all errors are artifacts of the test code). check-in: 4af30d63ec user: dan tags: trunk
2013-07-20
20:20
Fix for optimization of DISTINCT. Leaf check-in: ed333d20c7 user: dan tags: nextgen-query-planner
16:32
Update test script e_fkey.test. check-in: dd9849225b user: dan tags: nextgen-query-planner
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to src/where.c.

5713
5714
5715
5716
5717
5718
5719


5720
5721
5722
5723
5724
5725
5726
  WhereMaskSet *pMaskSet;    /* The expression mask set */
  WhereLevel *pLevel;        /* A single level in pWInfo->a[] */
  WhereLoop *pLoop;          /* Pointer to a single WhereLoop object */
  int ii;                    /* Loop counter */
  sqlite4 *db;               /* Database connection */
  int rc;                    /* Return code */




  /* Variable initialization */
  db = pParse->db;
  memset(&sWLB, 0, sizeof(sWLB));
  sWLB.pOrderBy = pOrderBy;

  /* Disable the DISTINCT optimization if SQLITE4_DistinctOpt is set via







>
>







5713
5714
5715
5716
5717
5718
5719
5720
5721
5722
5723
5724
5725
5726
5727
5728
  WhereMaskSet *pMaskSet;    /* The expression mask set */
  WhereLevel *pLevel;        /* A single level in pWInfo->a[] */
  WhereLoop *pLoop;          /* Pointer to a single WhereLoop object */
  int ii;                    /* Loop counter */
  sqlite4 *db;               /* Database connection */
  int rc;                    /* Return code */

  /* src4: In SQLite3, the caller would set this flag. */
  if( pResultSet ) wctrlFlags |= WHERE_WANT_DISTINCT;

  /* Variable initialization */
  db = pParse->db;
  memset(&sWLB, 0, sizeof(sWLB));
  sWLB.pOrderBy = pOrderBy;

  /* Disable the DISTINCT optimization if SQLITE4_DistinctOpt is set via