You are looking at the docs for the unreleased master branch of Dgraph. The latest version is v21.03.
Report Issue Edit Page

Troubleshooting

This page provides tips on how to troubleshoot issues with running Dgraph.

Running out of memory (OOM)

When you bulk load or backup your data, Dgraph can consume more memory than usual due to a high volume of writes. This can cause OOM crashes.

You can take the following steps to help avoid OOM crashes:

  • Increase the amount of memory available: If you run Dgraph with insufficient memory, that can result in OOM crashes. The recommended minimum RAM to run Dgraph on desktops and laptops (single-host deployment) is 16GB. For servers in a cluster deployment, the recommended minimum is 8GB per server. This applies to EC2 and GCE instances, as well as on-premises servers.

  • Reduce the number of Go routines: You can troubleshoot OOM issues by reducing the number of Go routines (goroutines) used by Dgraph from the default value of eight. For example, you can reduce the goroutines that Dgraph uses to four by calling the dgraph alpha command with the following option:

    --badger "goroutines=4"

“Too many open files” errors

If Dgraph logs “too many open files” errors, you should increase the per-process open file descriptor limit to permit more open files. During normal operations, Dgraph must be able to open many files. Your operating system may have an open file descriptor limit with a low default value that isn’t adequate for a database like Dgraph. If so, you might need to increase this limit.

On Linux and Mac, you can get file descriptor limit settings with the ulimit command, as follows:

  • Get hard limit: ulimit -n -H
  • Get soft limit: ulimit -n -S

A soft limit of 65535 open files is the recommended minimum to use Dgraph in production, but you can try increasing this soft limit if you continue to see this error. To learn more, see the ulimit documentation for your operating system.

Continue the conversation on Discuss.