SongKong 12.5 Mirrored is released on 14th of May 20206
This releases on improving the robustness of SongKong.
Memory Usage
As SongKong processes songs the interim results are written to its own database rather than held in memory, this means memory usage does not increase as more songs are processed. However, there are occasions where memory spikes can cause temporarily increases in memory use and this can sometimes cause an OutOfMemory error, this is most likely to occur when checking box set releases. A Box set such as Mozarts New Complete Edition has 200 discs and therefore is almost 200 times larger than a single album release and loading this release requires considerably more memory. If we are checking aginst multiple box set releases at the same time the problem intensifies. So we have made a considerable number of improvements to memory usage detailed in SONGKONG-2966
Caches
SongKong stores details of your songs in its own database, but it stores releases downloaded from Musicbrainz and Disocgs in a cache. The cache consists of a memory cache for the most recently used releases and a disk cache used when the memory cache is full. Previously Empty Database would empty the database and the cache. But now we have added a new Empty Cache option for just emptying the cache and Empty Database only empties the database.
Docker Build
Previously the docker version required you to mount your songs under the /music mount point, if they were not put under the /music mount they were not visible to SongKong. Now we have relaxed this requirement so anything mounted under the virtual / is visible. This allows you to consistently mount your music to the same virtual mount point for all docker containers, and makes it easy to mount multiple music volumes.
MacOS File Locations
Previously the cache and database was stored in ~Library:Preferences, this was incorrect and they have now been moved to ~Library:Application Support. Reports and Logs have also been moved to ~Library:Application Support so now everything is in either ~Library:Preferences or
~Library:Application Support - see here for more details.
Improvement
SONGKONG-1219 Preemptive monitoring to protect against MemoryError when reading images
SONGKONG-1726 Add Empty Cache option
SONGKONG-2068 Ehcache, optimize lookups
SONGKONG-2543 Docker, show whole found system instead of mounting at /music
SONGKONG-2892 Cache should be in own folder not within the database folder
SONGKONG-2926 Boost Score if potential match has a match between catalogno and existing catlogno song metadata.filename
SONGKONG-2964 Revisit Memory Settings
SONGKONG-2968 On MacOS the Database should be stored in Library:Application Support not Library:Preferences
SONGKONG-2969 On MacOS Better for Reports and Logs to all be stored under Application Support not Logs or Reports
Bug
SONGKONG-2372 Database session can expire for SongSaver can take a while to save songs
SONGKONG-2962 Ensure song list is always empty rather null
SONGKONG-2963 Make SongSaver Queue Bounded
SONGKONG-2966 Better Memory Usage and OutOfMemory Handling