~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/message/statement_transform.cc

Style changes.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1274
1274
  return Table::Field::INTEGER; /* unreachable */
1275
1275
}
1276
1276
 
 
1277
bool transactionContainsBulkSegment(const Transaction &transaction)
 
1278
{
 
1279
  size_t num_statements= transaction.statement_size();
 
1280
  if (num_statements == 0)
 
1281
    return false;
 
1282
 
 
1283
  /*
 
1284
   * Only INSERT, UPDATE, and DELETE statements can possibly
 
1285
   * have bulk segments.  So, we loop through the statements
 
1286
   * checking for segment_id > 1 in those specific submessages.
 
1287
   */
 
1288
  size_t x;
 
1289
  for (x= 0; x < num_statements; ++x)
 
1290
  {
 
1291
    const Statement &statement= transaction.statement(x);
 
1292
    Statement::Type type= statement.type();
 
1293
 
 
1294
    switch (type)
 
1295
    {
 
1296
      case Statement::INSERT:
 
1297
        if (statement.insert_data().segment_id() > 1)
 
1298
          return true;
 
1299
        break;
 
1300
      case Statement::UPDATE:
 
1301
        if (statement.update_data().segment_id() > 1)
 
1302
          return true;
 
1303
        break;
 
1304
      case Statement::DELETE:
 
1305
        if (statement.delete_data().segment_id() > 1)
 
1306
          return true;
 
1307
        break;
 
1308
      default:
 
1309
        break;
 
1310
    }
 
1311
  }
 
1312
  return false;
 
1313
}
 
1314
 
1277
1315
} /* namespace message */
1278
1316
} /* namespace drizzled */