QNAP Roon Server Memory leak?


(Dan Crane) #1

I’m finding I have to randomly kill the RoonAppliance process as it’s chewed up all my RAM on the NAS and slowing it down to unusable.

13369 6989 admin S 32049m106.4 1 21.6 /share/CACHEDEV3_DATA/.qpkg/RoonServer/RoonServer/RoonMono/bin/RoonAppliance --debug --gc=sgen --server RoonAppliance.exe -watchdogport=43938

As you can see from this line using “top” it’s using all of my 32G on ram (it took 10mins to SSH into the box).

It’s a TVS-873, with the Roon app and its DB running on it’s own SSD (1% usage).

Any tips?


QNAP running out of memory
(Noris) #3

Hello @InfoAddict,

Can you please post a screenshot of your QNAP’s WebUI Memory/CPU consumption if this issue occurs again? Was this the first time that this issue has occurred or has it happened before? Since restarting the RoonApplicance process does the RAM usage seem to have stabilized? Please let me know when possible.

Thanks,
Noris


(Mark) #4

Hi guys

I still get this from on my QNAP (8GB RAM) from time to time too. I just gave up on reporting it.

It seems to be version independent, although I can recall there have been previous Roon builds that don’t seem to suffer from it

Roon starts up using about 1.4GB, and gradually saturates the RAM until I have to restart the process. There seem to be occasions where Roon self-regulates - I’ve seen it drop from around 3GB usage back down to startup levels with no interaction from me, but this rarely happens and usually a manual restart is the only recourse.

Feel free to access my logs @noris, I think you used them investigating the Tidal issue.


(Noris) #5

@browellm, can you please let me know the time and date when this issue occurs again for you? Diagnostics mode has since been disabled for your account and I would need to re-enable it and have timestamps & a screenshot of your WebUi’s Memory usage as to properly file a report here.

@InfoAddict, if you are able to reproduce this issue again, timestamps & screenshots of the WebUI’s Memory usage will help us here as well and I can then go and enable diagnostics mode as well.

Please let me know the above information if this issue occurs again.

Thanks,
Noris


(Mark) #6

Will do noris. I updated QTS firmware this weekend so Roon memory usage is currently sitting low at around 1.2GB. If/when it heads towards 3GB+ I’ll update.


(Dan Crane) #7

Sorry for the late reply - life.

Thanks for the suggestions. I had the same firmware update so thought I’d just wait and see if that fixes things - apparently not as I had the same problem today. My current thought process is that when I update the roon core via the in-built update process (Win32 client in my case) and it obviously updates and restarts the QNAP core, perhaps after that we start to see problems. I had it running fine for ages until the latest update that I applied a day or so ago (for the airplay2 compatibility). Then 2 days later - 32gigs gone.

Just an idea. Perhaps I need to manually restart roon via the QNAP interface post update.


(Noris) #8

Hello @InfoAddict,

Thank you for letting me know that this issue has surfaced again. I can confirm that the diagnostics from your machine has successfully reached our servers and I have started a case for you with our QA team who will take a closer look at the diagnostics.

I don’t foresee any issues with rebooting your QNAP you can go ahead and do so just to make sure that everything is in a fresh state after the update. I appreciate your patience while while QA reviews your case and I will be sure to let you know once they have provided me some feedback regarding this issue.

Thanks,
Noris


(Dan Crane) #9

Excellent - love your work.

If there is anything the QA team need me to do, just let me know (I’m comfortable getting into the SSH level).


(Noris) #10

Hello @InfoAddict,

Thank you for your patience here while your case has been looked over by QA. They have suggested we continue with the following steps, can you please provide:

  • A list of all of the Zones that you have and the model/manufacturer for each zone
  • The connection type for all of your Zones (USB/Ethernet/HDMI/ect.)
  • If this issue occurs again, try disabling your zones one by one and see if that has an impact on the RAM usage
  • Note the exact time that this issue occurs again and the exact time in which you have disabled the zones one by one and if the RAM usage decreases - which zone caused it to decrease

Please provide the above information when possible and then I can get a new set of diagnostics over to QA.

Thanks,
Noris


(Dan Crane) #11

I have an AppleTV3, 5 and 6 (6 being the 4K) - all connected via wifi.
An Apple Homepod - wifi (havent used yet).
My Denon amp X6400 via airplay (ETH).

I also have a chromecast ultra and a Nvidia shield via ETH (Chromecast).

Finally, the mainly used device is an Intel NUC running windows 10 with a Roon Bridge install for audio output (WASPI exclusive) and I auto-run a FireFox browser as a display connection for visuals/lyrics/etc.

The NUC and the ATV3 are the most used items. I’m happy to start disabling one by one the others to see if that changes things - but its fine now so ill do that if I see a problem.


(Noris) #12

Hello @InfoAddict,

Thanks for confirming that information for me. Please let me know if the issue occurs again and the following information as well:

  • Issue’s time of occurrence
  • If disabling any of the zones lowered the CPU consumption
  • If disabling the display zone on Firefox lowered the CPU consumption
  • Timestamp for after disabling these audio zones/display zones and if there is a change in CPU usage

