Clients suddenly unable to connect to server

Core Machine (Operating system/System info/Roon build number)

Ubuntu 18.04 running Roon server
Roon build 505

XigmaNAS 12.0.0.4.6928 for storing music files used by Roon

Network Details (Including networking gear model/manufacturer and if on WiFi/Ethernet)

Hardwired networking between the Roon core and the NAS. There’s just a Ubiquiti Switch 16-POE 150W switch in between the Roon core and the XigmaNAS host. The Ubuntu machine has an Intel 82579V chipset with onboard ethernet, and the XigmaNAS machine has a Broadcom NetXtreme BCM5723 chipset with onboard ethernet.

The wireless is provided by Ubiquiti AC HD access points, with the clients I’ve tested so far being a late 2013 Macbook pro running macOS 10.15.2 and a Google Pixel 3 XL running the November 5, 2019 patch of Android 10.

Audio Devices (Specify what device you’re using and its connection type - USB/HDMI/etc.)

The above Mac and Android devices, plus a hardwired Odroid C2 running the Roon bridge software on DietPi.

Description Of Issue

Earlier today, playback in Roon froze, so I restarted the Roon server service on my Linux host. Ever since then, my clients haven’t been able to connect, and just sit alternating between showing the Roon logo and a message about it taking longer than usual to connect to the core. I tried rebooting my server just in case, but that didn’t have any effect. So, I can’t actually do anything in Roon at this point.

I don’t see anything that obviously looks connected in the logs, but I’d be happy to provide them.

I kept an eye on my logs, and I did find a couple of things that stuck out as odd. I’m seeing some lines about my SMB and NFS mounts being skipped “because it is not a /dev/sd[0-9]*”, followed by some lines of “Warn: [linuxmount/pinfo] coudn’t ascertain disk block device from” for the same mounts.

Unfortunately, my logs have all cycled because Roon is apparently repeatedly attempting to re-run its startup routines, so I don’t have any past about 15 minutes ago in order to see whether these entries happened before.

This sounds remarkably similar to RoonServer starting, running, error, restart and so on, especially since I have a Tidal subscription which I let lapse (and disabled in Roon, though I did not remove it), and an ongoing Qobuz subscription which I also have linked to Roon.

Hi @Chris_Gelatt,

It sounds like RoonServer is constantly restarting itself. I have enabled diagnostics on your account so our technical staff can get some more insight into what’s going on here. The next time your Core is active a diagnostics report will automatically be generated and uploaded directly to our servers

Once that’s been received, I’ll be sure to update this thread and pass the diagnostics over to the team for further analysis.


Update — The diagnostics report has been received.

As a test, can you try disconnecting your Core from the network temporarily and let us know if RoonServer continues to run without rebooting after you’ve done so?

Sure, I’ll see what I can do on that. It might take me a couple of days, though, since I run that as a headless server.

Hi @dylan!

I had an idea this morning, and before I disconnected my core from the network entirely and moved it to a spot with a monitor and keyboard, I disabled my Internet connection. So, it still had access to my network and I was still able to SSH into it, but it wasn’t able to reach anything in the outside world.

What I found was that it didn’t exhibit the behavior I saw before. It started and then stayed running. It was also asking me to log in again to verify my license, so I couldn’t actually test whether it was able to play anything, but it at least got that far, which is more than it can with my Internet connection connected.

I tried reconnecting my Internet connection, but Roon still reported a network error when attempting to validate my credentials, and then restarting the Roon service resulted in the same behavior I initially reported here.

Thanks for the update, @Chris_Gelatt!

Can you do this once more and let Roon run for ~10 minutes and then send over logs using the directions found here? You can then share the logs via a shared Dropbox link.

I’ll get those logs to the team for analysis once you’ve done so.

Can you also confirm if you have backups of your Roon database?

Sure! I just sent you a link to the logs I pulled after doing that.

And, yes, I do have backups of my Roon database.

Thanks for confirming and for sending those over, @Chris_Gelatt!

