~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/sql_table.cc

  • Committer: Brian Aker
  • Date: 2009-01-04 04:34:44 UTC
  • Revision ID: brian@tangent.org-20090104043444-z0cb0wrgvqmegsgu
Fix for multple execution path for FRM creation.

BTW building an FRM on disk for I_S, which I believe is happening... is
dumb.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1914
1914
  path[path_length - reg_ext_length]= '\0'; // Remove .frm extension
1915
1915
  if (rea_create_table(session, path, db, table_name,
1916
1916
                       create_info, alter_info->create_list,
1917
 
                       key_count, key_info_buffer, file))
 
1917
                       key_count, key_info_buffer, file, false))
1918
1918
    goto unlock_and_end;
1919
1919
 
1920
1920
  if (create_info->options & HA_LEX_CREATE_TMP_TABLE)
2909
2909
  schema_table->table->use_all_columns();
2910
2910
  if (mysql_prepare_alter_table(session, schema_table->table,
2911
2911
                                &local_create_info, &alter_info))
2912
 
    return(1);
 
2912
    return true;
 
2913
 
2913
2914
  if (mysql_prepare_create_table(session, &local_create_info, &alter_info,
2914
2915
                                 tmp_table, &db_options,
2915
2916
                                 schema_table->table->file,
2916
2917
                                 &schema_table->table->s->key_info, &keys, 0))
2917
 
    return(1);
 
2918
    return true;
 
2919
 
2918
2920
  local_create_info.max_rows= 0;
2919
 
  if (mysql_create_frm(session, dst_path, NULL, NULL,
 
2921
  if (rea_create_table(session, dst_path, "system_tmp", "system_stupid_i_s_fix_nonsense",
2920
2922
                       &local_create_info, alter_info.create_list,
2921
2923
                       keys, schema_table->table->s->key_info,
2922
 
                       schema_table->table->file))
2923
 
    return(1);
2924
 
  return(0);
 
2924
                       schema_table->table->file, true))
 
2925
    return true;
 
2926
 
 
2927
  return false;
2925
2928
}
2926
2929
 
2927
 
 
2928
2930
/*
2929
2931
  Create a table identical to the specified table
2930
2932