Roon Clients crashing on start ... client server log snippets inline

Roon Core Machine

Roon Optimized Core Kit v 1.0
Intel NUC Bean Canyon i7 / 16 GB DDR4 2400 MHz Ram

Networking Gear & Setup Details

Router: ASUS RT-AC88U

Connected Audio Devices

Raspberry Pi Ethernet Streamers running RoPieee v 3.020, connected via USB to Schiit Modius and BiFrost2 DACs

Library Size

~25,000

Description of Issue

All Roon clients either hang or crash on startup. Android clients just hang, Windows clients crash. Problem just started this morning after 7+months of working fine.

Windows client crashes with exceptions logged to Roon_log.txt as follows:

07/08 12:03:11 Info: [client/root] Client is acting as a remote
07/08 12:03:11 Critical: while dispatching events: ===[ BrooScript Exception ]============================================================

System.NullReferenceException: Object reference not set to an instance of an object.
    at ../ui/ui.broo:709 [cb89b5:006f] function anon_937

===[ Managed Exception ]===============================================================

System.NullReferenceException: Object reference not set to an instance of an object.
   at Sooloos.Client.Models.Messages.eval_rule(Rule rule, String indent_)
   at System.Linq.Enumerable.WhereEnumerableIterator`1.MoveNext()
   at System.Collections.Generic.List`1.InsertRange(Int32 index, IEnumerable`1 collection)
   at Sooloos.Client.Models.Messages.ev_messaging_changed(IDataSource _)
   at Sooloos.Client.Models.Messages.ev_broker_changed(Broker oldbroker, Broker newbroker)
   at System.Action`2.Invoke(T1 arg1, T2 arg2)
   at Sooloos.Client.RootBase.method_set_broker(Broker broker)

07/08 12:03:11 Info: 
Local Time:            07/08/2021 12:03:11 -04:00
Device Serial Number:  C087EBB5-C2AB-430B-A186-9A44A2B9C944
User Id:               f7016029-f91f-4d4a-945f-ea01ba9b9681
Roon Version:       1.8 (build 795) stable
OS Version:            Windows 10

Application Domain:    Roon.exe
Assembly Codebase:     file:///C:/Users/Charles/AppData/Local/Roon/Application/Roon.exe
Assembly Full Name:    Roon, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null

CPU0 Description:      Intel64 Family 6 Model 30 Stepping 5 2668 MHz (64-bit)
CPU0 Num Cores:        Physical: 4 Logical: 4

GPU0 Description:      NVIDIA GeForce GTX 680 0 MB
GPU0 Video Mode:       2560 x 1440 x 4294967296 colors
GPU0 Driver Version:   27.21.14.5671

SCREEN0 Name:          \\.\DISPLAY1 (primary)SCREEN0 Bounds:        0,0 2560x1440

SCREEN1 Name:          \\.\DISPLAY2 SCREEN1 Bounds:        -1920,0 1920x1200

--[ BROOSCRIPT EXCEPTION ]-------------------------------------------

    Exception Message: Object reference not set to an instance of an object.

    at ../ui/ui.broo:709 [cb89b5:006f] function anon_937

--[ INNER EXCEPTION ]------------------------------------------------
   Inner Exception Source:      Roon.Client.BrooModels
   Inner Exception Type:        System.NullReferenceException
   Inner Exception Target Site: Messages.eval_rule
   Inner Exception Message:     Object reference not set to an instance of an object.
   Inner Exception Data:        none

   --[ Inner Stack Trace ]------------
   Sooloos.Client.Models.Messages.eval_rule(Rule rule, String indent_)
       Roon.Client.BrooModels.DLL, IL 13, N 87
   System.Linq.Enumerable/WhereEnumerableIterator`1.MoveNext()
       System.Core.dll, IL 55, N 129
   System.Collections.Generic.List`1.InsertRange(Int32 index, IEnumerable`1 collection)
       mscorlib.dll, IL 234, N 463
   Sooloos.Client.Models.Messages.ev_messaging_changed(IDataSource _)
       Roon.Client.BrooModels.DLL, IL 93, N 255
   Sooloos.Client.Models.Messages.ev_broker_changed(Broker oldbroker, Broker newbroker)
       Roon.Client.BrooModels.DLL, IL 183, N 557
   System.Action`2.Invoke(T1 arg1, T2 arg2)
       mscorlib.dll, N 0
   Sooloos.Client.RootBase.method_set_broker(Broker broker)
       Roon.Client.BrooModels.DLL, IL 594, N 1509

--[ OUTER EXCEPTION ]------------------------------------------------
   Outer Exception Source:      Broo.Runtime
   Outer Exception Type:        Broo.BrooScriptException
   Outer Exception Target Site: Interpreter.Run
   Outer Exception Message:     Exception in brooscript
   Outer Exception Data:        none

   --[ Outer Stack Trace ]------------
   Broo.Runtime.Interpreter.Run(Scope scope, BrooxCode code, ArgList args, String name)
       Broo.Runtime.DLL, IL 4251, N 15441
   Broo.Runtime.Function.Call(ArgList args, Equation eq)
       Broo.Runtime.DLL, IL 332, N 613
   DelegateAdapters.System.Action(Function )
       Roon.Client.Desktop.bindings.DLL, IL 31, N 62
   Sooloos.Concurrency.EventHandlers.Dispatch(List`1 evs)
       Roon.Broker.Concurrency.DLL, IL 64, N 263
   Sooloos.Concurrency.SharedState`1.FlushEvents()
       Roon.Broker.Concurrency.DLL, IL 82, N 254
   Sooloos.Broker.State.BeginAccess(List`1 out_mutated_objects)
       Roon.Broker.Core.DLL, IL 52, N 146
   Broo.Engine.DeviceTarget.GuiMainLoop()
       BrooEngine.DLL, IL 159, N 606
   Sooloos.Application.Main(String[] argv)
       Roon.exe, IL 1935, N 4549

07/08 12:03:11 Error: 
Local Time:            07/08/2021 12:03:11 -04:00
Device Serial Number:  C087EBB5-C2AB-430B-A186-9A44A2B9C944
User Id:               f7016029-f91f-4d4a-945f-ea01ba9b9681
Roon Version:       1.8 (build 795) stable
OS Version:            Windows 10

Application Domain:    Roon.exe
Assembly Codebase:     file:///C:/Users/Charles/AppData/Local/Roon/Application/Roon.exe
Assembly Full Name:    Roon, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null

CPU0 Description:      Intel64 Family 6 Model 30 Stepping 5 2668 MHz (64-bit)
CPU0 Num Cores:        Physical: 4 Logical: 4

GPU0 Description:      NVIDIA GeForce GTX 680 0 MB
GPU0 Video Mode:       2560 x 1440 x 4294967296 colors
GPU0 Driver Version:   27.21.14.5671

SCREEN0 Name:          \\.\DISPLAY1 (primary)SCREEN0 Bounds:        0,0 2560x1440

SCREEN1 Name:          \\.\DISPLAY2 SCREEN1 Bounds:        -1920,0 1920x1200

--[ BROOSCRIPT EXCEPTION ]-------------------------------------------

    Exception Message: Object reference not set to an instance of an object.

    at ../ui/ui.broo:709 [cb89b5:006f] function anon_937

--[ INNER EXCEPTION ]------------------------------------------------
   Inner Exception Source:      Roon.Client.BrooModels
   Inner Exception Type:        System.NullReferenceException
   Inner Exception Target Site: Messages.eval_rule
   Inner Exception Message:     Object reference not set to an instance of an object.
   Inner Exception Data:        none

   --[ Inner Stack Trace ]------------
   Sooloos.Client.Models.Messages.eval_rule(Rule rule, String indent_)
       Roon.Client.BrooModels.DLL, IL 13, N 87
   System.Linq.Enumerable/WhereEnumerableIterator`1.MoveNext()
       System.Core.dll, IL 55, N 129
   System.Collections.Generic.List`1.InsertRange(Int32 index, IEnumerable`1 collection)
       mscorlib.dll, IL 234, N 463
   Sooloos.Client.Models.Messages.ev_messaging_changed(IDataSource _)
       Roon.Client.BrooModels.DLL, IL 93, N 255
   Sooloos.Client.Models.Messages.ev_broker_changed(Broker oldbroker, Broker newbroker)
       Roon.Client.BrooModels.DLL, IL 183, N 557
   System.Action`2.Invoke(T1 arg1, T2 arg2)
       mscorlib.dll, N 0
   Sooloos.Client.RootBase.method_set_broker(Broker broker)
       Roon.Client.BrooModels.DLL, IL 594, N 1509

--[ OUTER EXCEPTION ]------------------------------------------------
   Outer Exception Source:      Broo.Runtime
   Outer Exception Type:        Broo.BrooScriptException
   Outer Exception Target Site: Interpreter.Run
   Outer Exception Message:     Exception in brooscript
   Outer Exception Data:        none

   --[ Outer Stack Trace ]------------
   Broo.Runtime.Interpreter.Run(Scope scope, BrooxCode code, ArgList args, String name)
       Broo.Runtime.DLL, IL 4251, N 15441
   Broo.Runtime.Function.Call(ArgList args, Equation eq)
       Broo.Runtime.DLL, IL 332, N 613
   DelegateAdapters.System.Action(Function )
       Roon.Client.Desktop.bindings.DLL, IL 31, N 62
   Sooloos.Concurrency.EventHandlers.Dispatch(List`1 evs)
       Roon.Broker.Concurrency.DLL, IL 64, N 263
   Sooloos.Concurrency.SharedState`1.FlushEvents()
       Roon.Broker.Concurrency.DLL, IL 82, N 254
   Sooloos.Broker.State.BeginAccess(List`1 out_mutated_objects)
       Roon.Broker.Core.DLL, IL 52, N 146
   Broo.Engine.DeviceTarget.GuiMainLoop()
       BrooEngine.DLL, IL 159, N 606
   Sooloos.Application.Main(String[] argv)
       Roon.exe, IL 1935, N 4549

while RoonServer.log retrieved from the ROCK reports the following:

07/08 16:03:10 Info: [brokerserver] Client connected: 192.168.1.6:54908
07/08 16:03:10 Trace: [raat] [sood] Refreshing device list
07/08 16:03:10 Trace: [raatserver] [sood] Refreshing device list
07/08 16:03:10 Debug: [easyhttp] [17] POST to https://discovery.roonlabs.net/1/query returned after 270 ms, status code: 200
07/08 16:03:11 Trace: SENT NONFINAL DistributedBroker.ConnectResponse={ BrokerId=88033663-1589-4000-982c-8345c0de7de7 BrokerName='Roon Optimized Core Kit' }
07/08 16:03:11 Trace: SENT NONFINAL DistributedBroker.UpdatesChangedResponse={ IsSupported=True WasJustUpdated=False Status='UpToDate' HasChangeLog=False CurrentVersion={ MachineValue=100800806 DisplayValue='1.8 (build 806) stable' Branch='stable' } }
07/08 16:03:11 Trace: [push] restarting connection (Unable to read data from the transport connection: Software caused connection abort.)
07/08 16:03:11 Trace: [push] retrying connection in 53319ms
07/08 16:03:11 Info: [brokerserver] Client disconnected: 192.168.1.6:54908
07/08 16:03:11 Debug: [easyhttp] [18] GET to https://messaging.roonlabs.net/1/api/messages/f7016029-f91f-4d4a-945f-ea01ba9b9681 returned after 238 ms, status code: 200
07/08 16:03:18 Info: [stats] 27544mb Virtual, 1658mb Physical, 489mb Managed, 299 Handles, 110 Threads
07/08 16:03:21 Trace: Successful POST response from https://push.roonlabs.com/push/1/connect
07/08 16:03:21 Trace: [push] connecting to 34.75.144.165:9204
07/08 16:03:21 Trace: [push] connected

Hey @Charles_Drummond1,

Thanks so much for sharing all the information that you have from the very beginning. Sorry about the trouble :sweat:

I was wondering if you could try the following steps:

  • Stop RoonServer from running in ROCK’s WebUI
  • Navigate to your ROCK’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
  • On the Roon Remotes, press “Use another Core” and connect to the new database
  • (Optional) - Restore your database from a Backup prior to the issue starting

If the database loads properly, your edits, playlists, tags, etc should be intact, and we can confirm everything is performing properly once it’s been restored.

If you do not have any backups, unfortunately you will need to start with a fresh database.

Thanks in advance :pray:

So, I followed your procedure and it appears to have succeeded. Thank you for the very quick and helpful response. I do have regular backups, however, using the ROCK UI, there did not appear to be an option restore from backup, and upon connection from a now-functioning client on Windows, the option to restore from backup was not apparent to me.

Anyway, and again, thank you for your assistance. :slight_smile: :smiley:

1 Like