mirror of
https://github.com/MariaDB/server.git
synced 2025-01-29 10:14:19 +01:00
MDEV-6257: MariaDB 5.5 fails to start with 10.0 InnoDB log files
Analysis: Can't disable the error message because you may get database started with incorrect log file size. Fix: Thus only improve the error message to give more information to users.
This commit is contained in:
parent
75137522b9
commit
1adf9e7984
2 changed files with 35 additions and 18 deletions
|
@ -625,16 +625,25 @@ open_or_create_log_file(
|
|||
|| size_high != srv_calc_high32(srv_log_file_size)) {
|
||||
|
||||
/* By default 5.6 based InnoDB will create 48M log
|
||||
file but 5.5 only 5M. Actual size error must be
|
||||
tested later. */
|
||||
file but 5.5 only 5M. Thus give hint to user. */
|
||||
fprintf(stderr,
|
||||
"InnoDB: Error: log file %s is"
|
||||
" of different size %lu %lu bytes\n"
|
||||
"InnoDB: than specified in the .cnf"
|
||||
" file %lu %lu bytes!\n",
|
||||
name, (ulong) size_high, (ulong) size,
|
||||
(ulong) srv_calc_high32(srv_log_file_size),
|
||||
(ulong) srv_calc_low32(srv_log_file_size));
|
||||
|
||||
fprintf(stderr,
|
||||
"InnoDB: Warning: log file %s is"
|
||||
" of different size %lu %lu bytes\n"
|
||||
"InnoDB: than specified in the .cnf"
|
||||
" file %lu %lu bytes!\n",
|
||||
name, (ulong) size_high, (ulong) size,
|
||||
(ulong) srv_calc_high32(srv_log_file_size),
|
||||
(ulong) srv_calc_low32(srv_log_file_size));
|
||||
"InnoDB: Possible causes for this error:\n"
|
||||
" (a) Incorrect log file is used or log file size is changed\n"
|
||||
" (b) In case default size is used this log file is from 10.0\n"
|
||||
" (c) Log file is corrupted or there was not enough disk space\n"
|
||||
" In case (b) you need to set innodb_log_file_size = 48M\n");
|
||||
|
||||
return(DB_ERROR);
|
||||
|
||||
}
|
||||
} else {
|
||||
*log_file_created = TRUE;
|
||||
|
|
|
@ -619,16 +619,24 @@ open_or_create_log_file(
|
|||
|| size_high != srv_calc_high32(srv_log_file_size)) {
|
||||
|
||||
/* By default 5.6 based InnoDB will create 48M log
|
||||
file but 5.5 only 5M. Actual size error must be
|
||||
tested later. */
|
||||
file but 5.5 only 5M. Thus give hint to user. */
|
||||
fprintf(stderr,
|
||||
"InnoDB: Error: log file %s is"
|
||||
" of different size %lu %lu bytes\n"
|
||||
"InnoDB: than specified in the .cnf"
|
||||
" file %lu %lu bytes!\n",
|
||||
name, (ulong) size_high, (ulong) size,
|
||||
(ulong) srv_calc_high32(srv_log_file_size),
|
||||
(ulong) srv_calc_low32(srv_log_file_size));
|
||||
|
||||
fprintf(stderr,
|
||||
"InnoDB: Warning: log file %s is"
|
||||
" of different size %lu %lu bytes\n"
|
||||
"InnoDB: than specified in the .cnf"
|
||||
" file %lu %lu bytes!\n",
|
||||
name, (ulong) size_high, (ulong) size,
|
||||
(ulong) srv_calc_high32(srv_log_file_size),
|
||||
(ulong) srv_calc_low32(srv_log_file_size));
|
||||
"InnoDB: Possible causes for this error:\n"
|
||||
" (a) Incorrect log file is used or log file size is changed\n"
|
||||
" (b) In case default size is used this log file is from 10.0\n"
|
||||
" (c) Log file is corrupted or there was not enough disk space\n"
|
||||
" In case (b) you need to set innodb_log_file_size = 48M\n");
|
||||
|
||||
return(DB_ERROR);
|
||||
}
|
||||
} else {
|
||||
*log_file_created = TRUE;
|
||||
|
|
Loading…
Add table
Reference in a new issue