Sonarr not creating hardlinks (non docker, same vol)

Sonarr version (exact version): 3.0.10.1567 (latest stable)
Mono version (if Sonarr is not running on Windows): -
OS: Mac 12.6.6 (latest)
Debug logs:
sonarr.trace.txt - PrivateBin
sonarr.debug.txt - PrivateBin
sonarr.trace.0.txt - PrivateBin
sonarr.trace.1.txt - PrivateBin

Description of issue: Hardlink is not created in the Plex directory for a file downloaded by transmission.
In Series → Silo → there’s a warning triangle → hover over it → Episode missing from disk
In Activity → History → Click on it → shows correct filename + Grabbed

File in question: Silo.S01E06.The.Relic.2160p.ATVP.WEB-DL.DDP5.1.DoVi.H.265-NTb
On the filesystem it appears in Trt/TV but it’s not linked to /TV/Silo/Season 1 (nor is it copied)

Not using docker and the directories are on the same volume. Plex is configured similarly and it correctly does the hardlinks (Trt/Movies → /Movies/…). I also tried linking manually a file I created in those directories and it works (using ln).

In the log files I don’t see anything related to linking.

the logs only show it being grabbed and downloading, the completion and processing after that is not there, you need the logs after the ones youve linked.

all i can see is it being downloaded to /Volumes/PlexMedia/Trt/TV, where would sonarr move it to once the download is complete?

Plex is configured similarly and it correctly does the hardlinks (Trt/Movies → /Movies/…)

which app is moving the completed download? plex or sonarr?

I’ve added the following 13 minutes after the download. The linking should’ve been done right after…

sonarr.trace.txt → PrivateBin

What keyword are you searching for? There doesn’t seem to be anything after either.

Here’s an image of the importing section of my config, it seems to be in order: Imgur: The magic of the Internet

Sonarr should do the hardlinking. The destination should’ve been: /Volumes/PlexMedia/TV/Silo/Season 1…

should be roughly in this order

Debug|DownloadDecisionMaker|Processing release
Info|DownloadService|Report sent to
Debug|TrackedDownloadService|Tracking
Debug|VideoFileInfoReader|Getting media info
Debug|QualityParser|Trying to parse quality
Debug|DiskTransferService|Move
Debug|DiskTransferService|Rename

it download the torrent and sent it to transmission

