I'm trying to run my NodeJS script on the grid engine. I see a very old of node (v0.10.25) is installed globally at /usr/bin/node which I cannot use. I have downloaded a recent version (v6.10.3) that is able to run my program fine:
/data/project/congressedits/node-v6.10.3-linux-x64/bin/node
But when I try to start it in the grid environment with this:
jstart -N congresseditors /data/project/congressedits/node/bin/node /data/project/congressedits/congresseditors/congresseditors.js --config /data/project/congressedits/congresseditors/config.json --verbose
I get this in congresseditors.err
FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory
1: node::Abort() [/mnt/nfs/labstore-secondary-tools-project/congressedits/node-v6.10.3-linux-x64/bin/node]
2: 0x109b9cc [/mnt/nfs/labstore-secondary-tools-project/congressedits/node-v6.10.3-linux-x64/bin/node]
3: v8::Utils::ReportApiFailure(char const*, char const*) [/mnt/nfs/labstore-secondary-tools-project/congressedits/node-v6.10.3-linux-x64/bin/node]
4: v8::internal::V8::FatalProcessOutOfMemory(char const*, bool) [/mnt/nfs/labstore-secondary-tools-project/congressedits/node-v6.10.3-linux-x64/bin/node]
5: v8::internal::Factory::NewRawTwoByteString(int, v8::internal::PretenureFlag) [/mnt/nfs/labstore-secondary-tools-project/congressedits/node-v6.10.3-linux-x64/bin/node]
6: v8::internal::Factory::NewStringFromUtf8(v8::internal::Vector<char const>, v8::internal::PretenureFlag) [/mnt/nfs/labstore-secondary-tools-project/congressedits/node-v6.10.3-linux-x64/bin/node]
7: v8::String::NewFromUtf8(v8::Isolate*, char const*, v8::String::NewStringType, int) [/mnt/nfs/labstore-secondary-tools-project/congressedits/node-v6.10.3-linux-x64/bin/node]
8: node::StringBytes::Encode(v8::Isolate*, char const*, unsigned long, node::encoding) [/mnt/nfs/labstore-secondary-tools-project/congressedits/node-v6.10.3-linux-x64/bin/node]
9: void node::Buffer::StringSlice<(node::encoding)1>(v8::FunctionCallbackInfo<v8::Value> const&) [/mnt/nfs/labstore-secondary-tools-project/congressedits/node-v6.10.3-linux-x64/bin/node]
10: v8::internal::FunctionCallbackArguments::Call(void (*)(v8::FunctionCallbackInfo<v8::Value> const&)) [/mnt/nfs/labstore-secondary-tools-project/congressedits/node-v6.10.3-linux-x64/bin/node]
11: 0x9ec36e [/mnt/nfs/labstore-secondary-tools-project/congressedits/node-v6.10.3-linux-x64/bin/node]
12: 0x9ecc0e [/mnt/nfs/labstore-secondary-tools-project/congressedits/node-v6.10.3-linux-x64/bin/node]
13: 0x27b5273092a7
Aborted (core dumped)
And this in congresseditors.out
<--- Last few GCs --->
3404 ms: Mark-sweep 21.8 (39.0) -> 15.5 (39.0) MB, 33.1 / 0.0 ms [allocation failure] [GC in old space requested]. 3431 ms: Mark-sweep 15.5 (39.0) -> 15.4 (39.0) MB, 26.1 / 0.0 ms [allocation failure] [GC in old space requested]. 3454 ms: Mark-sweep 15.4 (39.0) -> 14.1 (24.0) MB, 23.2 / 0.0 ms [last resort gc]. 3493 ms: Mark-sweep 14.1 (24.0) -> 15.2 (22.0) MB, 38.8 / 0.0 ms [last resort gc].
<--- JS stacktrace --->
JS stack trace
Security context: 0x18681a5cfb39 <JS Object>
1: slowToString [buffer.js:459] [pc=0x27b52776f215] (this=0x3c72aa0a9b39 <an Uint8Array with map 0x37ea646068d9>,encoding=0x18681a5dd309 <String[4]: utf8>,start=0,end=720427) 2: arguments adaptor frame: 1->3 3: toString [buffer.js:492] [pc=0x27b52776e9df] (this=0x3c72aa0a9b39 <an Uint8Array with map 0x37ea646068d9>) 4: arguments adaptor frame: 1->0 5: /* anonymous */ [/mnt/n...
Is there a better way of doing this?