1.8 build 884 - "There was an issue loading your database" after Roon relaunch

The ability to restore what appears to be a non-stable backup has always struck me as odd.

I think the loops driving the corruption are below. Time to go digging into the library text files…

01/05 15:43:47 Critical: Library.EndMutation: System.Collections.Generic.KeyNotFoundException: work not found: 174:1:3f2d5ada-ccb0-40ea-94ac-b47421b50ed2
  at Sooloos.Broker.Metadata.Context.GetWorkLite (System.Sooid workid) [0x00068] in <43022fa7e52b41e78fcc13e5473c7694>:0 
  at Sooloos.Broker.Metadata.Context.GetWorkLite (System.Sooid workid) [0x00008] in <43022fa7e52b41e78fcc13e5473c7694>:0 
  at Sooloos.Broker.Metadata.MetadataPerformanceLite._Load (Sooloos.Broker.Metadata.Context metacx, Roon.ServiceProxies.MetadataService2.Performance performance) [0x0000d] in <43022fa7e52b41e78fcc13e5473c7694>:0 
  at Sooloos.Broker.Metadata.MetadataPerformanceLite..ctor (Sooloos.Broker.Metadata.Context metacx, Roon.ServiceProxies.MetadataService2.Performance performance) [0x00028] in <43022fa7e52b41e78fcc13e5473c7694>:0 
  at Sooloos.Broker.Metadata.Context.GetOrCreatePerformanceLite (Roon.ServiceProxies.MetadataService2.Performance performance, System.Nullable`1[T] timestamp) [0x0003c] in <43022fa7e52b41e78fcc13e5473c7694>:0 
  at Sooloos.Broker.Metadata.Context.GetPerformanceLite (System.Sooid performanceid) [0x00033] in <43022fa7e52b41e78fcc13e5473c7694>:0 
  at Sooloos.Broker.Metadata.MetadataTrackLite._Load (Sooloos.Broker.Metadata.Context metacx, Roon.ServiceProxies.MetadataService2.Track track) [0x000df] in <43022fa7e52b41e78fcc13e5473c7694>:0 
  at Sooloos.Broker.Metadata.MetadataTrackLite..ctor (Sooloos.Broker.Metadata.Context metacx, Roon.ServiceProxies.MetadataService2.Track track) [0x00034] in <43022fa7e52b41e78fcc13e5473c7694>:0 
  at Sooloos.Broker.Metadata.Context.GetOrCreateTrackLite (Roon.ServiceProxies.MetadataService2.Track track, System.Nullable`1[T] timestamp) [0x000ae] in <43022fa7e52b41e78fcc13e5473c7694>:0 
  at Sooloos.Broker.Metadata.Module.GetCachedTrackLite (System.Sooid mediasooid, System.Nullable`1[T] max_age) [0x00036] in <43022fa7e52b41e78fcc13e5473c7694>:0 
  at Sooloos.Broker.Metadata.Module.GetCachedTrackLite (System.Int64 mediaid, System.Nullable`1[T] max_age) [0x00007] in <43022fa7e52b41e78fcc13e5473c7694>:0 
  at Sooloos.Broker.Music.Library.TryGetPlay (Sooloos.Broker.Music.Play play, Sooloos.Broker.Music.LibraryPlay& libraryplay, System.Collections.Generic.Dictionary`2[TKey,TValue] cache) [0x00120] in <43022fa7e52b41e78fcc13e5473c7694>:0 
  at Sooloos.Broker.Music.LibraryProfileHistory.EnsurePlaysLoaded (System.Collections.Generic.Dictionary`2[TKey,TValue] cache) [0x000b2] in <43022fa7e52b41e78fcc13e5473c7694>:0 
  at Sooloos.Broker.Music.Library.InitialLoadProfileHistory () [0x00066] in <43022fa7e52b41e78fcc13e5473c7694>:0 
  at Sooloos.Broker.Music.LibraryMutationEnv.Finish () [0x01d8d] in <43022fa7e52b41e78fcc13e5473c7694>:0 
  at Sooloos.Broker.Music.Library.EndMutation () [0x00068] in <43022fa7e52b41e78fcc13e5473c7694>:0