Apache Druid
Druid 38 drops Java 17, recommends Java 25 and took longer to arrive than its predecessors
A side-by-side editorial comparison of Jaeger and runc — release velocity, themes, recent moves, and the top alternatives to consider.
Jaeger's query service learns to search individual spans, not just whole traces.
Jaeger 2.21 and 2.22 extend the 2.x storage and query rework. ClickHouse storage moved to a stable feature gate in 2.21, and the release removed v1 HTTP endpoints the UI no longer calls. In 2.22 the query service gains FindSpans with RFC 0014 pagination, Elasticsearch span search, and structured filters promoted to beta, while native Elasticsearch trace summaries go stable.
runc 1.6.0-rc.1 lifts the 1024-CPU limit and refuses settings it used to quietly ignore
The 1.6.0 cycle opened on October 6 with a first release candidate that is mostly cleanup: deprecated libcontainer APIs removed, Go 1.26 now required, urfave/cli moved from v1 to v3, and the binary about 15% smaller on amd64. The changes with operational weight are that cpuAffinity and NUMA memoryPolicy no longer stop at 1024 CPUs or nodes, and that a container asking for a read-only rootfs without its own mount namespace is now refused. Eleven days earlier 1.5.2 worked around a kernel bug, present since v6.17, that corrupted memory inside runc and caused random crashes on cgroup v2. It also stopped runc exec --cgroup from escaping into a sibling cgroup.
Jaeger 2.21 and 2.22 extend the 2.x storage and query rework. ClickHouse storage moved to a stable feature gate in 2.21, and the release removed v1 HTTP endpoints the UI no longer calls. In 2.22 the query service gains FindSpans with RFC 0014 pagination, Elasticsearch span search, and structured filters promoted to beta, while native Elasticsearch trace summaries go stable.
The earlier trace-summaries work made search cheaper; span search changes what can be asked. Pagination and structured filters give both the UI and MCP clients a way to query without pulling whole traces. MCP keeps getting practical limits and input checks, and search_traces no longer needs a service name on backends that declare support for that.
Expect span search to spread beyond Elasticsearch and memory storage, and structured filters to move from beta to stable as other gates have. Further removal of v1 surface is likely, since 2.21 already started it.
The 1.6.0 cycle opened on October 6 with a first release candidate that is mostly cleanup: deprecated libcontainer APIs removed, Go 1.26 now required, urfave/cli moved from v1 to v3, and the binary about 15% smaller on amd64. The changes with operational weight are that cpuAffinity and NUMA memoryPolicy no longer stop at 1024 CPUs or nodes, and that a container asking for a read-only rootfs without its own mount namespace is now refused. Eleven days earlier 1.5.2 worked around a kernel bug, present since v6.17, that corrupted memory inside runc and caused random crashes on cgroup v2. It also stopped runc exec --cgroup from escaping into a sibling cgroup.
The project keeps converting silent behaviour into explicit behaviour. Read-only requests that were ignored now fail, a umask that was dropped is now honoured, and poststart hooks moved to conform to the runtime spec. The same maintainers are shrinking the surface underneath, dropping the deprecated API and the high-level cilium/ebpf path, which took roughly 7.5% off the 1.5.2 binary. Stricter behaviour plus a smaller dependency set is what a component under every container host would be expected to do between majors.
1.5.0's notes pointed to a 1.6.0 in late October 2026, and the feed so far shows only rc.1, so further release candidates or the final are the next entries to expect. The refused read-only configurations are the change most likely to surface as user reports during testing.
Other Infra & APIs products tracked by Sparkpulse, ranked by recent ship velocity. Each card links to a full editorial trajectory and lets you pivot into a head-to-head comparison with either Jaeger or runc.
Druid 38 drops Java 17, recommends Java 25 and took longer to arrive than its predecessors
Okta adds TypeScript to its Cross App Access guides and dates the end of Classic Engine features
Harness Open Source last shipped in August 2025, on this feed at least
Payload's v4 beta ships every few days, and most of the risk sits in the breaking-change notes
Scalar is testing demand for hosting from inside localhost
Incus 7.6 fixes 18 security issues, eight critical, and adds SR-IOV NIC live migration
Latest ship moves from both products, interleaved chronologically. ⚡ = editorial spark.
They serve adjacent needs but don't currently overlap on shipped themes. Jaeger and runc are shipping at a similar cadence (velocity 2.5 vs 2.5, both within Sparkpulse's "active" band). See the at-a-glance table above for a side-by-side breakdown of velocity, recent sparks, and editorial themes.
Sparkpulse doesn't pick a winner — we score release velocity, not feature parity. Jaeger and runc are shipping at a similar cadence (velocity 2.5 vs 2.5, both within Sparkpulse's "active" band). For your specific use case, the alternatives sections above list other Infra & APIs products to evaluate alongside.
Top Jaeger alternatives in Infra & APIs are ranked by recent ship velocity. Browse the "Jaeger alternatives" section above for the current picks, or visit /alternatives/jaeger for the full list with editorial commentary on each.
Top runc alternatives in Infra & APIs are ranked by recent ship velocity. Browse the "runc alternatives" section above for the current picks, or visit /alternatives/runc for the full list with editorial commentary on each.