~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/rename.cc

  • Committer: Brian Aker
  • Date: 2009-05-27 21:11:30 UTC
  • mto: This revision was merged to the branch mainline in revision 1040.
  • Revision ID: brian@gaz-20090527211130-10yq3d5gee3pwl9w
Remove lower case filename bits (aka we just lock into the most compatible
method, which is what we have been doing).

Removed a number of dead function endings.

Show diffs side-by-side

added added

removed removed

Lines of Context:
31
31
  Every second entry in the table_list is the original name and every
32
32
  second entry is the new name.
33
33
*/
34
 
bool drizzle_rename_tables(Session *session, TableList *table_list, bool silent)
 
34
bool drizzle_rename_tables(Session *session, TableList *table_list)
35
35
{
36
36
  bool error= true;
37
37
  TableList *ren_table= NULL;
56
56
    goto err;
57
57
  }
58
58
 
59
 
  error=0;
 
59
  error= false;
60
60
  if ((ren_table=rename_tables(session,table_list,0)))
61
61
  {
62
62
    /* Rename didn't succeed;  rename back the tables in reverse order */
76
76
    /* Revert the table list (for prepared statements) */
77
77
    table_list= reverse_table_list(table_list);
78
78
 
79
 
    error= 1;
 
79
    error= true;
80
80
  }
81
81
  /*
82
82
    An exclusive lock on table names is satisfactory to ensure
88
88
  pthread_mutex_unlock(&LOCK_open);
89
89
 
90
90
  /* Lets hope this doesn't fail as the result will be messy */
91
 
  if (!silent && !error)
 
91
  if (!error)
92
92
  {
93
93
    write_bin_log(session, true, session->query, session->query_length);
94
94
    session->my_ok();
100
100
 
101
101
err:
102
102
  start_waiting_global_read_lock(session);
103
 
  return(error);
 
103
  return error;
104
104
}
105
105
 
106
106
 
138
138
      ren_table         A table/view to be renamed
139
139
      new_db            The database to which the table to be moved to
140
140
      new_table_name    The new table/view name
141
 
      new_table_alias   The new table/view alias
142
141
      skip_error        Whether to skip error
143
142
 
144
143
  DESCRIPTION
149
148
    true      rename failed
150
149
*/
151
150
 
152
 
bool
153
 
do_rename(Session *session, TableList *ren_table, const char *new_db, const char *new_table_name,
154
 
          const char *new_table_alias, bool skip_error)
 
151
static bool
 
152
do_rename(Session *session, TableList *ren_table, const char *new_db, const char *new_table_name, bool skip_error)
155
153
{
156
 
  int rc= 1;
 
154
  bool rc= true;
157
155
  const char *new_alias, *old_alias;
158
156
 
159
 
  if (lower_case_table_names == 2)
160
 
  {
161
 
    old_alias= ren_table->alias;
162
 
    new_alias= new_table_alias;
163
 
  }
164
 
  else
165
157
  {
166
158
    old_alias= ren_table->table_name;
167
159
    new_alias= new_table_name;
173
165
     != HA_ERR_TABLE_EXIST)
174
166
  {
175
167
    my_error(ER_NO_SUCH_TABLE, MYF(0), ren_table->db, old_alias);
176
 
    return(1);
 
168
    return true;
177
169
  }
178
170
 
179
171
  if (ha_table_exists_in_engine(session, new_db, new_alias)
187
179
                         ren_table->db, old_alias,
188
180
                         new_db, new_alias, 0);
189
181
  if (rc && !skip_error)
190
 
    return(1);
 
182
    return true;
191
183
 
192
 
  return(0);
 
184
  return false;
193
185
 
194
186
}
195
187
/*
224
216
  for (ren_table= table_list; ren_table; ren_table= new_table->next_local)
225
217
  {
226
218
    new_table= ren_table->next_local;
227
 
    if (do_rename(session, ren_table, new_table->db, new_table->table_name,
228
 
                  new_table->alias, skip_error))
 
219
    if (do_rename(session, ren_table, new_table->db, new_table->table_name, skip_error))
229
220
      return(ren_table);
230
221
  }
231
222
  return(0);