Fix item_rank(), torrent_rank(), freshness_rank() functions #7338
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
As it turns out there is a minor issue in the logic of the
item_rank()
,torrent_rank()
, andfreshness_rank()
functions.The crux of the problem lies in how torrents with an unspecified creation date were handled. These torrents were treated as if they were created at the Unix epoch,
1970-01-01 00:00:00
. Consequently, their freshness rank was marginally above zero and gradually decreased as their assumed "creation date" grew more distant. This led to unstable results in thetest_item_rank
, as the rank values were not constant but slowly diminishing.To resolve this issue, this PR implements a fix that ensures the freshness rank, as well as the freshness component of the composite torrent rank, is strictly zero for all torrents with unknown or invalid creation dates. This adjustment has stabilized the tests and provided more accurate results.