diff options
Diffstat (limited to 'storage')
-rw-r--r-- | storage/innobase/btr/btr0cur.cc | 8 | ||||
-rw-r--r-- | storage/xtradb/btr/btr0cur.cc | 8 |
2 files changed, 8 insertions, 8 deletions
diff --git a/storage/innobase/btr/btr0cur.cc b/storage/innobase/btr/btr0cur.cc index 2ae6da00549..d848ee538c6 100644 --- a/storage/innobase/btr/btr0cur.cc +++ b/storage/innobase/btr/btr0cur.cc @@ -2316,10 +2316,10 @@ any_extern: rec = page_cur_get_rec(page_cursor); } - /* We limit max record size to 16k for 64k page size. */ - if (!dict_table_is_comp(index->table) - && new_rec_size > REDUNDANT_REC_MAX_DATA_SIZE) { - ut_ad(srv_page_size == UNIV_PAGE_SIZE_MAX); + /* We limit max record size to 16k even for 64k page size. */ + if (new_rec_size >= COMPRESSED_REC_MAX_DATA_SIZE || + (!dict_table_is_comp(index->table) + && new_rec_size >= REDUNDANT_REC_MAX_DATA_SIZE)) { err = DB_OVERFLOW; goto func_exit; diff --git a/storage/xtradb/btr/btr0cur.cc b/storage/xtradb/btr/btr0cur.cc index 6480b756f4e..1a27fd0d6ea 100644 --- a/storage/xtradb/btr/btr0cur.cc +++ b/storage/xtradb/btr/btr0cur.cc @@ -2466,10 +2466,10 @@ any_extern: rec = page_cur_get_rec(page_cursor); } - /* We limit max record size to 16k for 64k page size. */ - if (!dict_table_is_comp(index->table) - && new_rec_size > REDUNDANT_REC_MAX_DATA_SIZE) { - ut_ad(srv_page_size == UNIV_PAGE_SIZE_MAX); + /* We limit max record size to 16k even for 64k page size. */ + if (new_rec_size >= COMPRESSED_REC_MAX_DATA_SIZE || + (!dict_table_is_comp(index->table) + && new_rec_size >= REDUNDANT_REC_MAX_DATA_SIZE)) { err = DB_OVERFLOW; goto func_exit; |