Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement article-level retry #2735

Open
Safihre opened this issue Nov 24, 2023 · 1 comment
Open

Implement article-level retry #2735

Safihre opened this issue Nov 24, 2023 · 1 comment

Comments

@Safihre
Copy link
Member

Safihre commented Nov 24, 2023

Description

Since we now have the option to write sparse-files, we should implement really article-level retries.

@mnightingale
Copy link
Contributor

Just as a note #2628 resulting in disabling sparse files because of an unrar issue testing passwords for encrypted files, I think that part is fixable, but it would require more tarfile changes.

I think @thezoggy raised a good point about having a switch to disable sparse files; there could be some non-standard setups where a directory is a network mount or something and I'm not sure how it would cope with truncate/sparse calls.

Strictly speaking the sparse file part isn't required to fill in the gaps of missing articles since the more important change was writing articles at the correct offsets.

For SAB the main benefit of sparse files would be if there are lots of missing articles because keeping failed downloads wouldn't take up so much space, i.e. several 100MB files but we only had the last 1MB article, would mean disk allocation of ~1MB.

Rather than just being able to add more servers and retry failures I have a pipe dream of being able to take two .nzb files pointing to different uploads and SAB being able to merge them and fille the gaps with different articles because it can tell that some/all files are the same.
I'm not sure how effective it would be though if upload split sizes vary a lot.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants