Too many open files EMFILE Node.js

Error: EMFILE too many open files

Quick Answer

The process has too many file descriptors open.

Why This Happens

In Node.js, the process has too many file descriptors open. This is one of the most common Node.js errors developers encounter. Understanding the root cause helps you fix it quickly and prevent it from recurring.

The Problem

for (const file of thousandsOfFiles) {
  fs.readFile(file, cb);
}

The Fix

const { promisify } = require('util');
const pLimit = require('p-limit');
const limit = pLimit(100);
await Promise.all(files.map(f => limit(() => readFile(f))));

Step-by-Step Fix

  1. 1

    Identify the error

    Look at the error message: Error: EMFILE too many open files. This tells you exactly what went wrong.

  2. 2

    Find the cause

    Check the stack trace to find which line of your Node.js code triggered this error.

  3. 3

    Apply the fix

    Use the corrected code pattern shown above. Test to confirm the error is resolved.

Bugsly catches this automatically

Bugsly's AI analyzes this error pattern in real-time, explains what went wrong in plain English, and suggests the exact fix — before your users even report it.

Try Bugsly free