MDEV-9356: innodb.innodb_bug53290 fails (crashes) on sol10-64 in buildbot
Analysis: In storage/innobase/row/row0merge.cc InnoDB calls thd_progress_init, thd_progress_report and thd_progress_end functions. These seem to cause crash on solaris 10 64-bit. Fix: Disable progress reporting on UNIV_SOLARIS until the actual issue causing the crash is fixed. The actual bug is not on InnoDB code base.
This commit is contained in:
parent
c3c4d55e7e
commit
fa10a65dc2
@ -2381,10 +2381,16 @@ row_merge_sort(
|
|||||||
of file marker). Thus, it must be at least one block. */
|
of file marker). Thus, it must be at least one block. */
|
||||||
ut_ad(file->offset > 0);
|
ut_ad(file->offset > 0);
|
||||||
|
|
||||||
|
/* These thd_progress* calls will crash on sol10-64 when innodb_plugin
|
||||||
|
is used. MDEV-9356: innodb.innodb_bug53290 fails (crashes) on
|
||||||
|
sol10-64 in buildbot.
|
||||||
|
*/
|
||||||
|
#ifndef UNIV_SOLARIS
|
||||||
/* Progress report only for "normal" indexes. */
|
/* Progress report only for "normal" indexes. */
|
||||||
if (!(dup->index->type & DICT_FTS)) {
|
if (!(dup->index->type & DICT_FTS)) {
|
||||||
thd_progress_init(trx->mysql_thd, 1);
|
thd_progress_init(trx->mysql_thd, 1);
|
||||||
}
|
}
|
||||||
|
#endif /* UNIV_SOLARIS */
|
||||||
|
|
||||||
/* Merge the runs until we have one big run */
|
/* Merge the runs until we have one big run */
|
||||||
do {
|
do {
|
||||||
@ -2394,9 +2400,11 @@ row_merge_sort(
|
|||||||
/* Report progress of merge sort to MySQL for
|
/* Report progress of merge sort to MySQL for
|
||||||
show processlist progress field only for
|
show processlist progress field only for
|
||||||
"normal" indexes. */
|
"normal" indexes. */
|
||||||
|
#ifndef UNIV_SOLARIS
|
||||||
if (!(dup->index->type & DICT_FTS)) {
|
if (!(dup->index->type & DICT_FTS)) {
|
||||||
thd_progress_report(trx->mysql_thd, file->offset - num_runs, file->offset);
|
thd_progress_report(trx->mysql_thd, file->offset - num_runs, file->offset);
|
||||||
}
|
}
|
||||||
|
#endif /* UNIV_SOLARIS */
|
||||||
|
|
||||||
if (error != DB_SUCCESS) {
|
if (error != DB_SUCCESS) {
|
||||||
break;
|
break;
|
||||||
@ -2407,9 +2415,11 @@ row_merge_sort(
|
|||||||
|
|
||||||
mem_free(run_offset);
|
mem_free(run_offset);
|
||||||
|
|
||||||
|
#ifndef UNIV_SOLARIS
|
||||||
if (!(dup->index->type & DICT_FTS)) {
|
if (!(dup->index->type & DICT_FTS)) {
|
||||||
thd_progress_end(trx->mysql_thd);
|
thd_progress_end(trx->mysql_thd);
|
||||||
}
|
}
|
||||||
|
#endif /* UNIV_SOLARIS */
|
||||||
|
|
||||||
DBUG_RETURN(error);
|
DBUG_RETURN(error);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user