transmission icon indicating copy to clipboard operation
transmission copied to clipboard

Easier recovery from temporarily missing data files ("No data found!")

Open victorhooi opened this issue 9 years ago • 19 comments

I often download torrents via Transmission to my network drive (CIFS or AFP).

However, if I restart my Macbook and the drive isn't mounted yet - Transmission will stop that torrent (expected), but will not allow me to resume it (even if I later mount the network drive) without first removing the torrent then re-adding it. The message given below the torrent is:

Error: No data found! Ensure your drives are connected or use "Move Data File To...". To re-download, remove the torrent and re-add it.

Is there any way of making the resume process easier, so that you can simply right-click and resume and it will check if the files were where they were before?

victorhooi avatar Nov 08 '16 21:11 victorhooi

Sometimes I move torrent data (while transmission-daemon is not running), then it complains as you described. But in this case it is enough to issue a "move" command to the new destination, then torrent can be started without re-adding. This would be a nice workaround for you: dummy "move" to the same place, then start (if it would work). In case you're missing many torrents, since the whole drive wasn't mounted, I believe the best solution is to restart transmission. If you're facing this issue often, did you think about to remove it from autostart (or ensure it starts only after successful network drive mounts)? Re-adding is not a workaround at all IMHO, since torrents must be rechecked (however if they're not on ZFS, it might be not so bad :) on the other hand bittorrent can be treated as backup itself).

andreygursky avatar Nov 10 '16 00:11 andreygursky

I have a similar issue with extra HDD - if its not mounted but a torrent starts, it gets into an errored state.

While its only a few clicks to copy magnet link to clipboard and open url (3?); it would be a lot better if there was "Ignore missing data" checkbox in Set Location or something like that to allow an easier restart.

CloCkWeRX avatar Jan 16 '17 09:01 CloCkWeRX

Is there any update on this, or how hard it would be to fix? =).

Thanks!

victorhooi avatar Jun 24 '17 20:06 victorhooi

TRAC-4537

cfpp2p avatar Jun 26 '17 18:06 cfpp2p

Here's a quick little script to re-add busted magnets:

#!/bin/bash

TRANSMISSION_ARGS="-n username:password"

START_ID=23
END_ID=38



for i in $(seq $START_ID $END_ID); do

  info=$(transmission-remote $TRANSMISSION_ARGS -t $i -i)
  magnet=$(echo "$info" | grep magnet | sed 's/Magnet: //')

  transmission-remote $TRANSMISSION_ARGS -t $i --remove-and-delete
  transmission-remote $TRANSMISSION_ARGS -a $magnet

done

gaieges avatar Oct 14 '17 02:10 gaieges

Here another user with Error: No data found! Ensure your drives are connected or use "Set Location". To re-download, remove the torrent and re-add it.

I run gentoo and I already have my point mounted ok.

Fitap avatar Aug 05 '18 02:08 Fitap

I have a similar issue. I recently lost a drive, and while I backup all of my important files, I don't backup my torrented files. Transmission says to delete and re-add the torrent, but I don't have the original torrent files. It would be nice to just have an option to automatically start the torrent from scratch, and preserve the existing download locations and other settings.

FYI, looks like I can touch a missing file and verify local data to get it to re-download. Now to find a way to automate this for each file.

timshannon avatar Sep 06 '18 23:09 timshannon

just for the record: you can make transmission restart a torrent by deleting the "resume" files.

rm ~/.config/transmission/resume/torrentyouwanttorestart.resume

did not test much. works at least for the case where i deliberately deleted the partially downloaded files from command line and just wanted transmission to restart the torrent from scratch.

lesmana avatar Dec 20 '18 16:12 lesmana

@lesmana : Well, the UI doesn't tell us that... Also, do you need to restart the app for this to work?

Anyway, for me, I'd like this feature for torrents with multiple independently-usable files, so that I can delete files I'm done with, change the selected files to download, and resume.

eyalroz avatar Jan 11 '19 20:01 eyalroz

just for the record: you can make transmission restart a torrent by deleting the "resume" files.

rm ~/.config/transmission/resume/torrentyouwanttorestart.resume

did not test much. works at least for the case where i deliberately deleted the partially downloaded files from command line and just wanted transmission to restart the torrent from scratch.

this also deletes the reference where the files were stored, so you will be clicking around again to save everything in the appropriate folders

vhsthetic avatar Sep 09 '19 22:09 vhsthetic

So, seems like the patch that fixes this issue was provided 8 years ago, is there something wrong with it or does something else block this issue from being resolved?

j-cr avatar Jan 09 '20 14:01 j-cr

just for the record: you can make transmission restart a torrent by deleting the "resume" files.

rm ~/.config/transmission/resume/torrentyouwanttorestart.resume

did not test much. works at least for the case where i deliberately deleted the partially downloaded files from command line and just wanted transmission to restart the torrent from scratch.

Thanks. Very helpful. Just a note in Ubuntu, the path is:

/var/lib/transmission-daemon/info/resume/

VarunAgw avatar Jan 18 '20 14:01 VarunAgw

@VarunAgw : Note that this feature request is about a proper resumption, not a restart.

eyalroz avatar Jan 18 '20 20:01 eyalroz

@eyalroz Oh, my bad.

VarunAgw avatar Jan 18 '20 20:01 VarunAgw