2023-06-04 18:31:29.1|Debug|Transmission|Downloading torrent for episode 'Silo.S01E06.The.Relic.2160p.ATVP.WEB-DL.DDP5.1.DoVi.H.265-NTb' finished (23658 bytes from http://plex.local:9696/2/download?apikey=(removed)&link=LzJHRUNWcHlMeXAzbUtYZCs4RlZMWUFMSzhEektIY0Z6TVgvTHpvamQ1Z1JmYkt5TWV1NzNiNVhWUXE4VEFOZ1cvV1QwZnp4M0hRV2NKT2ZUczFzQS9VVlpYaGhCR2pTT2l2SWhXdUhrMXpOTC9IWTlXQTU0RTJIUDZKeUV3SmM5SEk1SHpQeEF1UGhmdmhnUmlBSUt3PT0&file=Silo.S01E06.The.Relic.2160p.ATVP.WEB-DL.DDP5.1.DoVi.H.265-NTb)
2023-06-04 18:31:29.3|Info|DownloadService|Report sent to Transmission. Silo.S01E06.The.Relic.2160p.ATVP.WEB-DL.DDP5.1.DoVi.H.265-NTb

then there seems to be nothing

has this same torrent already been downloaded before this? if it has then sonarr wont process it again, it will grab, send, download, complete, then just disappear, which may explain why there seems to be nothing in the logs after the download completes.

youd need to find the log entries from the first time is was processed. you can check the episode history for that, then mouseover the info icon in the details column for the first grab that matches to get the time that happened.

or find something else you can manually download, just for log purposes.

I’ve tried with Breaking Bad S01E04, a new download:

debug: PrivateBin
trace: PrivateBin

Starts at 2023-06-06 15:42:33.1
DownloadDecisionMaker|Processing release 'Breaking Bad S01E04

there’s no DiskTransferService there, nor later…

2023-06-06 15:42:18.2|Info|ReleaseSearchService|Searching indexers for [Breaking Bad : S01E04]. 4 active indexers
2023-06-06 15:42:31.9|Debug|DownloadDecisionMaker|Processing release 'Breaking Bad S01E04 HDTV XviD-LOL' from 'EZTV (Prowlarr)'
2023-06-06 15:42:32.0|Debug|DownloadDecisionMaker|Release accepted
2023-06-06 15:42:33.1|Info|DownloadService|Report sent to Transmission. Breaking Bad S01E04 HDTV XviD-LOL
2023-06-06 15:42:33.1|Info|EpisodeSearchService|Episode search completed. 1 reports downloaded.

then nothing at all.

the trace logs do show it downloading and appearing to complete

2023-06-06 15:42:34.0|Trace|HttpClient|Res: [POST] http://localhost:9091/transmission/rpc: 200.OK (43108 bytes) (3 ms)
2023-06-06 15:42:34.0|Trace|HttpClient|Response content (43108 bytes): {"downloadDir":"/Volumes/PlexMedia/Trt/TV","downloadedEver":0,"errorString":"","eta":-2,"hashString":"5888acbd656bc3cd2f4b6036b3a9343a0ad1ed4b","id":102,"isFinished":false,"leftUntilDone":0,"name":"Breaking.Bad.S01E04.HDTV.XviD-LOL","secondsDownloading":0,"secondsSeeding":0,"seedIdleLimit":30,"seedIdleMode":0,"seedRatioLimit":2,"seedRatioMode":0,"status":4,"totalSize":0,"uploadedEver":0}
2023-06-06 15:42:39.1|Trace|HttpClient|Res: [POST] http://localhost:9091/transmission/rpc: 200.OK (43128 bytes) (3 ms)
2023-06-06 15:42:39.1|Trace|HttpClient|Response content (43128 bytes): {"downloadDir":"/Volumes/PlexMedia/Trt/TV","downloadedEver":0,"errorString":"","eta":-1,"hashString":"5888acbd656bc3cd2f4b6036b3a9343a0ad1ed4b","id":102,"isFinished":false,"leftUntilDone":367024128,"name":"Breaking.Bad.S01E04.HDTV.XviD-LOL.avi","secondsDownloading":2,"secondsSeeding":0,"seedIdleLimit":30,"seedIdleMode":0,"seedRatioLimit":2,"seedRatioMode":0,"status":4,"totalSize":367024128,"uploadedEver":0}
2023-06-06 15:44:04.0|Trace|HttpClient|Res: [POST] http://localhost:9091/transmission/rpc: 200.OK (43137 bytes) (4 ms)
2023-06-06 15:44:04.0|Trace|HttpClient|Response content (43137 bytes): {"downloadDir":"/Volumes/PlexMedia/Trt/TV","downloadedEver":82548736,"errorString":"","eta":151,"hashString":"5888acbd656bc3cd2f4b6036b3a9343a0ad1ed4b","id":102,"isFinished":false,"leftUntilDone":284475392,"name":"Breaking.Bad.S01E04.HDTV.XviD-LOL.avi","secondsDownloading":87,"secondsSeeding":0,"seedIdleLimit":30,"seedIdleMode":0,"seedRatioLimit":2,"seedRatioMode":0,"status":4,"totalSize":367024128,"uploadedEver":0}
2023-06-06 15:45:34.0|Trace|HttpClient|Res: [POST] http://localhost:9091/transmission/rpc: 200.OK (43138 bytes) (3 ms)
2023-06-06 15:45:34.0|Trace|HttpClient|Response content (43138 bytes): {"downloadDir":"/Volumes/PlexMedia/Trt/TV","downloadedEver":218421248,"errorString":"","eta":85,"hashString":"5888acbd656bc3cd2f4b6036b3a9343a0ad1ed4b","id":102,"isFinished":false,"leftUntilDone":148602880,"name":"Breaking.Bad.S01E04.HDTV.XviD-LOL.avi","secondsDownloading":177,"secondsSeeding":0,"seedIdleLimit":30,"seedIdleMode":0,"seedRatioLimit":2,"seedRatioMode":0,"status":4,"totalSize":367024128,"uploadedEver":0}
2023-06-06 15:47:04.0|Trace|HttpClient|Res: [POST] http://localhost:9091/transmission/rpc: 200.OK (43137 bytes) (3 ms)
2023-06-06 15:47:04.0|Trace|HttpClient|Response content (43137 bytes): {"downloadDir":"/Volumes/PlexMedia/Trt/TV","downloadedEver":315037696,"errorString":"","eta":50,"hashString":"5888acbd656bc3cd2f4b6036b3a9343a0ad1ed4b","id":102,"isFinished":false,"leftUntilDone":51986432,"name":"Breaking.Bad.S01E04.HDTV.XviD-LOL.avi","secondsDownloading":267,"secondsSeeding":0,"seedIdleLimit":30,"seedIdleMode":0,"seedRatioLimit":2,"seedRatioMode":0,"status":4,"totalSize":367024128,"uploadedEver":0}
2023-06-06 15:48:34.0|Trace|HttpClient|Res: [POST] http://localhost:9091/transmission/rpc: 200.OK (43131 bytes) (3 ms)
2023-06-06 15:48:34.0|Trace|HttpClient|Response content (43131 bytes): {"downloadDir":"/Volumes/PlexMedia/Trt/TV","downloadedEver":367024128,"errorString":"","eta":-1,"hashString":"5888acbd656bc3cd2f4b6036b3a9343a0ad1ed4b","id":102,"isFinished":false,"leftUntilDone":0,"name":"Breaking.Bad.S01E04.HDTV.XviD-LOL.avi","secondsDownloading":324,"secondsSeeding":33,"seedIdleLimit":30,"seedIdleMode":0,"seedRatioLimit":2,"seedRatioMode":0,"status":6,"totalSize":367024128,"uploadedEver":0}

can you see the job still seeding in transmission or is it gone?

it would seem that something else is probably processing it before sonarr can see it has completed. ie within that 90 second window something happened to the job.

do you have anything else that can send stuff to transmission (ie plex?) that could also be processing completed jobs from transmission?

in the download client setup in sonarr for transmission do you have a category set?

The episode is seeding in Transmission and it exists in the /Trt/TV folder, it’s just not linked to the main /TV folder.

In the transmission I have category set so that it moves the finished download to the /Trt/TV folder. (For radarr it’s the /Trt/Movies folder and it works without an issue).

I have plex installed but it isn’t connected to transmission, it only waits for the series in the /TV folder. (For movies it waits in /Movies and it works without an issue)

Also, even if something else is processing it… once sonarr starts doing the processing it should create the hardlink as the file is where it’s expected to be before the hardlink happens and also sonarr doesn’t give any error.

Was wondering if I should update to v4 if we can’t pinpoint the issue.

cant hurt, but i dont think it will help either.

i think you need to keep checking the logs to find if theres ever anything in there about it. ie is it still seen every 90 seconds in the transmission queue but sonarr never does anything about it, or does it eventually see it at some point and does something (other than link or move it).

and it looks like that might only show up at the trace level

After installing v4 I get this clear error:
“Download client Transmission places downloads in /Volumesc/PlexMedia/Trt/TV but Sonarr cannot see this directory. You may need to adjust the folder’s permissions.”

The error is a spelling: /Volumesc which I found in Settings → Download Clients → Transmission → Directory.

v3 didn’t show this but v4 gave me the error and I was able to fix this.

Thanks for the help @rhom.

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