-
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
New: Release Type (Single/Multi episode and Season Pack) for Custom Formats #6567
Conversation
Alter.Table("Blocklist").AddColumn("ReleaseType").AsInt32().WithDefaultValue(0); | ||
Alter.Table("EpisodeFiles").AddColumn("ReleaseType").AsInt32().WithDefaultValue(0); | ||
|
||
Execute.WithConnection(UpdateEpisodeFiles); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This only updates episode files to keep it lighter than trying to update existing history and blocklist, though it would be possible.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I wonder if a migration timeout increase would be necessary for big libraries, since the db migration is doing some title parsing.
opt.Timeout = TimeSpan.FromSeconds(60); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Parsing should be pretty quick, but let me try and benchmark it a bit to see if that'll trigger often.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I pulled in a list of 12060 file paths and ran them through the parser, 12045 of them parsed successfully, with 15 failing for whatever reason. Total time taken was 923ms. There will be some additional overhead reading/writing from/to the DB, but I think we still have a lot of overhead here.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I had to raise it in Prowlarr when I added some db migrations altering the History table. The user reporting the issue was using FreeBSD, so I'm not fully certain if it was only a OS fluke.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What's at it in Prowlarr now? Not opposed to increasing the limit, but also, of course it's FreeBSD.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
10 mins just to be safe since the db migrations were taking 5-6 mins on some setups.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've bumped it to 5 minutes, let's see how that goes.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sounds good.
Would this allow for #6550 to be handled via CF scoring (negative score MultiEpisode, for example)? I believe there is separate handling that blocks those upgrades but it would be nice to set a preference for SingleEpisode via CF. |
No, you'd still run into things not being an upgrade for all episodes and getting rejected. |
cd2d969
to
d4e22fa
Compare
} | ||
} | ||
|
||
public class SeasonPackSpecification : CustomFormatSpecificationBase |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It doesn't matter that much at this point, but I just noticed SeasonPackSpecification
while exporting the new CF.
Ahh, I forgot to rename when I changed directions a bit. I'll fix in a separate PR with a migration to fix as well. |
Description
Adds a new CF type of
Release Type
which can be used to prefer or avoid releases based on whether they are single episode, multi-episode or season packs. The value of the release type is stored in history, blocklist and with the final episode file to prevent download loops that previously existed with release title regex matching alone.In a roundabout way it closes #3562 by embracing the lose of season/multi-episode preference that currently exists, but also adds some changes towards #5598.
Screenshots for UI Changes
Database Migration
YES - 203
Issues Fixed or Closed by this PR