diff options
author | unknown <heikki@hundin.mysql.fi> | 2002-11-07 21:04:26 +0200 |
---|---|---|
committer | unknown <heikki@hundin.mysql.fi> | 2002-11-07 21:04:26 +0200 |
commit | f57822ccfd0315e081f72799c2b6213ccab617fa (patch) | |
tree | 1cd2cb7bd2df9d2e450c2ea60c99b7e1444f491e /innobase | |
parent | 4fa5e50edbba856a2fe60d1dde7eb5571f42bd68 (diff) | |
download | mariadb-git-f57822ccfd0315e081f72799c2b6213ccab617fa.tar.gz |
btr0btr.c, buf0buf.c:
Fix a glitch: under heavy ibuf activity InnoDB could print the whole contents of ibuf tree to the error log
innobase/buf/buf0buf.c:
Fix a glitch: under heavy ibuf activity InnoDB could print the whole contents of ibuf tree to the error log
innobase/btr/btr0btr.c:
Fix a glitch: under heavy ibuf activity InnoDB could print the whole contents of ibuf tree to the error log
Diffstat (limited to 'innobase')
-rw-r--r-- | innobase/btr/btr0btr.c | 8 | ||||
-rw-r--r-- | innobase/buf/buf0buf.c | 10 |
2 files changed, 13 insertions, 5 deletions
diff --git a/innobase/btr/btr0btr.c b/innobase/btr/btr0btr.c index 62a86d342a2..e4cfdf80fc6 100644 --- a/innobase/btr/btr0btr.c +++ b/innobase/btr/btr0btr.c @@ -2310,6 +2310,14 @@ btr_index_rec_validate( ulint i; char err_buf[1000]; + if (index->type & DICT_UNIVERSAL) { + /* The insert buffer index tree can contain records from any + other index: we cannot check the number of fields or + their length */ + + return(TRUE); + } + n = dict_index_get_n_fields(index); if (rec_get_n_fields(rec) != n) { diff --git a/innobase/buf/buf0buf.c b/innobase/buf/buf0buf.c index 4524fa1a4f9..c9a5ec5307f 100644 --- a/innobase/buf/buf0buf.c +++ b/innobase/buf/buf0buf.c @@ -1357,11 +1357,6 @@ buf_page_create( ut_ad(mtr); free_block = buf_LRU_get_free_block(); - - /* Delete possible entries for the page from the insert buffer: - such can exist if the page belonged to an index which was dropped */ - - ibuf_merge_or_delete_for_page(NULL, space, offset); mutex_enter(&(buf_pool->mutex)); @@ -1410,6 +1405,11 @@ buf_page_create( mutex_exit(&(buf_pool->mutex)); + /* Delete possible entries for the page from the insert buffer: + such can exist if the page belonged to an index which was dropped */ + + ibuf_merge_or_delete_for_page(NULL, space, offset); + /* Flush pages from the end of the LRU list if necessary */ buf_flush_free_margin(); |