v2.10.4
v2.10.4
View on GitHubView PackagePublished: Jul 15, 2026

Release Notes

Release notes

Netdata v2.10.4 is a patch release to address issues discovered since v2.10.3.

This is a larger-than-usual patch release focused on stability, memory safety, and crash resilience across the database engine, streaming, Cloud connectivity, and collectors. It also backports the new macOS hardware sensor collectors to the 2.10.x line.

New in this release

  • macOS hardware sensor collectors: GPU power, clock, and temperatures, SMC and IOHID sensors and fans, power sources and thermal pressure, NVMe SMART, with a powermetrics fallback via ndsudo, plus a cross-OS sensors function and a shared temperature-histogram context (#22475, #23085, @ktsaou)
  • Bounded-cardinality process grouping for apps.plugin on macOS, keeping per-process monitoring meaningful on hosts with high process churn (#23085, @ktsaou)

Database engine and metadata

  • Hardened DBENGINE against corrupted or truncated data files: extent disk-size and uncompressed-page-bounds validation, SIGBUS protection and header-offset bounds checks on v2 journal walks, improved journal file access error handling, and spinlock-holder identification for datafile/journal deadlock diagnostics (#22324, #22514, #22310, #22725, @stelfrag; #22666, @jmestwa-coder)
  • Fixed page-cache races in pgc_page_add and pgc_queue_del, a deadlock on dimension creation, and a crash on virtual node takeover (#22466, #22400, #22417, @stelfrag)
  • Validated data loaded from SQLite to prevent crashes on corrupted databases, and improved UUID handling and error reporting in SQLite functions (#22679, #22233, @stelfrag)
  • Kept chart indexes allocated while a host is archived and guarded against a null root index in chart lookups, avoiding null dereferences during queries (#23074, #23056, @stelfrag)
  • Fixed an rrdcontext metadata leak on non-dbengine hosts (#22438, @stelfrag)
  • Rotated the active datafile and requeued the pending extent on unrecoverable write errors, so a failing disk no longer stalls the database engine (#23048, @ktsaou)

Streaming and replication

  • Tracked and accounted memory allocation size in replication queries, and fixed a sender replication counter leak on obsolete charts (#22756, #22428, @stelfrag)
  • Rejected oversized ZSTD frames and handled decompression errors gracefully (log and fail the connection instead of fatal()) (#22830, @stelfrag)
  • Fixed the streaming receiver discarding already-delivered data when a child disconnects (#23118, @ktsaou)

Cloud connectivity (ACLK)

  • Prevented rare unbounded one-core CPU spins in the cloud-connection loops, and avoided returning an uninitialized packet_id on publish failure (#22879, @ktsaou; #22504, @stelfrag)

Alerts and machine learning

  • Bounded the alert notification execution wait so a stuck notification script cannot block progress, and fixed a shutdown race when restoring alert information from the database (#22626, #22448, @stelfrag)
  • Added safeguards against ML database corruption and streamlined the recovery process (#22478, @stelfrag)

Collectors

  • Fixed systemd-journal.plugin memory retention after queries and its apps.plugin accounting (#23089, @ktsaou)
  • Fixed file descriptor accounting in apps.plugin (adding nfds monitoring) and eBPF FD PID map iteration (#22447, @arch-yunus; #22436, @stelfrag)
  • Fixed buffer overflows and counter-size issues in platform collectors: a stack buffer overflow in macOS mach_smi, FreeBSD counter size mismatches and an off-by-one in freebsd_ipfw and the claim code, and a freeipmi.plugin watchdog underflow at low system uptime (#22553, @artem; #23044, @DavidMarec; #22710, @vkalintiris; #22490, @ktsaou)
  • Fixed Windows Events row rendering crashes with stricter size checks, safer XML parsing, and robust variant handling (#22872, @ktsaou)
  • Restored stable temperature and power collection in go.d/nvidia_smi with NVIDIA driver 580 XML output variants (#23047, @copilot-swe-agent)
  • Fixed Windows hardware detection so virtual machines are no longer reported as bare metal (#22942, @thiagoftsm)
  • Moved the fail2ban socket path into ndsudo for go.d/fail2ban (#22745, @ilyam8)
  • Fixed a pluginsd cleanup race with an active collector, added a slot bounds check to the pluginsd parser, and initialized mountpoint state before the slow worker in the diskspace plugin (#22207, #22598, #22298, @stelfrag)

Security and API

  • The /api/v3/settings endpoint is now gated behind HTTP_ACL_DASHBOARD instead of HTTP_ACL_NOCHECK, enforcing connection allowlists and blocking anonymous state-changing requests (#22896, @stelfrag)
  • Fixed the csvjsonarray output format emitting invalid JSON when label-quotes is passed (#23115, @ktsaou)

Core stability and memory safety

Installation and packaging

  • Windows: fixed MSI installer issues, adjusted the installer to run claiming only when both the token and rooms are provided (with safer wide-character handling and a capped HTTP claim response size), and fixed the search for Visual Studio tooling to check for multiple versions (#22751, #22754, @thiagoftsm; #22723, @Ferroin)
  • Improved error handling in netdata-updater when fetching files and silenced curl output (#22422, @Ferroin; #22639, @AJCxZ0)

Support options

As we grow, we stay committed to providing the best support ever seen from an open-source solution. Should you encounter an issue with any of the changes made in this release or any feature in the Netdata Agent, feel free to contact us through one of the following channels:

  • Netdata Learn: Find documentation, guides, and reference material for monitoring and troubleshooting your systems with Netdata.
  • GitHub Issues: Make use of the Netdata repository to report bugs or open a new feature request.
  • GitHub Discussions: Join the conversation around the Netdata development process and be a part of it.
  • Community Forums: Visit the Community Forums and contribute to the collaborative knowledge base.
  • Discord Server: Jump into the Netdata Discord and hang out with like-minded sysadmins, DevOps, SREs, and other troubleshooters. More than 2000 engineers are already using it!