Skip to content

WebSocket Connection Fails for Node-RED UI via Ingress Proxy with Large Entity Count #1986

@zachowj

Description

@zachowj

Problem/Motivation

Any part of the Node-RED UI that relies on the websocket connection—such as inject nodes, the debug panel, and input field autocomplete—becomes unusable for users who access the Node-RED UI through the ingress proxy and have a large number of entities and devices. This occurs because the ingress proxy has a default max message size of 4MB. However, when connecting directly to the Node-RED UI on port 1880, this isn't an issue since Node.js has a default max message size of 100 MB.

This is similar to the issue addressed in this supervisor API proxy fix: home-assistant/supervisor#4443.

Expected behavior

The Node-RED UI should function normally, allowing users to utilize inject nodes, the debug panel, autocomplete, and other websocket-reliant features, even with a large number of entities and devices.

Actual behavior

When accessing the Node-RED UI via the ingress proxy, the websocket connection between the UI and backend fails, making any part of the UI that relies on it (e.g., inject nodes, debug panel) unusable.

Steps to reproduce

  1. Access Node-RED UI through Home Assistant using the ingress proxy.
  2. Ensure the Home Assistant instance has a large number of entities and devices.
  3. Attempt to use features like inject nodes or the debug panel.

Proposed changes

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions