Reorder file collection and download link processing in GetFileDownlo…#130
Reorder file collection and download link processing in GetFileDownlo…#130dylanmazurek wants to merge 305 commits into
Conversation
* feat: Handle multiple torrent submissions
* perf: Switched from DOM-based to state-based in the main render loop logic This removes the need to make complicated CSS selectors that would slow down the app. It also improves debugability and readability. * feat: Client-side state filtering * style: Don't wrap the torrent list's header on small screens * perf: Keep a dictionary of DOM element references
Implement UI toast notifications
- Upload Torrent file OR magnet URI
- Refractor code - Add file size and extension checkers - Change repair workflow to use zurg
- Minor cleanup - speedgains
- Add funding.yml - Add Arr Queue cleanner worker - Rewrote worker
- Fix responsiveness issue with navbars - Support user entry for users running as non-root - Other minor fixes
- Add rclone log viewer - Add more stats to Stats page - Fix some minor bugs
There was a problem hiding this comment.
Pull Request Overview
This PR fixes a bug in the Torbox download routine where the order of channel processing was causing the "Post-Download Action: Download" to never complete. The fix reorders the file collection and download link processing to ensure proper completion of download operations.
- Reordered channel processing to handle download links before file collection
- Added clarifying comment about the reason for the reordering
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
|
The issue #123 tagged to this PR was already closed. I don't know what this fixed and how. The changes don't really resolve anything, really... |
|
The deadlock occurs because the goroutines send to linkCh before filesCh, but the collecting loops process filesCh before linkCh. This causes goroutines to block on sending to the buffered linkCh (filling its capacity), preventing them from sending to filesCh or calling wg.Done(). The collecting loops then hang waiting for items or closure. To fix this I reordered the collecting loops in GetFileDownloadLinks to match the send order in the goroutines: collect from linkCh first, then filesCh, then errCh. This ensures sends unblock in sequence without deadlock. I tested with the current v1.1.3 release and the downloads get stuck and never fully download. With this re-ordering, I am able to see downloads finish and leave the list. |
- Introduced a new launch.json file for Go debugging configuration. - Refactored the Start function in main.go to comment out UMASK handling. - Cleaned up imports and improved error handling in request.go. - Enhanced the Debrid struct in debrid.go with synchronization and timing features. - Updated AllDebrid provider to improve error handling and logging. - Removed unused realdebrid/misc.go file. - Added profile handling in Torbox provider and improved torrent management. - Updated types in torbox/types.go for better clarity and structure. - Refined account management in account.go for improved functionality. - Enhanced torrent processing logic in torrent.go and queue.go for better performance.
…spacing and updating comments in various files
…ealdebrid.go and torbox.go
…ts for improved functionality
…dating JSON unmarshalling in various files
|
I can concurr that this change is needed and I tested it. |
|
@sirrobot01 do you think this was related to the streaming issues that I was having with TorBox? I was able to stream for a bit, but then streaming stops working until I restart Decypharr. |
|
It would be nice to get this pull request in so that we can take later versions of decypharr with torbox. |
Having this problem as well. |
|
Having this problem also. The only way to resolve it is restart decypharr after each download, which is bad |
|
I can also confirm that this change is needed and I've tested that it resolves the problem I'm having where Torbox downloads will never start. |
Fixed problem with torbox download routines causing
Post-Download Action: Downloadto never complete.