Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can't update Radarr #4621

Closed
HansGr00ber opened this issue May 9, 2021 · 15 comments · Fixed by #4757
Closed

Can't update Radarr #4621

HansGr00ber opened this issue May 9, 2021 · 15 comments · Fixed by #4757

Comments

@HansGr00ber
Copy link

HansGr00ber commented May 9, 2021

Setup

Package Name: Radarr
Package Version: 20210311-15

NAS Model: DS216j
NAS Architecture: armada38x
DSM version: DSM 6.2.4-25556

Expected behavior

Using Radarr's internal updater it should update to latest version

Actual behavior

Update fails with error message

Error occurred while executing task ApplicationUpdate: No space left on device

I have also tried installing the package and reinstalling and still can't update. Just to add there is about 1TB free space on the drive.

Please let me know if there is any other info I can provide. I'm a bit new to this.

Steps to reproduce

1. Navigate to update tab within Radarr
2. Click "install latest"
3.

Package log

[Info] InstallUpdateService: Deleting old update files
[Info] InstallUpdateService: Downloading update 3.1.1.4954
[Info] InstallUpdateService: Verifying update package
[Info] InstallUpdateService: Update package verified successfully
[Info] InstallUpdateService: Extracting Update package
[Error] CommandExecutor: Error occurred while executing task ApplicationUpdate

[v3.0.2.4552] System.IO.IOException: No space left on device
at System.IO.FileStream.WriteNative(ReadOnlySpan1 source) at System.IO.FileStream.WriteSpan(ReadOnlySpan1 source)
at System.IO.FileStream.Write(Byte[] array, Int32 offset, Int32 count)
at ICSharpCode.SharpZipLib.Tar.TarInputStream.CopyEntryContents(Stream outputStream)
at ICSharpCode.SharpZipLib.Tar.TarArchive.ExtractEntry(String destDir, TarEntry entry)
at ICSharpCode.SharpZipLib.Tar.TarArchive.ExtractContents(String destinationDirectory)
at NzbDrone.Common.ArchiveService.ExtractTgz(String compressedFile, String destination) in D:\a\1\s\src\NzbDrone.Common\ArchiveService.cs:line 110
at NzbDrone.Common.ArchiveService.Extract(String compressedFile, String destination) in D:\a\1\s\src\NzbDrone.Common\ArchiveService.cs:line 36
at NzbDrone.Core.Update.InstallUpdateService.InstallUpdate(UpdatePackage updatePackage) in D:\a\1\s\src\NzbDrone.Core\Update\InstallUpdateService.cs:line 133
at NzbDrone.Core.Update.InstallUpdateService.Execute(ApplicationUpdateCommand message) in D:\a\1\s\src\NzbDrone.Core\Update\InstallUpdateService.cs:line 275
at NzbDrone.Core.Messaging.Commands.CommandExecutor.ExecuteCommand[TCommand](TCommand command, CommandModel commandModel) in D:\a\1\s\src\NzbDrone.Core\Messaging\Commands\CommandExecutor.cs:line 86
at CallSite.Target(Closure , CallSite , CommandExecutor , Object , CommandModel )
at System.Dynamic.UpdateDelegates.UpdateAndExecuteVoid3[T0,T1,T2](CallSite site, T0 arg0, T1 arg1, T2 arg2)
at CallSite.Target(Closure , CallSite , CommandExecutor , Object , CommandModel )
at NzbDrone.Core.Messaging.Commands.CommandExecutor.ExecuteCommands() in D:\a\1\s\src\NzbDrone.Core\Messaging\Commands\CommandExecutor.cs:line 44

@hgy59
Copy link
Contributor

hgy59 commented May 11, 2021

The main cause is found on the following line in the package log:

[v3.0.2.4552] System.IO.IOException: No space left on device

For the case the updater uses /tmp folder for updates, a solution might be to define TMPDIR=/volume1/<any folder with enough space>.

Therefore the start command of radarr must be adjusted in the script /var/packages/radarr/scripts/service-setup.
change
"env HOME=${HOME_DIR} LD_LIBRARY_PATH=${SYNOPKG_PKGDEST}/lib ${RADARR}"
to
"env HOME=${HOME_DIR} TMPDIR=${SYNOPKG_PKGDEST}/tmp LD_LIBRARY_PATH=${SYNOPKG_PKGDEST}/lib ${RADARR}"
and create the folder:
mkdir /var/packages/radarr/target/tmp

This is just a guess, as I do not know, whether radarr regards the TMPDIR environment variable (as regular linux tools do).

@markdopson
Copy link

I also cannot update radarr, but has nothing to do with space. The logs appears fine:

[Info] InstallUpdateService: Downloading update 3.2.0.5048
[Info] InstallUpdateService: Verifying update package
[Info] InstallUpdateService: Update package verified successfully
[Info] InstallUpdateService: Extracting Update package
[Info] InstallUpdateService: Update package extracted successfully
[Info] BackupService: Starting Backup
[Info] InstallUpdateService: Preparing client
[Info] InstallUpdateService: Starting update client /tmp/radarr_update/Radarr.Update
[Info] InstallUpdateService: Radarr will restart shortly.