So I guess setting the location really does work to resume these (I think?), but the UX on my client doesn't show that they are in a normal state. It continues to show an error, but then sometimes suddenly begins working. This area needs work!

jordanade avatar Feb 24 '20 09:02 jordanade

Really annoying. Please recreate files on Force Start f.e.

GregoryGH avatar Apr 14 '20 18:04 GregoryGH

Area has some work needed.

voarsh2 avatar Jul 20 '21 22:07 voarsh2

Still an issue, and a really annoying one for me since I download to multiple different hard drives and sometimes won't have one drive mounted whilst I'm trying to download something to another drive. The option is either to backup the whole .config/transmission directoriy or YOLO it and just live with transmission complaining about missing data until I manually re-add all the torrents that were corrupted with their updated locations. I could probably write a script to automate this, but even then I'll have to run a verify-torrent command on each torrent just because transmission won't pick up the download path again, even if nothing in the underlying files content has changed and therefore most of the data would be identicle.

mohkale avatar Dec 27 '21 20:12 mohkale

Let's be clear this also can be from permanently (besides temporarily) missing data files, so should be option to 'resume' downloading from zero in any case; even recreate: mkdir -p <path>.

dchmelik avatar Oct 27 '22 23:10 dchmelik

just for the record: you can make transmission restart a torrent by deleting the "resume" files.

rm ~/.config/transmission/resume/torrentyouwanttorestart.resume

Is it safe to remove all .resume files, while the client is stopped? Hundreds of my torrents show the error, non-feasible to filter manually.

ghost avatar Mar 16 '23 09:03 ghost

@07416 Fixed it with this bash alias:

alias t-cli="rm -f ~/.config/transmission/resume/*; transmission-cli ${@}"

aki-k avatar Apr 14 '23 04:04 aki-k

Somebody posted this info in a duplicate that was closed:

I have found what is causing this issue. It's not a bug, rather just bad design. When specifying a directory transmission looks for the file inside that directory. Essentially you need to traverse one level higher than what you would expect. For example, If I wanted to specify the data location to be: /home/github/folder I would need to select /home/github as my file location, not /home/github/folder, as transmission appends /folder to the directory specified. If I had selected /home/github/folder as my file location, it would be looking for /home/github/folder/folder resulting in the error 'no data found'

https://github.com/transmission/transmission/issues/345#issuecomment-444883740

I think this guy was headed in the right direction. This is a common issue that should have been solved long ago.

Pentaphon avatar Jun 13 '23 03:06 Pentaphon

I need the ability to re-link files, I downloaded the torrent to my Downloads folder but moved it to a more permanent Dropbox folder, and it's important that I seed these files

neaumusic avatar Aug 31 '23 04:08 neaumusic

This issue has diverged to a lot of different requests all with their own niche, difficult to account for them all in the UI.

Anyway, I want to try address the major concerns here:

  1. The data files were temporarily gone, but now they are accessible again on the same file path. I want an easy way to resume the torrent.

    @victorhooi @CloCkWeRX @Fitap @mohkale

    Just resume the torrent, the error will clear. I agree the error message does not convey this very well, but there are so many cases related to this error, that it is hard to cover them all concisely.

  2. The data files have been moved to another location. I want an easy way to resume the torrent.

    @jordanade @neaumusic

    Use the "Set Location..." function, as suggested by the error message. You will still see the error afterward, but it will clear when you resume the torrent.
    Perhaps it will be better to check the files after each "Set Location..." as well, so that the error will clear immediately after.

  3. The data files are permanently gone. I want to restart the torrent from scratch without re-adding.

    @j-cr @dchmelik

    This one's tricky. The patch provided by @cfpp2p uses the "Resume Now" button to force restart the torrent, but it has the side effect of disregarding the download/upload queue.

    Maybe a good idea would be a new "Verify local data (force)" button that performs like qBit's "Force recheck" button, where the torrent progress will simply be updated to the current state.

tearfur avatar Sep 04 '23 09:09 tearfur

Adding the feature disparity label since this feature request is now resolved only in the WebUI.

Ideally I'd like some user feedback about how intuitive the new Verify Local Data (force) context menu item is before considering porting the feature to other clients, but PRs are always welcome.

tearfur avatar Oct 17 '23 08:10 tearfur

@tearfur did you see my comment here? I think that quote was getting to the root cause of the issue. I'm wondering what your thoughts are on those observations.

Pentaphon avatar Oct 17 '23 09:10 Pentaphon

That very beginning of this issue was about how the user found it very inconvenient to have to remove and re-add a torrent to resume it.

I'd consider your comment an entirely separete problem.

tearfur avatar Oct 17 '23 09:10 tearfur

I'd consider your comment an entirely separete problem.

@tearfur That's the thing. I don't think anybody has opened an issue for that original "no data found" bug and this is the only issue on github that refers to the original "no data found" bug. All "no data found" issues are considered a duplicate of this very issue and are closed. I'd open a new issue that seeks to treat the "no data found" issue as a separate problem but it will just be closed. I'd like to address the root cause of the issue rather than just recovering from it when it happens.

What do you think should be done about this?

@ckerr I am CC'ing you so that you are aware of this dilemma of how to create an issue that seeks to solve the root cause of "no data found" bug which is being referred to as "a design flaw".

Pentaphon avatar Oct 17 '23 10:10 Pentaphon