summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVamsi Krishna <vamsi.krishna@mongodb.com>2017-11-22 16:33:15 +1100
committerAlex Gorrod <alexander.gorrod@mongodb.com>2017-11-22 16:33:15 +1100
commitd1027489d8e1fdf86e5beec210eb5315abe4105d (patch)
tree59c73e0c07c876984dca07237c9e7ae92ecf1553
parent1c83554346552d9fc47d809a5328995261617896 (diff)
downloadmongo-d1027489d8e1fdf86e5beec210eb5315abe4105d.tar.gz
WT-3760 Avoid writing overflow values into the lookaside file (#3799)
-rw-r--r--dist/s_define.list1
-rw-r--r--src/include/btmem.h12
2 files changed, 7 insertions, 6 deletions
diff --git a/dist/s_define.list b/dist/s_define.list
index fb0162079d9..4be8ceee0e3 100644
--- a/dist/s_define.list
+++ b/dist/s_define.list
@@ -35,6 +35,7 @@ WT_LOG_SLOT_MASK_OFF
WT_LOG_SLOT_MASK_ON
WT_LOG_SLOT_MAXBITS
WT_LOG_SLOT_UNBUFFERED_ISSET
+WT_LOOKASIDE_COMPRESSOR
WT_PACKED_STRUCT_BEGIN
WT_PACKED_STRUCT_END
WT_PADDING_CHECK
diff --git a/src/include/btmem.h b/src/include/btmem.h
index e10c74e0203..d45b68d1972 100644
--- a/src/include/btmem.h
+++ b/src/include/btmem.h
@@ -183,15 +183,15 @@ struct __wt_ovfl_reuse {
* the row-store key is relatively large.
*/
#ifdef HAVE_BUILTIN_EXTENSION_SNAPPY
-#define WT_LAS_CONFIG \
- "key_format=" WT_UNCHECKED_STRING(QIQu) \
- ",value_format=" WT_UNCHECKED_STRING(QuBu) \
- ",block_compressor=snappy"
+#define WT_LOOKASIDE_COMPRESSOR "snappy"
#else
+#define WT_LOOKASIDE_COMPRESSOR "none"
+#endif
#define WT_LAS_CONFIG \
"key_format=" WT_UNCHECKED_STRING(QIQu) \
- ",value_format=" WT_UNCHECKED_STRING(QuBu)
-#endif
+ ",value_format=" WT_UNCHECKED_STRING(QuBu) \
+ ",block_compressor=" WT_LOOKASIDE_COMPRESSOR \
+ ",leaf_value_max=64MB"
/*
* WT_PAGE_LOOKASIDE --