Thanks,
Noris


(Christopher Rieke) #13

Hi Dan,
could you do the following: Please stop RoonServer, download this (empty) textfile and place it on your chosen RoonServer database location. (It should be on the same directory level as the RoonServer and RAATServer folders, but not in one of those folders :wink: )

Then start RoonServer again, until you notice that RoonServer is eating up all your resources again. Stop RoonServer and send me the content of the txt file. RoonServer should have written some info to the txt file…


(Dan Crane) #14

Done. It’s writing properly to the file :

05.12.18-09:27:42 — Starting RoonServer …
05.12.18-09:27:42 — ROON_DATABASE_DIR: /share/Roon
05.12.18-09:27:42 — ROON_DIR: /share/CACHEDEV3_DATA/.qpkg/RoonServer
05.12.18-09:27:42 — Model: TVS-873

etc.

Will let you know.


(Dan Crane) #15

Just tried to run it for the first time in a day or so and it said there were no audio zones - checked settings and they are all gone. No displays either. And no front page.

Logs said this:

05.12.18-23:57:56 — Cannot transition thread 0x7fce32d6f700 from RUNNING with FINISH_ASYNC_SUSPEND
05.12.18-23:57:56 — Error
05.12.18-23:57:58 — Initializing
05.12.18-23:57:58 — Started
05.12.18-23:57:58 — Not responding
05.12.18-23:58:03 — Running

Restarting.


(Dan Crane) #18

Latest crash logs:

10.12.18-14:30:14 — Starting RoonServer …
10.12.18-14:30:14 — ROON_DATABASE_DIR: /share/Roon
10.12.18-14:30:14 — ROON_DIR: /share/CACHEDEV3_DATA/.qpkg/RoonServer
10.12.18-14:30:14 — Model: TVS-873
10.12.18-14:30:14 — Architecture: x86_64
10.12.18-14:30:14 — QTS Version: 4.3.6
10.12.18-14:30:14 — PKG Version: 2018-06-14
10.12.18-14:30:14 — Hostname: QNAP-NAS
10.12.18-14:30:14 — MTU: 1500 1500 1500 1500
10.12.18-14:30:14 — Loading additional 64-bit libs: false
10.12.18-14:30:14 — ROON_DEBUG_ARGS:
10.12.18-14:30:14 — RoonServer PID: 20524

########## Installed RoonServer Version ##########
100500363
1.5 (build 363) stable
stable
##################################################

