summaryrefslogtreecommitdiff
path: root/innobase
diff options
context:
space:
mode:
Diffstat (limited to 'innobase')
-rw-r--r--innobase/include/dyn0dyn.h9
-rw-r--r--innobase/include/dyn0dyn.ic4
2 files changed, 5 insertions, 8 deletions
diff --git a/innobase/include/dyn0dyn.h b/innobase/include/dyn0dyn.h
index 332622b6d4c..6f08da1533b 100644
--- a/innobase/include/dyn0dyn.h
+++ b/innobase/include/dyn0dyn.h
@@ -17,13 +17,8 @@ typedef struct dyn_block_struct dyn_block_t;
typedef dyn_block_t dyn_array_t;
-/* Initial 'payload' size in bytes in a dynamic array block */
-#ifndef _AIX
-#define DYN_ARRAY_DATA_SIZE 1024
-#else
-/* AIX has a quite small stack / thread */
-#define DYN_ARRAY_DATA_SIZE 128
-#endif
+/* This must be > MLOG_BUF_MARGIN + 30 */
+#define DYN_ARRAY_DATA_SIZE 512
/*************************************************************************
Initializes a dynamic array. */
diff --git a/innobase/include/dyn0dyn.ic b/innobase/include/dyn0dyn.ic
index dc004efbb8b..787615cae09 100644
--- a/innobase/include/dyn0dyn.ic
+++ b/innobase/include/dyn0dyn.ic
@@ -185,7 +185,8 @@ dyn_array_open(
/*===========*/
/* out: pointer to the buffer */
dyn_array_t* arr, /* in: dynamic array */
- ulint size) /* in: size in bytes of the buffer */
+ ulint size) /* in: size in bytes of the buffer; MUST be
+ smaller than DYN_ARRAY_DATA_SIZE! */
{
dyn_block_t* block;
ulint used;
@@ -207,6 +208,7 @@ dyn_array_open(
if (used + size > DYN_ARRAY_DATA_SIZE) {
block = dyn_array_add_block(arr);
used = block->used;
+ ut_a(size <= DYN_ARRAY_DATA_SIZE);
}
}