Hey Everyone,
In this Early Access release, we continue to improve application performance across the board, with a focus on search speed and memory efficiency — particularly in areas where duplicate caches were quietly working against you when browsing content and search engine indexing. The result should be a noticeably smoother and more responsive experience across your devices. This is a large step forward for us, so the Roon version was upgraded straight to 2.70 from 2.67 to reflect this.
Search performance improvements
In this release, we switched the library search backend from our in-house index implementation to Tantivy, a fast, Rust-based full-text search engine library. For users with larger libraries, especially, the difference should be immediately apparent.
We expect this to:
- Dramatically reduce very slow searches, particularly if your library is over ~25k tracks.
- Reduce RoonServer’s settled memory usage, especially for larger libraries.
Memory optimisations
We’ve replaced the internal data structure responsible for keeping your library’s browsing views sorted — by artist, album, date added, and so on — along with a fundamentally different approach to maintaining sort order as your library changes.
The previous implementation had a memory and processing leak that grew over time, accelerating with metadata changes and compounding further with the use of browse views and smart playlists.
On top of that, browsing sessions with identical properties were being duplicated across client connections rather than shared — meaning that anything modifying database state (ARC syncs, playback, adding tracks, editing albums) could drag down the whole system while it worked through the update.
The new approach doesn’t suffer from either of these problems. Memory and processing overhead stay proportional to library size rather than creeping up over time. Initial browsing and maintenance runs are substantially faster, and the system remains usable during maintenance. The experience should no longer degrade over time due to edits or upkeep.
Bug fixes for ARC
We’ve also addressed problems in ARC where tracks filtered by tags weren’t displaying correctly, a problem with synced lyrics, and other minor bug fixes.
As always, thanks for the reports and feedback – they go a long way.
The Team at Roon Labs
Build Numbers
| Application | Build |
|---|---|
| Roon / RoonServer | 2.70 (build 1663) earlyaccess |
| Roon Remote (iOS / Android) | 2.70 (build 1663) earlyaccess |
| Roon ARC | 1.80 (build 415) earlyaccess |
Changes
- Optimized behavior when duplicate caches increased memory usage when multiple remotes viewed the same sorted content
- Switched to Tantivy, a fast, Rust-based full-text search engine library
- Fixed an issue where ARC did not display tracks filtered by tags created for entire albums or playlists
- Fixed a bug where the composers list failed to update when toggling ‘Classical only’ in the Composers browser
- Fixed an issue where the Lyrics button was disabled for local tracks with synced lyrics
- Fixed an issue where genre images were cut off on both sides in Roon ARC
Installation
| macOS | Roon | |
| Windows | Roon | |
| Linux † | Easy Installer | Full Package |
| Nucleus / ROCK | See Help Center | |
| Android APKs | Roon | Roon ARC |
† Information on loading Roon on Linux can be found here. Please use the files linked here in place of those from the help center article when loading earlyaccess.