10.12.18-14:30:14 — 00:00:00.001 Trace: [childprocess] using unix child process
10.12.18-14:30:14 — Initializing
10.12.18-14:30:14 — Started
10.12.18-14:30:19 — Running
10.12.18-22:34:14 — Cannot transition thread 0x7f44728e5700 from RUNNING with FINISH_ASYNC_SUSPEND
10.12.18-22:34:14 — Error
10.12.18-22:34:16 — Initializing
10.12.18-22:34:16 — Started
10.12.18-22:34:20 — Running
11.12.18-05:31:12 — Cannot transition thread 0x7f33a9cff700 from RUNNING with FINISH_ASYNC_SUSPEND
11.12.18-05:31:12 — Error
11.12.18-05:31:14 — Initializing
11.12.18-05:31:14 — Started
11.12.18-05:31:19 — Running
11.12.18-05:40:56 — Cannot transition thread 0x7f48fdafe700 from RUNNING with FINISH_ASYNC_SUSPEND
11.12.18-05:40:56 — Error
11.12.18-05:40:58 — Initializing
11.12.18-05:40:58 — Started
11.12.18-05:40:58 — Not responding
11.12.18-05:41:03 — Running
11.12.18-16:22:26 — Cannot transition thread 0x7fdbb5d27700 from RUNNING with FINISH_ASYNC_SUSPEND
11.12.18-16:22:26 — Error
11.12.18-16:22:28 — Initializing
11.12.18-16:22:28 — Started
11.12.18-16:22:30 — Not responding
11.12.18-16:22:35 — Running
12.12.18-17:35:47 — System.Net.Sockets.SocketException (0x80004005): Connection reset by peer
12.12.18-17:35:47 — at System.Net.Sockets.Socket.EndReceive (System.IAsyncResult asyncResult) [0x00012] in <126998f2e5ae42fe95554117eb649feb>:0
12.12.18-17:35:47 — at Sooloos.RnetJsonClient+<>c__DisplayClass65_0.<_BeginRead>b__0 (System.IAsyncResult ar) [0x00046] in <474fc6b46f7646c587f524cda12acaf9>:0
12.12.18-20:08:47 — System.Net.Sockets.SocketException (0x80004005): Connection reset by peer
12.12.18-20:08:47 — at System.Net.Sockets.Socket.EndReceive (System.IAsyncResult asyncResult) [0x00012] in <126998f2e5ae42fe95554117eb649feb>:0
12.12.18-20:08:47 — at Sooloos.RnetJsonClient+<>c__DisplayClass65_0.<_BeginRead>b__0 (System.IAsyncResult ar) [0x00046] in <474fc6b46f7646c587f524cda12acaf9>:0
13.12.18-14:27:43 — System.Net.Sockets.SocketException (0x80004005): Connection reset by peer
13.12.18-14:27:43 — at System.Net.Sockets.Socket.EndReceive (System.IAsyncResult asyncResult) [0x00012] in <126998f2e5ae42fe95554117eb649feb>:0
13.12.18-14:27:43 — at Sooloos.RnetJsonClient+<>c__DisplayClass65_0.<_BeginRead>b__0 (System.IAsyncResult ar) [0x00046] in <474fc6b46f7646c587f524cda12acaf9>:0
21.12.18-21:06:32 — System.Net.Sockets.SocketException (0x80004005): Connection reset by peer
21.12.18-21:06:32 — at System.Net.Sockets.Socket.EndReceive (System.IAsyncResult asyncResult) [0x00012] in <126998f2e5ae42fe95554117eb649feb>:0
21.12.18-21:06:32 — at Sooloos.RnetJsonClient+<>c__DisplayClass65_0.<_BeginRead>b__0 (System.IAsyncResult ar) [0x00046] in <474fc6b46f7646c587f524cda12acaf9>:0
25.12.18-09:28:38 — System.Net.Sockets.SocketException (0x80004005): Connection reset by peer
25.12.18-09:28:38 — at System.Net.Sockets.Socket.EndReceive (System.IAsyncResult asyncResult) [0x00012] in <126998f2e5ae42fe95554117eb649feb>:0
25.12.18-09:28:38 — at Sooloos.RnetJsonClient+<>c__DisplayClass65_0.<_BeginRead>b__0 (System.IAsyncResult ar) [0x00046] in <474fc6b46f7646c587f524cda12acaf9>:0
25.12.18-09:48:05 — System.Net.Sockets.SocketException (0x80004005): Connection reset by peer
25.12.18-09:48:05 — at System.Net.Sockets.Socket.EndReceive (System.IAsyncResult asyncResult) [0x00012] in <126998f2e5ae42fe95554117eb649feb>:0
25.12.18-09:48:05 — at Sooloos.RnetJsonClient+<>c__DisplayClass65_0.<_BeginRead>b__0 (System.IAsyncResult ar) [0x00046] in <474fc6b46f7646c587f524cda12acaf9>:0
25.12.18-10:27:01 — System.Net.Sockets.SocketException (0x80004005): Connection reset by peer
25.12.18-10:27:01 — at System.Net.Sockets.Socket.EndReceive (System.IAsyncResult asyncResult) [0x00012] in <126998f2e5ae42fe95554117eb649feb>:0
25.12.18-10:27:01 — at Sooloos.RnetJsonClient+<>c__DisplayClass65_0.<_BeginRead>b__0 (System.IAsyncResult ar) [0x00046] in <474fc6b46f7646c587f524cda12acaf9>:0
25.12.18-10:34:10 — System.Net.Sockets.SocketException (0x80004005): Connection reset by peer
25.12.18-10:34:10 — at System.Net.Sockets.Socket.EndReceive (System.IAsyncResult asyncResult) [0x00012] in <126998f2e5ae42fe95554117eb649feb>:0
25.12.18-10:34:10 — at Sooloos.RnetJsonClient+<>c__DisplayClass65_0.<_BeginRead>b__0 (System.IAsyncResult ar) [0x00046] in <474fc6b46f7646c587f524cda12acaf9>:0
27.12.18-17:31:40 — System.Net.Sockets.SocketException (0x80004005): Connection reset by peer
27.12.18-17:31:40 — at System.Net.Sockets.Socket.EndReceive (System.IAsyncResult asyncResult) [0x00012] in <126998f2e5ae42fe95554117eb649feb>:0
27.12.18-17:31:40 — at Sooloos.RnetJsonClient+<>c__DisplayClass65_0.<_BeginRead>b__0 (System.IAsyncResult ar) [0x00046] in <474fc6b46f7646c587f524cda12acaf9>:0
31.12.18-16:16:17 — Stopping RoonServer…
31.12.18-16:16:17 — Roon PID to be killed: 20524
31.12.18-16:16:17 — RoonServer has been stopped.


(Mike) #19

Thanks @InfoAddict – we’ll definitely be taking a closer look at this issue after New Years.

Sorry for the trouble and hope you have a great one!


(Dan Crane) #20

No dramas guys.

I’m sending this on for professional courtesy - you guys have a good break :slight_smile:


#21

I’m running Roon Core on a 8GB RAM QNAP NAS server (7GB available). The server has no other function than Roon (and its own internal processes). Basically, I find that over the course of a month, free memory drops from about 75% to 3-4%, at which point Tidal no longer works. Rebooting the NAS, and usually installing updates which are released once a month, fixes the issue.

Is this normal behavior though ? Using the utility to free memory, only has minimal impact.


(Mark) #22

#23

Okay - seems to be a common issue.

Not a biggie as it just means rebooting the server, but I guess one of the NAS updates a few months ago caused this ?