Tranmission - not recognizing finished

Hello,

A few things:

  1. the main issue: it seems sonarr is not able to recognize when torrents finish in Transmission. This seems to be because the Transmission RPC reports “isFinished”:“false” on torrents that are still seeding.
  2. files imported from the blackhole folder are automatically moved rather than hard-linked, even though hardlinking is checked.
  3. (minor issue) it seems like sonarr requires write permissions to the downloading directory of torrents in order to hard link their contents, else mono throws an error. Any idea why that might be?

I am on the develop branch of sonarr and using the latest version of Transmission, running on Arch Linux.

For reference, an excerpt from logs about Transmission’s status:

15-4-10 22:28:47.2|Trace|RestSharpExtensions|Response: {"arguments":{"torrents":[{"downloadDir":"/home/<removed>/Downloads/.Seed","errorString":"","eta":-1,"hashString":"257e2c235abbadb4aaf6a971a50cb863a41db2b9","id":1,"isFinished":false,"leftUntilDone":0,"name":"archlinux-2015.04.01-dual.iso","status":6,"totalSize":628097024},{"downloadDir":"/home/<removed>/Downloads/.Seed","errorString":"","eta":-1,"hashString":"32e1bb007c05e235082f9fffa3369f404743dd39","id":2,"isFinished":false,"leftUntilDone":0,"name":"antergos-minimal-2015.03.07-x86_64.iso","status":6,"totalSize":489684992},{"downloadDir":"/home/<removed>/Downloads/.Seed/","errorString":"","eta":-1,"hashString":"c8bef05b59e2633b25885be3d84f25059431ad05","id":3,"isFinished":false,"leftUntilDone":0,"name":"antergos-2015.01.11-x86_64.iso","status":6,"totalSize":870318080},{"downloadDir":"/home/<removed>/Downloads/.Seed","errorString":"","eta":-1,"hashString":"b415c913643e5ff49fe37d304bbb5e6e11ad5101","id":4,"isFinished":false,"leftUntilDone":0,"name":"ubuntu-14.10-desktop-amd64.iso","status":6,"totalSize":1162936320},{"downloadDir":"/home/<removed>/Downloads/.tv","errorString":"","eta":-1,"hashString":"5240832a206df0e3e5b79d5229f91b1e9ba3b7f4","id":5,"isFinished":false,"leftUntilDone":0,"name":"Louie.S05E01.INTERNAL.720p.HDTV.x264-FiHTV [GloDLS]","status":6,"totalSize":645181512}]},"result":"success"}

All the torrents are completed and seeded, however isFinished reports false.
According to transmission documentation, "status":6 means the torrent is seeding, maybe you can check that instead?
Note that where it says “removed” instead of my username, I didn’t actually remove that, that’s how it’s outputted.

We do use the status field to determine when its ready to be imported.

Thats because to Sonarr there isn’t a client thats seeding it, its a basic import mechanism so it just moves it.

Eventually Sonarr needs write access to remove the files, specifically why its required to setup the hardlink I’m not sure.

Any idea then why episodes are not being imported?

15-4-11 13:20:15.7|Trace|RestSharpExtensions|Response: {"arguments":{"torrents":[{"downloadDir":"/home/<removed>/Downloads/.tv","errorString":"","eta":-1,"hashString":"be2331a5d480205286656041abe05d309196fce1","id":7,"isFinished":false,"leftUntilDone":0,"name":"Last.Week.Tonight.With.John.Oliver.S02E08.720p.HDTV.x264-BATV [GloDLS]","status":6,"totalSize":1002410285}]},"result":"success"}

15-4-11 13:20:15.7|Trace|ConfigService|Using default config value for 'removecompleteddownloads' defaultValue:'False'
15-4-11 13:20:15.7|Trace|EventAggregator|Publishing TrackedDownloadRefreshedEvent
15-4-11 13:20:15.7|Trace|EventAggregator|TrackedDownloadRefreshedEvent -> QueueService
15-4-11 13:20:15.7|Trace|EventAggregator|Publishing QueueUpdatedEvent
15-4-11 13:20:15.7|Trace|EventAggregator|QueueUpdatedEvent -> QueueModule
15-4-11 13:20:15.7|Trace|EventAggregator|QueueUpdatedEvent <- QueueModule
15-4-11 13:20:15.7|Trace|EventAggregator|TrackedDownloadRefreshedEvent <- QueueService
15-4-11 13:20:15.7|Trace|CommandQueueManager|Updating command status
15-4-11 13:20:15.7|Trace|EventAggregator|Publishing CommandExecutedEvent
15-4-11 13:20:15.7|Trace|EventAggregator|CommandExecutedEvent -> TaskManager
15-4-11 13:20:15.7|Trace|TaskManager|Updating last run time for: NzbDrone.Core.Download.CheckForFinishedDownloadCommand
15-4-11 13:20:15.7|Trace|EventAggregator|CommandExecutedEvent <- TaskManager
15-4-11 13:20:15.7|Trace|EventAggregator|CommandExecutedEvent -> TaskModule
15-4-11 13:20:15.7|Trace|EventAggregator|CommandExecutedEvent <- TaskModule
15-4-11 13:20:15.7|Trace|CommandExecutor|CheckForFinishedDownloadCommand <- DownloadMonitoringService [00:00:00.0603610]
15-4-11 13:20:16.5|Trace|CommandQueueManager|Publishing DownloadedEpisodesScan
15-4-11 13:20:16.5|Trace|CommandQueueManager|Checking if command is queued or started: DownloadedEpisodesScan
15-4-11 13:20:16.5|Trace|CommandQueueManager|Inserting new command: DownloadedEpisodesScan
15-4-11 13:20:16.5|Trace|CommandExecutor|DownloadedEpisodesScanCommand -> DownloadedEpisodesCommandService
15-4-11 13:20:16.5|Trace|CommandQueueManager|Marking command as started: DownloadedEpisodesScan
15-4-11 13:20:16.6|Trace|ConfigService|Using default config value for 'downloadedepisodesfolder' defaultValue:''
15-4-11 13:20:16.6|Trace|DownloadedEpisodesCommandService|Drone Factory folder is not configured
15-4-11 13:20:16.6|Trace|CommandQueueManager|Updating command status
15-4-11 13:20:16.6|Trace|EventAggregator|Publishing CommandExecutedEvent
15-4-11 13:20:16.6|Trace|EventAggregator|CommandExecutedEvent -> TaskManager
15-4-11 13:20:16.6|Trace|TaskManager|Updating last run time for: NzbDrone.Core.MediaFiles.Commands.DownloadedEpisodesScanCommand
15-4-11 13:20:16.7|Trace|EventAggregator|CommandExecutedEvent <- TaskManager
15-4-11 13:20:16.7|Trace|EventAggregator|CommandExecutedEvent -> TaskModule
15-4-11 13:20:16.7|Trace|EventAggregator|CommandExecutedEvent <- TaskModule
15-4-11 13:20:16.7|Trace|CommandExecutor|DownloadedEpisodesScanCommand <- DownloadedEpisodesCommandService [00:00:00.0390220]

After a few hours of nothing happening, just now sonarr updated, and the restart somehow caused it to finally recognize it as finished and link the file. Still no clue why or how though…

Coincidence I think (the update was unrelated), but those logs don’t show Sonarr trying to process anything, which would happen via the CheckForFinishedDownloadCommand (which runs, but nothing was processed).

.tv is the category configured in Sonarr for Transmission?

Yep, .tv is configured as the category (by the way, the GUI says that it will create a .[category] folder but it just creates a [category] folder, so one has to write the dot).
Will try to see what happens when an episode is grabbed next.