Devices not showing in Zone picker but enabled in settings > audio

I actually wasn’t affected by this problem, my zones were fine after the 1.8 release. However I just applied the update (1.8 build 763) on the core and now all my zones are hosed. It says “no audio devices found” with “Manage audio devices” button. Of course they’re all there and all enabled in the manage devices settings page, but can’t be used.

The exception being logged several times per second is:

02/23 17:08:54 Debug: NotifyCorruptZoneDatabases Exception LevelDb.Exception: IO error: C:\Users\ockers\AppData\Local\Roon\Database\Core\1309f473b5a443dcab7929109db394b8\transport\zone_16017ff0d69cef860842b7914e4e57e258c8.db\MANIFEST-000143: The handle is invalid.

   at LevelDb.Database._CheckError(IntPtr err)
   at LevelDb.Database..ctor(String path)
   at Sooloos.Broker.Transport.ZoneDb..ctor(String dbpath)
   at Sooloos.Broker.Transport.Zone..ctor(State state, Module module, Sooid zoneid, IEnumerable`1 endpoints)
02/23 17:08:54 Error: [transport] emptying out corrupt zone database 22:1:9cd6f07f-86ef-4208-b791-4e4e57e258c8
02/23 17:08:54 Critical: scx: in OnExit: System.NullReferenceException: Object reference not set to an instance of an object.
   at Sooloos.Broker.Transport.Zone._CancelPendingSleep()
   at Sooloos.Broker.Transport.Module.NotifyCorruptZoneDatabases(IZone zone, Exception e)
   at Sooloos.Broker.Transport.Zone..ctor(State state, Module module, Sooid zoneid, IEnumerable`1 endpoints)
   at Sooloos.Broker.Transport.Module.ev_threadexit()
   at Sooloos.SynchronizationContextThread.OnExit()

Same thing going on here for one of my DietPi endpoints. I didn’t see database errors in the logs.

but

Screen Shot 2021-02-24 at 9.02.25 AM

Hi @James_Ockers

So we can better assist you, please provide a brief description of your current setup using this link as a guide.

Make sure to describe your network configuration/topology, including any networking hardware currently in use, so we can have a clear understanding of how your devices are communicating.

After a reboot of the Core machine do the devices return?

Would you be willing or able to try RoPieee? I have 11 endpoints and all are there with no issues. Four of them are RPi4 using RoPieeeXL.

EDIT: I see Dylan is here. He’ll figure it out.

Hi Dylan,

Thank you for following up.

I have a Windows 10 Roon core connected via ethernet cable to a gigabit switch. I have 4 “[zoneplayer/raat] Endpoint snd_rpi_hifiberry_dac” raspberry pi based zones, one connected via cable to the same gigabit switch and 3 others on 5GHz wifi. I use mac and Android Roon remotes. There are no network issues.

I followed the previous instructions for renaming the Roon directory to Roon.bak and reinstall Roon and re-enable all zones. It’s annoying to lose the system config and database each time. Having reinstalled and started over with a new database, all zones are enabled working fine. I enjoyed listening to music most of yesterday evening.

Because reinstalling with new database fixed the issue, I’m pretty sure this is 100% a Roon database problem and nothing to do with my setup. I was hoping your teams could figure out what was wrong from the exception I pasted from the log.

Thanks
Jim

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.

Hi @James_Ockers

Apologies for the delay! Our team’s queue is longer than typical at the moment, but we’re working to get back to everyone as quickly as we can.

I’m glad to hear that you managed to get things up and running. If you restore a backup from before this issue occurred do things work for you?

Hi Dylan,

Thank you for following up. My approach to Roon is that I mostly want to listen to music, not fiddle with the database and restoring from backups etc. Same reason I ride Japanese motorcycles instead of a Harley - I mostly just want to ride without as much risk of having to work on it. Since it’s working OK I’ll leave it at that.

Besides getting my music working again, my other goal was to provide enough debugging information that Roon Labs’ software engineers should be able to find and fix the problem which led to the database corruption.

Thanks,
Jim

Hi Dylan,

Wow it did it again. Here are some more logs to help your software engineers debug the issue: Paste.ee - Roon

What you see in the logs is the tail end of some hours or days of scrolling the same error message and exception about NotifyCorruptZoneDatabases Exception LevelDb.Exception. There should have been no reason for the zone database to get corrupt; everything has been powered on and working fine and no network issues. Using a MacOS roon remote, I went into Settings → Audio and disabled all 3 of the snd_rpi_hifiberry zones, and it logged cancel and success messages.

Then I clicked the “enable” button for one of the zones, and it logged that it was creating the endpoint etc. and then immediately started logging the NotifyCorruptZoneDatabases Exception again, ad infinitum. The end of the log shows what happened when I disabled the zone again.

This is kind of not OK, it’s requiring a lot of work and hours to try to keep my zones working in Roon. I can’t really use it like this. May you please have your database programmer people make the database access for zones more robust? Maybe introduce some parity bits or checksums or something and maybe a database repair function or something too.

Thanks
Jim