Here’s what I’d like to try next:

  • Stop RoonServer on the Core machine
  • Navigate to your Roon’s Database Location
  • Find the folder that says “RoonServer”
  • Rename the “RoonServer” folder to “RoonServer_old”
  • Restart the RoonServer in the WebUI to generate a new Roon database folder

Let us know if Roon runs okay while using this fresh database.

Yep, no problem @dylan!

I just tried what you suggested here (though I’m on Linux, not ROCK, so no web UI).

Roon was able to start after it generated a new database, though I still receive an error when trying to log in, which says “Network error: Please check your internet connection”. My connection is up, and I can use curl from the same host to successfully call https://accounts5.roonlabs.com/accounts/3/login (which is what it looks like the logs say it’s calling for logging in), so I’m not sure what’s going on there.

Actually, after trying to log in, it seems to be continually restarting again. I’m seeing the same thing in the logs that I was before, and my remote on my Mac isn’t able to connect to it any more.

Thanks for the update, @Chris_Gelatt.

Can you please use the directions found here and send us over a set of logs using a shared Dropbox link?

Sure, @dylan!

I just sent you a link to a fresh set that was created by deleting the RoonServer directory, letting Roon create a new one as it was started back up, and then attempting to log in.

I also just tried moving /opt/RoonServer to /opt/RoonServer_old, doing a fresh install of build 511, deleting my database again, and starting it back up, and I’m seeing the same behavior (logging in fails, followed by repeated restarts).

Hi @Chris_Gelatt,

Besides Roon, what else is this machine used for?

Is it running a firewall or anything that might be interfering with Roon’s connection?

Hi @dylan!

It’s used for a few other things (primarily Bliss, Plex, Jellyfin, and Nextcloud), but I don’t have any outbound restrictions on it, either on the machine itself, or on my pfSense box. And, like I said, I can use curl from it to reach the endpoint that Roon appears to be calling to log in:

xbmc@hostname:~$ curl ‘https://accounts5.roonlabs.com/accounts/3/login
{“status”:“InvalidRequest”}xbmc@hostname:~$

I can get successful connections to the rest of the endpoints listed in the logs as well, and the logs do show that they succeed. Just . . . when I try to log in there with a fresh database, I get a failure error in the UI, and then Roon starts restarting.

Thanks for confirming, @Chris_Gelatt.

As a test, if you temporarily stop Plex, do you still experience this issue? In the past we’ve seen some issues with Plex and Roon running on the same machine so it would be good to know if that results in any change.

No problem, @dylan.

I tried stopping Plex, but it didn’t change anything in Roon’s behavior. It did, however, point me in the right direction. I also stopped everything else on my server that’s not part of a regular Linux distribution, and not related to Roon, and Roon started working. So, I enabled things one by one, until I found out what was causing the behavior I was seeing.

I narrowed it down to Jellyfin, which is a recent, but not super recent, addition to what I’m running on my server. For whatever reason, if Jellyfin is running, and Roon attempts to start, it goes into that cycle of restarting. If Roon is already running, though, it stays running.

I’m not sure why Roon suddenly stopped playing something back while I was listening to something, but this is at least consistent. I don’t know whether that’s anything that your dev team wants to look into to see whether there’s a workaround, but either way, I’ll file a bug with the Jellyfin folks in case there’s something they can do. In the meantime, I’m just going to leave Jellyfin disabled and stick with Plex for video.

I’ve never had two processes interact like this before, but I suppose it’s one more reason to get around to building a ROCK.

Thanks for your help tracking this down. I’m glad I have Roon back up and running!

I filed https://github.com/jellyfin/jellyfin/issues/2188 with the Jellyfin team for this. I don’t know whether they’ll end up wanting to look into it, but hopefully one way or another, things can get sorted.

Hi @Chris_Gelatt,

I’m glad that things are working for you now! I’ve passed this solution along to the team to see if they have any further comments. In the meantime, please feel free to reach out if you ever have any other questions or issues. Happy listening :headphones: