v4.20.6
silvia-odwyer/photonv4.20.6Sep 16, 2026by dudizimber
Upgrading?
AI Summary
This release focuses on correcting critical bugs in graph traversal aggregation and index population logic. It fixes an issue where `count(*)` under-reported parallel edges and resolves index population stability issues caused by unsynced delta matrices.
Key Highlights
- Fixed `count(*)` returning incorrect results for parallel edges by preserving entity multiplicity in aggregation queries.
- Resolved index population hanging or permanently skipping rows caused by unsynced delta-plus entries.
- Improved batch resume safety in index population by merging main matrix and delta-plus in strict row-major order.
- Reduced write stall time between edge batches from ~1.5s to ~5ms during index population.
Full Release Notes
🐛 Bug fixes `count(*)` under-counted parallel edges `MATCH (a)-[e]->(b) RETURN count(*)` returned 1 instead of 3 for three parallel edges. Because `count(*)` references no entity, the edge alias was left unreferenced, the algebraic expression dropped the edge, and the traversal emitted a single record per (src, dest) pair — collapsing parallel edges and under-counting. The reference-map builder now detects a star aggregation and keeps the pattern's named entities referenced so their multiplicity is preserved (scoped to user aliases and * projections only; plan-cache safe). - PR: #2660 Index population could skip rows or hang on unsynced delta matrices When a label or relation matrix held unsynced delta-plus entries, index population resumed batched scans at [last_row, MAX) while the iterators drained the main matrix before yielding delta-plus — permanently skipping delta-plus rows below the resume point (nodes), and spinning forever re-scanning the same range (edges, once a masking tautology was removed). Population now merges the main matrix and delta-plus in strict row-major order, making batch resume safe. Also releases the read lock between edge batches (~1.5s write stall on 1M edges → ~5ms). - PR: #2812 - Fixes: #2811 **Full Changelog**: https://github.com/FalkorDB/FalkorDB/compare/v4.20.4...v4.20.5
Related Repositories
A cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Grok Build & Hermes Agent. Only official website: ccswitch.io
An open-source remote desktop application designed for self-hosting, as an alternative to TeamViewer.
Build smaller, faster, and more secure desktop and mobile applications with a web frontend.
π RuView turns commodity WiFi signals into real-time spatial intelligence, vital sign monitoring, and presence detection — all without a single pixel of video.
Incredibly fast JavaScript runtime, bundler, test runner, and package manager – all in one