this issue Files not appearing in queue, no errors reminded me about how “bad” sonarr can be for re-downloading a torrent you’ve previous downloaded before but for whatever reason need to do so again.
if you download the same torrent again via sonarr it will;
- add it to the download client queue
- let it download (tracks its progress) until completed
- go to import it but notice that its already done that (status is imported) so skips this step
- removes the completed job (if you have that set) meaning the download client typically cleans up and any remaining files get deleted - including the one you wanted, in this case
the issue is due to sonarr storing a status value against the torrent hash that tells it that the job has already been imported (i presume this is to stop it from constantly re-importing while a job is seeding).
to be able to redownload the same file that value needs to be cleared - or used to ignore the job in the queue.
i can think of two possible ways of allowing this to happen. both rely on remove completed being enabled for your download client and will not work if it isnt - but then this is also only an issue when that option is enabled.
- when the job is removed from the client change the status to “removed”
- during the torrent tracking check, if a torrent hash with a status of “removed” is not found then clear the torrent hash status value completely
- the next time you download that torrent it will be processed as if it has never been seen before so will be imported (and removed, again).
an upside of this method would be that we’d no longer need all that space to track torrent hash status values. it wouldnt be massively huge, but i doubt its small either.
- when the job is removed from the client change the status to “removed”, but thats it, you dont need to check if it was actually removed.
- during the import phase if the status is either “imported” or “removed” then dont import it (were just checking for an extra status value here)
- during the remove completed phase if the status is “removed” then dont remove it from the client
- this will allow the job to remain in the download client so that the user can import it manually, as well as remove it manually.
both methods have a retroactive issue - all the existing status values need to be cleared for them to work properly, but i presume clearing those values might cause some files that have already been imported, and are still seeding, to be re-imported? so a GUI option (in the download client settings?) might be the better way to go so that users can do it when they are ready for it.