~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/cursor.cc

Merge in stewart

Show diffs side-by-side

added added

removed removed

Lines of Context:
278
278
  if (stats.deleted < 10 || primary_key >= MAX_KEY ||
279
279
      !(getTable()->index_flags(primary_key) & HA_READ_ORDER))
280
280
  {
281
 
    (void) startTableScan(1);
282
 
    while ((error= rnd_next(buf)) == HA_ERR_RECORD_DELETED) ;
283
 
    (void) endTableScan();
 
281
    error= startTableScan(1);
 
282
    if (error == 0)
 
283
    {
 
284
      while ((error= rnd_next(buf)) == HA_ERR_RECORD_DELETED) ;
 
285
      (void) endTableScan();
 
286
    }
284
287
  }
285
288
  else
286
289
  {
287
290
    /* Find the first row through the primary key */
288
 
    (void) startIndexScan(primary_key, 0);
289
 
    error=index_first(buf);
290
 
    (void) endIndexScan();
 
291
    error= startIndexScan(primary_key, 0);
 
292
    if (error == 0)
 
293
    {
 
294
      error=index_first(buf);
 
295
      (void) endIndexScan();
 
296
    }
291
297
  }
292
298
  return error;
293
299
}