Linux ulimit settings for merges

For purposes of generation merging, it is recommended that you set the Linux option ulimit -v and -m parameters to unlimited.

An unlimited setting for the -v option sets no limit on the maximum amount of virtual memory available to a process, and for the -m option sets no limit on the maximum resident set size. Setting these options to unlimited can help prevent problems when the Dgraph is merging the generation files.

An example of a merge problem due to insufficient disk space and memory resources is a Dgraph error similar to the following:
ERROR 04/03/13 05:24:35.668 UTC (1364966675668) DGRAPH {dgraph} BackgroundMergeTask: 
exception thrown: Can't parse generation file, caused by I/O Exception: While mapping file, 
caused by mmap failure: Cannot allocate memory

In this case, the problem is caused because the Dgraph cannot allocate enough virtual memory for its merging task.