A "moving" status when files are being moved #2054

Closed
opened 2026-02-21 16:00:15 -05:00 by deekerman · 8 comments
Owner

Originally created by @tekko on GitHub (Jan 17, 2015).

When you use "set location" to change the downloading directory, the existing files get moved. The status should say something like "moving" or "waiting to be moved" if multiple torrents are set to be moved. Right now there is no indication at all.

Originally created by @tekko on GitHub (Jan 17, 2015). When you use "set location" to change the downloading directory, the existing files get moved. The status should say something like "moving" or "waiting to be moved" if multiple torrents are set to be moved. Right now there is no indication at all.
deekerman 2026-02-21 16:00:15 -05:00
  • closed this issue
  • added the
    Duplicate
    label
Author
Owner

@chrishirst commented on GitHub (Jan 28, 2015):

There already is a way that one can tell if any one payload or multiple payloads are in the process of 'moving'. You simply have know what to look for.
Because libtorrent, the qbittorrent 'engine' disc input/output is a single thread process and as moving local data has a higher instantaneous priority than fetching more [or delivering] data (in the form of 'pieces') ALL peer transfer activity will cease until the move has completed.

@chrishirst commented on GitHub (Jan 28, 2015): There already is a way that one can tell if any one payload or multiple payloads are in the process of 'moving'. You simply have know what to look for. Because libtorrent, the qbittorrent 'engine' disc input/output is a single thread process and as moving local data has a higher instantaneous priority than fetching more [or delivering] data (in the form of 'pieces') **ALL** peer transfer activity will cease until the move has completed.
Author
Owner

@tekko commented on GitHub (Jan 28, 2015):

I guess I'll have to continue monitoring it myself outside qbt. To remember which torrents I've selected for moving and check how many of them are still in the queue/ have been moved. Thanks.

@tekko commented on GitHub (Jan 28, 2015): I guess I'll have to continue monitoring it myself outside qbt. To remember which torrents I've selected for moving and check how many of them are still in the queue/ have been moved. Thanks.
Author
Owner

@chrishirst commented on GitHub (Jan 28, 2015):

Update:
Okay, having given the code a cursory look over, the problem with implementing something like this as a task list status display per task is that libtorrent only provides a signal when ALL the payloads being moved are complete, (http://www.libtorrent.org/reference-Alerts.html#storage_moved_alert) so it is not possible to update the GUI for a any single task status when multiple payloads are being moved.

The best you could hope for is a notification event being triggered after ALL moves have completed.

@chrishirst commented on GitHub (Jan 28, 2015): Update: Okay, having given the code a cursory look over, the problem with implementing something like this as a task list status display per task is that libtorrent only provides a signal when ALL the payloads being moved are complete, (http://www.libtorrent.org/reference-Alerts.html#storage_moved_alert) so it is not possible to update the GUI for a any single task status when multiple payloads are being moved. The best you could hope for is a notification event being triggered after ALL moves have completed.
Author
Owner

@tekko commented on GitHub (Jan 29, 2015):

A notification like that will only tells u if the moving has been succeeded or failed. It might also help only in cases where there is no ul/dl before the moving and after "torrent_handle::move_storage" is done. It doesn't really worth the trouble for implementing it. Thanks for the info.

@tekko commented on GitHub (Jan 29, 2015): A notification like that will only tells u if the moving has been succeeded or failed. It might also help only in cases where there is no ul/dl before the moving and after "torrent_handle::move_storage" is done. It doesn't really worth the trouble for implementing it. Thanks for the info.
Author
Owner

@tekko commented on GitHub (Jan 29, 2015):

Just a thought... what if qbt handles the queue? For each torrent selected, calls "torrent_handle::move_storage" and wait for the alert. Once the alert is received, process the next torrent.

@tekko commented on GitHub (Jan 29, 2015): Just a thought... what if qbt handles the queue? For each torrent selected, calls "torrent_handle::move_storage" and wait for the alert. Once the alert is received, process the next torrent.
Author
Owner

@chrishirst commented on GitHub (Feb 7, 2015):

It does that already, but move_storage is a 'void' function, so qbt will have to start polling the two alert states to discover the result, thereby increasing the footprint and/or potentially leaving the GUI 'in an 'unresponsive' state, and given that the libtorrent thread is already busy with the move so may or may not respond to the poll request there is great potential for end user comments or 'bug' reports of "qBittorrent stops working when moving files", this program is complete carp!!! << misspelling intentional.

Devil && Deep blue sea || Rock && Hard place.

@chrishirst commented on GitHub (Feb 7, 2015): It does that already, but move_storage is a 'void' function, so qbt will have to start polling the two alert states to discover the result, thereby increasing the footprint and/or potentially leaving the GUI 'in an 'unresponsive' state, and given that the libtorrent thread is already busy with the move so may or may not respond to the poll request there is great potential for end user comments or 'bug' reports of "qBittorrent stops working when moving files", this program is complete carp!!! << misspelling intentional. Devil && Deep blue sea || Rock && Hard place.
Author
Owner

@MayMih commented on GitHub (Mar 25, 2016):

What about comparing file(s) size in the destination and origin drectory (via file system means) to show progress bar? - this is what i'm doing now by my eyes.

@MayMih commented on GitHub (Mar 25, 2016): What about comparing file(s) size in the destination and origin drectory (via file system means) to show progress bar? - this is what i'm doing now by my eyes.
Author
Owner

@thalieht commented on GitHub (May 3, 2017):

#508 duplicate

@thalieht commented on GitHub (May 3, 2017): #508 duplicate
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/qBittorrent#2054
No description provided.