diff options
author | unknown <monty@donna.mysql.com> | 2000-09-26 22:39:45 +0300 |
---|---|---|
committer | unknown <monty@donna.mysql.com> | 2000-09-26 22:39:45 +0300 |
commit | b31f06a74efdfb790e139dae2fc0fb54bc2341b6 (patch) | |
tree | ea6dbe861611447827a284bc7e8a9fafd9222d6d /myisam | |
parent | f0c7c8384123639570f2bc61b7e2c806a386e780 (diff) | |
download | mariadb-git-b31f06a74efdfb790e139dae2fc0fb54bc2341b6.tar.gz |
Small fixes for release
Docs/manual.texi:
Update of file limits on windows
myisam/mi_close.c:
Fix for alter table on windows
myisam/mi_extra.c:
Fix for alter table on windows
myisam/myisamlog.c:
Corrected statistics information
sql-bench/limits/mysql-3.23.cfg:
Update to new crash-me
sql-bench/limits/mysql.cfg:
Update to new crash-me
sql/sql_base.cc:
Fix if end of memory
sql/table.cc:
Fix of new introduced index-handling bug
Diffstat (limited to 'myisam')
-rw-r--r-- | myisam/mi_close.c | 2 | ||||
-rw-r--r-- | myisam/mi_extra.c | 2 | ||||
-rw-r--r-- | myisam/myisamlog.c | 30 |
3 files changed, 26 insertions, 8 deletions
diff --git a/myisam/mi_close.c b/myisam/mi_close.c index ebd64aa2349..059e7d3223a 100644 --- a/myisam/mi_close.c +++ b/myisam/mi_close.c @@ -36,7 +36,7 @@ int mi_close(register MI_INFO *info) if (info->lock_type == F_EXTRA_LCK) info->lock_type=F_UNLCK; /* HA_EXTRA_NO_USER_CHANGE */ - if (share->reopen == 1) + if (share->reopen == 1 && share->kfile >= 0) _mi_decrement_open_count(info); if (info->lock_type != F_UNLCK) diff --git a/myisam/mi_extra.c b/myisam/mi_extra.c index b9ded70402a..b90b5b35780 100644 --- a/myisam/mi_extra.c +++ b/myisam/mi_extra.c @@ -241,6 +241,8 @@ int mi_extra(MI_INFO *info, enum ha_extra_function function) error=my_errno; info->lock_type = F_UNLCK; } + if (share->kfile >= 0) + _mi_decrement_open_count(info); if (share->kfile >= 0 && my_close(share->kfile,MYF(0))) error=my_errno; { diff --git a/myisam/myisamlog.c b/myisam/myisamlog.c index e5e8bba6ea6..a492448065d 100644 --- a/myisam/myisamlog.c +++ b/myisam/myisamlog.c @@ -355,7 +355,7 @@ static int examine_log(my_string file_name, char **table_names) } command=(uint) head[0]; if (command < sizeof(com_count)/sizeof(com_count[0][0])/3 && - (!curr_file_info || curr_file_info->used)) + (!table_names[0] || (curr_file_info && curr_file_info->used))) { com_count[command][0]++; if (result) @@ -363,9 +363,12 @@ static int examine_log(my_string file_name, char **table_names) } switch ((enum myisam_log_commands) command) { case MI_LOG_OPEN: - com_count[command][0]--; /* Must be counted explicite */ - if (result) - com_count[command][1]--; + if (!table_names[0]) + { + com_count[command][0]--; /* Must be counted explicite */ + if (result) + com_count[command][1]--; + } if (curr_file_info) printf("\nWarning: %s is opened twice with same process and filenumber\n", @@ -502,6 +505,8 @@ static int examine_log(my_string file_name, char **table_names) { if (!recover) goto com_err; + if (verbose) + printf_log("error: Didn't find row to delete with mi_rrnd"); com_count[command][2]++; /* Mark error */ } mi_result=mi_delete(curr_file_info->isam,curr_file_info->record); @@ -512,6 +517,9 @@ static int examine_log(my_string file_name, char **table_names) goto com_err; if (mi_result) com_count[command][2]++; /* Mark error */ + if (verbose) + printf_log("error: Got result %d from mi_delete instead of %d", + mi_result, result); } } break; @@ -550,6 +558,8 @@ static int examine_log(my_string file_name, char **table_names) result=0; goto com_err; } + if (verbose) + printf_log("error: Didn't find row to update with mi_rrnd"); if (recover == 1 || result || find_record_with_key(curr_file_info,buff)) { @@ -564,6 +574,9 @@ static int examine_log(my_string file_name, char **table_names) { if (!recover) goto com_err; + if (verbose) + printf_log("error: Got result %d from mi_update instead of %d", + mi_result, result); if (mi_result) com_count[command][2]++; /* Mark error */ } @@ -576,15 +589,18 @@ static int examine_log(my_string file_name, char **table_names) { if (!recover) goto com_err; + if (verbose) + printf_log("error: Got result %d from mi_write instead of %d", + mi_result, result); if (mi_result) com_count[command][2]++; /* Mark error */ } - if (! recover && filepos != curr_file_info->isam->lastpos) + if (!recover && filepos != curr_file_info->isam->lastpos) { - printf("Warning: Wrote at position: %s, should have been %s", + printf("error: Wrote at position: %s, should have been %s", llstr(curr_file_info->isam->lastpos,llbuff), llstr(filepos,llbuff2)); - goto com_err; + goto end; } } } |