summaryrefslogtreecommitdiff
path: root/src/mongo/shell/shell_options.cpp
diff options
context:
space:
mode:
authorWaley Chen <waleycz@gmail.com>2016-09-13 16:10:04 -0400
committerWaley Chen <waleycz@gmail.com>2016-09-13 17:54:11 -0400
commit955cf8c998a60a8c2a2493dd428dd3d763e90259 (patch)
tree9e6253c35b752b6f853454cfb4a47acdb5cf77dd /src/mongo/shell/shell_options.cpp
parent4f211b037feac1d4c80d65df5a0fae12fcac1e4c (diff)
downloadmongo-955cf8c998a60a8c2a2493dd428dd3d763e90259.tar.gz
SERVER-22688 Provide a setParameter and shell option to control the js heap limit
Diffstat (limited to 'src/mongo/shell/shell_options.cpp')
-rw-r--r--src/mongo/shell/shell_options.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/mongo/shell/shell_options.cpp b/src/mongo/shell/shell_options.cpp
index 1b378836c35..324ad87fa3d 100644
--- a/src/mongo/shell/shell_options.cpp
+++ b/src/mongo/shell/shell_options.cpp
@@ -200,6 +200,9 @@ Status addMongoShellOptions(moe::OptionSection* options) {
if (!ret.isOK())
return ret;
+ options->addOptionChaining(
+ "jsHeapMBLimit", "jsHeapMBLimit", moe::Int, "set the js scope's heap size limit");
+
return Status::OK();
}
@@ -370,6 +373,16 @@ Status storeMongoShellOptions(const moe::Environment& params,
}
}
+ if (params.count("jsHeapMBLimit")) {
+ int jsHeapMBLimit = params["jsHeapMBLimit"].as<int>();
+ if (jsHeapMBLimit <= 0) {
+ StringBuilder sb;
+ sb << "ERROR: \"jsHeapMBLimit\" needs to be greater than 0";
+ return Status(ErrorCodes::BadValue, sb.str());
+ }
+ shellGlobalParams.jsHeapMBLimit = jsHeapMBLimit;
+ }
+
if (shellGlobalParams.url == "*") {
StringBuilder sb;
sb << "ERROR: "