Mono 5.10 update broke Sonarr

@ballen205 If you installed sonarr with apt-get, the yes that works too, but with that the built in updater doesn’t work (no permissions).

A big Thank You to @Taloth & Sonarr Team

Confirmed working on Centos 7

I have applied the NLog.dll as specified and confirm successful start up of Sonarr. I then ran the update to 2.0.0.5153. It bombed during autorestart. However, I was able to start it manually. I also rebooted and confirmed systemd starts it automatically as expected. Just sharing in case it happens to you, don’t freak out.

[root@htpc7 ~]# systemctl status sonarr.service
● sonarr.service - Sonarr Daemon
Loaded: loaded (/usr/lib/systemd/system/sonarr.service; enabled; vendor preset: disabled)
Active: failed (Result: signal) since Wed 2018-02-28 15:54:38 EST; 2min 21s ago
Process: 9855 ExecStart=/usr/bin/mono /opt/sonarr/bin/NzbDrone.exe -nobrowser -data /opt/sonarr (code=killed, signal=KILL)
Main PID: 9855 (code=killed, signal=KILL)

Feb 28 15:54:26 htpc7.zerominus.pvt mono[9855]: [Info] InstallUpdateService: Update package verified successfully
Feb 28 15:54:26 htpc7.zerominus.pvt mono[9855]: [Info] InstallUpdateService: Extracting Update package
Feb 28 15:54:27 htpc7.zerominus.pvt mono[9855]: [Info] InstallUpdateService: Update package extracted successfully
Feb 28 15:54:27 htpc7.zerominus.pvt mono[9855]: [Info] BackupService: Starting Backup
Feb 28 15:54:31 htpc7.zerominus.pvt mono[9855]: [Info] InstallUpdateService: Preparing client
Feb 28 15:54:31 htpc7.zerominus.pvt mono[9855]: [Info] InstallUpdateService: Starting update client /tmp/nzbdrone_update/NzbDrone.Update.exe
Feb 28 15:54:31 htpc7.zerominus.pvt mono[9855]: [Info] InstallUpdateService: Sonarr will restart shortly.
Feb 28 15:54:38 htpc7.zerominus.pvt systemd[1]: sonarr.service: main process exited, code=killed, status=9/KILL
Feb 28 15:54:38 htpc7.zerominus.pvt systemd[1]: Unit sonarr.service entered failed state.
Feb 28 15:54:38 htpc7.zerominus.pvt systemd[1]: sonarr.service failed.

[root@htpc7 ~]# systemctl start sonarr.service

[root@htpc7 ~]# systemctl status sonarr.service
● sonarr.service - Sonarr Daemon
Loaded: loaded (/usr/lib/systemd/system/sonarr.service; enabled; vendor preset: disabled)
Active: active (running) since Wed 2018-02-28 15:57:11 EST; 1s ago
Main PID: 13912 (mono)
CGroup: /system.slice/sonarr.service
└─13912 /usr/bin/mono /opt/sonarr/bin/NzbDrone.exe -nobrowser -data /opt/sonarr

Feb 28 15:57:11 htpc7.zerominus.pvt systemd[1]: Started Sonarr Daemon.
Feb 28 15:57:11 htpc7.zerominus.pvt systemd[1]: Starting Sonarr Daemon…
Feb 28 15:57:12 htpc7.zerominus.pvt mono[13912]: [Info] Bootstrap: Starting Sonarr - /opt/sonarr/bin/NzbDrone.exe - Version 2.0.0.5153
Feb 28 15:57:13 htpc7.zerominus.pvt mono[13912]: [Info] Router: Application mode: Interactive
Feb 28 15:57:13 htpc7.zerominus.pvt mono[13912]: [Info] MigrationLogger: *** Migrating data source=/home/htpc/.config/NzbDrone/nzbdrone.db;cache size=-10485760;datetimekind=Utc;journal mode=Wal;pooling=True;version=3 ***

@ZeroMinus That likely means that your systemd unit file is missing some lines.

KillMode=process
Restart=on-failure

Both are critical for auto-update to work. KillMode will prevent systemd from recycling the entire cgroup when the updater kills sonarr. The Restart is to get systemd to restart it once sonarr gets killed.
It’s possible that this didn’t happen because systemd registered too many startup failures in the past, but check the unit file to be sure.

That makes complete sense. Thank you for the explanation. I’ve added it for future updating.

Thanks again.

I just tried this fix for Radaar. also and I can confirm it worked for Radarr running on Ubuntu.

Update fixed issue no rollback of Mono required, great job thanks

Nice job on the fix! For those of you on CentOS if this happens again your easiest way to roll back is yum history.

.# yum history list

Find the ID for the update you pushed the new version of mono in.

.# yum history undo [ID]

been having same issues. thanks for fixing it! that was an amazing job! i’m appreciating it a lot.

For windows: download and reinstall.

Euhm, afaik the issue didn’t affect windows since it was an issue related to mono 5.10.

The issue with develop when the build agent spat out a wonky build did affect user’s without .net 4.5 installed, but that’d be limited to Windows XP or systems years behind in .net updates and definitely not the same issue.

@chef if you’re on Windows and were affected by a different issue, it’s probably a good time to update .net.

It worked for me, I put the new DLL in for Sonarr and Radarr and upon restart they seem to be up an listening just fine. Thanks much for the advice, I was quite confused when they both quit working at the same time.

Upgraded my Linux system today, and like many of you, am having issues with both Sonarr and Radarr.

I’m able to start Sonarr using the latest mono when I use this in the command line;
mono --debug /opt/NzbDrone/NzbDrone.exe

However, it doesn’t start from crontab using that same command, which I’ve been using for months. Interestingly, Jackett (also started with crontab) is still working with the same mono command.

I’ve tried reverting back to earlier mono builds, but no luck.

Update: Placed the new DLL in both NzbDrone and Radarr, Radarr is now working, but Sonarr is still not starting via crontab.

Thank you for the clean and clear instructions @Taloth

I’m running Ubuntu 16.04 in a vm and this fixed sonarr for me after a few days of beating my head off the wall.

Thank you so much!

FYI On Centos 7, I think the default location is /apps/sonarr

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