But it never restarts. Note that there's plenty of space in /tmp and I can see that the update has been correctly downloaded in /tmp/radarr_update. If I restart manually, nothing has changed (still on the old version).

@markdopson
Copy link

Update: I fixed it by stopping sonarr, updating radarr, then restarting sonarr.
Apparently sonarr is interfering with the radarr update process.

@yarez0
Copy link

yarez0 commented Jun 21, 2021

confirm that I had to stop sonarr to update radarr

@permster
Copy link

For me this issue is caused by being on a DS218j which only has 512 MB of memory. Which in turn mean the /tmp mount is only 250 MB. Radarr downloads the tar file and extract it all in /tmp. Did the update file get bigger recently? Not sure why this issue is just presenting itself now.

I haven't yet tested the above proposed solution by @hgy59 but plan to do so when I have a chance.

@permster
Copy link

I can confirm that the workaround provided by @hgy59 does fix the space issue I had with /tmp. My update was still not working correctly though and the logs showed the error from issue #4679. To resolve that I stopped Sonarr and performed the update again. Radarr is now up to date.

I'm assuming the service-setup tweak will get overwritten each time there's a package update? Not sure what to do about that other than document it so I know to go back in and do it again after each update.

@balance82
Copy link

balance82 commented Sep 22, 2021

For the case the updater uses /tmp folder for updates, a solution might be to define TMPDIR=/volume1/<any folder with enough space>.

Therefore the start command of radarr must be adjusted in the script /var/packages/radarr/scripts/service-setup.
change
"env HOME=${HOME_DIR} LD_LIBRARY_PATH=${SYNOPKG_PKGDEST}/lib ${RADARR}"
to
"env HOME=${HOME_DIR} TMPDIR=${SYNOPKG_PKGDEST}/tmp LD_LIBRARY_PATH=${SYNOPKG_PKGDEST}/lib ${RADARR}"
and create the folder:
mkdir /var/packages/radarr/target/tmp

this one worked for me. I also apply this to Lidarr since I had the same error. The only thing I would add - you need to restart your radarr after applying this change

@MichielHoving
Copy link

MichielHoving commented Sep 29, 2021

The main cause is found on the following line in the package log:

[v3.0.2.4552] System.IO.IOException: No space left on device

For the case the updater uses /tmp folder for updates, a solution might be to define TMPDIR=/volume1/<any folder with enough space>.

Therefore the start command of radarr must be adjusted in the script /var/packages/radarr/scripts/service-setup. change "env HOME=${HOME_DIR} LD_LIBRARY_PATH=${SYNOPKG_PKGDEST}/lib ${RADARR}" to "env HOME=${HOME_DIR} TMPDIR=${SYNOPKG_PKGDEST}/tmp LD_LIBRARY_PATH=${SYNOPKG_PKGDEST}/lib ${RADARR}" and create the folder: mkdir /var/packages/radarr/target/tmp

This is just a guess, as I do not know, whether radarr regards the TMPDIR environment variable (as regular linux tools do).

This one worked for me too. After this change, my Radarr didn't start because I did the last command to create the folder as root mkdir /var/packages/radarr/target/tmp
So make sure the owner on this new folder is 'sc-raddarr' and not 'root'. After I changed the rights correctly on the new /tmp folder, Radarr was starting and running again.

@oliverspike
Copy link

i fixed ti by resizing my /tmp by running this command sudo mount -o remount,size=1024M tmpfs /tmp/

@Lloytron
Copy link

i fixed ti by resizing my /tmp by running this command sudo mount -o remount,size=1024M tmpfs /tmp/

Thank you, this fixed this issue for me!

@skenttaylor
Copy link

i fixed ti by resizing my /tmp by running this command sudo mount -o remount,size=1024M tmpfs /tmp/

This worked for me too (when closing Sonarr didn't). Thanks!

@thyeestes
Copy link

Any other suggestions? Resizing /tmp didn't work for me when I try to update Radarr to 4.0.0.5745. I don't have Sonarr installed.

I have the same issue with Prowlarr by the way.

@FreekVR
Copy link

FreekVR commented Jan 17, 2022

I'm having the same problem with the 4x updates on DSM 6. The previous workarounds for updating worked for me and are still in place (TMP_DIR env value).

The events log simply shows no error and "Radarr will restart shortly" which it never does. The package logs don't show my any errors either.

@permster
Copy link

I ran into this as well but I think its a new issue. It doesn't appear you can update directly from 3.0.2.4552 straight to 4x updates on DSM6 anymore. I switched back to master branch and updated to 3.2.2.5080 (stable) instead. Haven't tested updating from 3.2.2.5080 to 4x yet.

@thyeestes
Copy link

I did test that. Currently running on 3.2.2.5080, but cannot update to any 4.x.x.xxxx version. Running DSM version 6.2.4-25556 Update 2

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.