Added xml patch to mysqldump.

Made innodb to compile more cleanly with debugging options
enabled. Fixed a few bugs and found a few possible bugs, which
I hope Heikki will check. Comments needs to be fixed too. Some
while() functions should be changed to do ... until for documenting
purposes, because some of them must and will be processed at least
once, or a variable would be used uninitialized.

Regards,
Jani


client/mysqldump.c:
  Added xml output. Patch originally from Gary Huntress, but needed
  a some clean up.
innobase/btr/btr0btr.c:
  cleaner compiling
innobase/btr/btr0cur.c:
  cleaner compiling
innobase/btr/btr0sea.c:
  cleaner compiling / found a bug ??
innobase/buf/buf0buf.c:
  Fixed a bug.
innobase/buf/buf0lru.c:
  Fixed a bug.
innobase/data/data0data.c:
  cleaner compiling
innobase/dict/dict0boot.c:
  cleaner compiling
innobase/dict/dict0crea.c:
  cleaner compiling
innobase/dict/dict0dict.c:
  cleaner compiling
innobase/dict/dict0load.c:
  cleaner compiling
innobase/eval/eval0eval.c:
  cleaner compiling / found a bug ??
innobase/fil/fil0fil.c:
  cleaner compiling
innobase/fsp/fsp0fsp.c:
  cleaner compiling
innobase/ibuf/ibuf0ibuf.c:
  cleaner compiling
innobase/include/btr0btr.ic:
  cleaner compiling
innobase/include/buf0buf.ic:
  cleaner compiling
innobase/include/dict0dict.ic:
  cleaner compiling
innobase/include/ha0ha.ic:
  cleaner compiling
innobase/include/row0mysql.ic:
  cleaner compiling
innobase/include/row0vers.ic:
  cleaner compiling
innobase/include/sync0rw.ic:
  cleaner compiling
innobase/lock/lock0lock.c:
  cleaner compiling
innobase/mem/mem0dbg.c:
  cleaner compiling
innobase/mtr/mtr0mtr.c:
  cleaner compiling
innobase/odbc/odbc0odbc.c:
  cleaner compiling
innobase/os/os0thread.c:
  cleaner compiling
innobase/page/page0cur.c:
  cleaner compiling. while() should be changed to do ... until
  for documenting purposes.
innobase/page/page0page.c:
  cleaner compiling
innobase/pars/pars0opt.c:
  cleaner compiling. while() should be changed to do ... until,
  because it will and must be processed at least once (for documenting
  purposes)
innobase/pars/pars0pars.c:
  cleaner compiling
innobase/que/que0que.c:
  cleaner compiling
innobase/rem/rem0cmp.c:
  cleaner compiling
innobase/rem/rem0rec.c:
  cleaner compiling
innobase/row/row0ins.c:
  cleaner compiling
innobase/row/row0mysql.c:
  cleaner compiling
innobase/row/row0purge.c:
  cleaner compiling
innobase/row/row0sel.c:
  cleaner compiling
innobase/row/row0uins.c:
  cleaner compiling
innobase/row/row0umod.c:
  cleaner compiling
innobase/row/row0upd.c:
  cleaner compiling
innobase/srv/srv0srv.c:
  cleaner compiling
innobase/srv/srv0start.c:
  cleaner compiling
innobase/sync/sync0arr.c:
  cleaner compiling
innobase/sync/sync0rw.c:
  cleaner compiling
innobase/sync/sync0sync.c:
  cleaner compiling
innobase/trx/trx0purge.c:
  cleaner compiling. in theory this could also be a bug, although
  probably not. But the logic needs to be checked, it could be that
  these variables may be used uninitialized.
innobase/trx/trx0rec.c:
  cleaner compiling
innobase/trx/trx0roll.c:
  cleaner compiling
innobase/trx/trx0trx.c:
  cleaner compiling
innobase/trx/trx0undo.c:
  cleaner compiling
This commit is contained in:
unknown 2001-11-05 23:48:03 +02:00
commit adb703943d
51 changed files with 441 additions and 348 deletions

View file

@ -64,7 +64,8 @@ row_sel_sec_rec_is_for_clust_rec(
rec_t* sec_rec, /* in: secondary index record */
dict_index_t* sec_index, /* in: secondary index */
rec_t* clust_rec, /* in: clustered index record */
dict_index_t* clust_index) /* in: clustered index */
dict_index_t* clust_index __attribute__((unused)))
/* in: clustered index */
{
dict_col_t* col;
byte* sec_field;
@ -2498,7 +2499,7 @@ row_search_for_mysql(
printf("N tables locked %lu\n", trx->mysql_n_tables_locked);
*/
if (direction == 0) {
trx->op_info = "starting index read";
trx->op_info = (char *) "starting index read";
prebuilt->n_rows_fetched = 0;
prebuilt->n_fetch_cached = 0;
@ -2509,7 +2510,7 @@ row_search_for_mysql(
row_prebuild_sel_graph(prebuilt);
}
} else {
trx->op_info = "fetching rows";
trx->op_info = (char *) "fetching rows";
if (prebuilt->n_rows_fetched == 0) {
prebuilt->fetch_direction = direction;
@ -2534,7 +2535,7 @@ row_search_for_mysql(
prebuilt->n_rows_fetched++;
srv_n_rows_read++;
trx->op_info = "";
trx->op_info = (char *) "";
return(DB_SUCCESS);
}
@ -2546,7 +2547,7 @@ row_search_for_mysql(
cache, but the cache was not full at the time of the
popping: no more rows can exist in the result set */
trx->op_info = "";
trx->op_info = (char *) "";
return(DB_RECORD_NOT_FOUND);
}
@ -2578,7 +2579,7 @@ row_search_for_mysql(
/* printf("%s record not found 1\n", index->name); */
trx->op_info = "";
trx->op_info = (char *) "";
return(DB_RECORD_NOT_FOUND);
}
@ -2638,7 +2639,7 @@ row_search_for_mysql(
trx->has_search_latch = FALSE;
}
trx->op_info = "";
trx->op_info = (char *) "";
return(DB_SUCCESS);
} else if (shortcut == SEL_EXHAUSTED) {
@ -2657,7 +2658,7 @@ row_search_for_mysql(
trx->has_search_latch = FALSE;
}
trx->op_info = "";
trx->op_info = (char *) "";
return(DB_RECORD_NOT_FOUND);
}
@ -3029,7 +3030,7 @@ lock_wait_or_error:
/* printf("Using index %s cnt %lu ret value %lu err\n", index->name,
cnt, err); */
trx->op_info = "";
trx->op_info = (char *) "";
return(err);
@ -3050,7 +3051,7 @@ normal_return:
srv_n_rows_read++;
}
trx->op_info = "";
trx->op_info = (char *) "";
return(ret);
}