summaryrefslogtreecommitdiff
path: root/rel
diff options
context:
space:
mode:
authorAdam Kocoloski <adam@cloudant.com>2010-08-27 12:40:03 -0400
committerAdam Kocoloski <adam@cloudant.com>2010-08-27 12:40:03 -0400
commitbce619cbf5a720e409de9f05387c10e86586ba26 (patch)
tree38d241ee01619ac4db006c9ec0e794acb5a1ce15 /rel
parentf0d05161f569763dc8d00e5149009e6e92f2cebb (diff)
read Erlang VM arguments from config file
Diffstat (limited to 'rel')
-rwxr-xr-xrel/overlay/bin/dbcore20
-rw-r--r--rel/overlay/etc/vm.args22
-rw-r--r--rel/reltool.config3
3 files changed, 30 insertions, 15 deletions
diff --git a/rel/overlay/bin/dbcore b/rel/overlay/bin/dbcore
index 4ffd69fa..6ada061e 100755
--- a/rel/overlay/bin/dbcore
+++ b/rel/overlay/bin/dbcore
@@ -4,23 +4,15 @@
ERTS_BIN_DIR=$(cd ${0%/*} && pwd)
-ROOTDIR=${ERTS_BIN_DIR%/*}
+export ROOTDIR=${ERTS_BIN_DIR%/*}
START_ERL=`cat $ROOTDIR/releases/start_erl.data`
ERTS_VSN=${START_ERL% *}
APP_VSN=${START_ERL#* }
-BINDIR=$ROOTDIR/erts-$ERTS_VSN/bin
-EMU=beam
-PROGNAME=`echo $0 | sed 's/.*\///'`
-CMD="$BINDIR/erlexec"
+export BINDIR=$ROOTDIR/erts-$ERTS_VSN/bin
+export EMU=beam
+export PROGNAME=`echo $0 | sed 's/.*\///'`
-export EMU
-export ROOTDIR
-export BINDIR
-export PROGNAME
-
-exec $CMD -boot $ROOTDIR/releases/$APP_VSN/dbcore \
- +Bd -noinput -sasl errlog_type error \
- +A 16 +K true \
- -name dbcore
+exec $BINDIR/erlexec -boot $ROOTDIR/releases/$APP_VSN/dbcore \
+ -args_file $ROOTDIR/etc/vm.args
diff --git a/rel/overlay/etc/vm.args b/rel/overlay/etc/vm.args
new file mode 100644
index 00000000..29ae50f8
--- /dev/null
+++ b/rel/overlay/etc/vm.args
@@ -0,0 +1,22 @@
+# Each node in the system must have a unique name. A name can be short
+# (specified using -sname) or it can by fully qualified (-name). There can be
+# no communication between nodes running with the -sname flag and those running
+# with the -name flag.
+{{node_name}}
+
+# All nodes must share the same magic cookie for distributed Erlang to work.
+# Comment out this line if you synchronized the cookies by other means (using
+# the ~/.erlang.cookie file, for example).
+-setcookie monster
+
+# Tell SASL not to log progress reports
+-sasl errlog_type error
+
+# Use kernel poll functionality if supported by emulator
++K true
+
+# Start a pool of asynchronous IO threads
++A 16
+
+# Uncomment this line to disable the interactive Erlang shell
+# +Bd -noinput
diff --git a/rel/reltool.config b/rel/reltool.config
index b3386f48..408b3571 100644
--- a/rel/reltool.config
+++ b/rel/reltool.config
@@ -42,5 +42,6 @@
{copy, "overlay/share"},
{copy, "../couchjs/build/couchjs", "bin/couchjs"},
{copy, "../couchjs/build/main.js", "share/couchjs/main.js"},
- {template, "overlay/etc/default.ini", "etc/default.ini"}
+ {template, "overlay/etc/default.ini", "etc/default.ini"},
+ {template, "overlay/etc/vm.args", "etc/vm.args"}
]}.