summaryrefslogtreecommitdiff
path: root/storage
diff options
context:
space:
mode:
Diffstat (limited to 'storage')
-rw-r--r--storage/innobase/btr/btr0cur.cc8
-rw-r--r--storage/xtradb/btr/btr0cur.cc8
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;