~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/sql_table.cc

  • Committer: Monty Taylor
  • Date: 2009-02-11 23:45:52 UTC
  • mfrom: (881 drizzle)
  • mto: This revision was merged to the branch mainline in revision 885.
  • Revision ID: mordred@inaugust.com-20090211234552-d57gtqlup0pr7g13
Merged trunk

Show diffs side-by-side

added added

removed removed

Lines of Context:
4865
4865
    if (end_active_trans(session))
4866
4866
      error= 1;
4867
4867
  }
4868
 
  session->count_cuted_fields= CHECK_FIELD_IGNORE;
 
4868
  /* We must not ignore bad input! */;
 
4869
  session->count_cuted_fields= CHECK_FIELD_ERROR_FOR_NULL;
4869
4870
 
4870
4871
  if (table->s->tmp_table != NO_TMP_TABLE)
4871
4872
  {
5023
5024
  }
5024
5025
 
5025
5026
end_temporary:
5026
 
  snprintf(tmp_name, sizeof(tmp_name), ER(ER_INSERT_INFO),
5027
 
           (ulong) (copied + deleted), (ulong) deleted,
5028
 
           (ulong) session->cuted_fields);
5029
 
  session->my_ok(copied + deleted, 0L, tmp_name);
5030
 
  session->some_tables_deleted=0;
5031
 
  return(false);
 
5027
  /*
 
5028
   * Field::store() may have called my_error().  If this is 
 
5029
   * the case, we must not send an ok packet, since 
 
5030
   * Diagnostics_area::is_set() will fail an assert.
 
5031
   */
 
5032
  if (! session->is_error())
 
5033
  {
 
5034
    snprintf(tmp_name, sizeof(tmp_name), ER(ER_INSERT_INFO),
 
5035
            (ulong) (copied + deleted), (ulong) deleted,
 
5036
            (ulong) session->cuted_fields);
 
5037
    session->my_ok(copied + deleted, 0L, tmp_name);
 
5038
    session->some_tables_deleted=0;
 
5039
    return false;
 
5040
  }
 
5041
  else
 
5042
  {
 
5043
    /* my_error() was called.  Return true (which means error...) */
 
5044
    return true;
 
5045
  }
5032
5046
 
5033
5047
err1:
5034
5048
  if (new_table)