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

Fix duplicate videos in feed group "All" #9230

Merged
merged 2 commits into from Nov 3, 2022

Conversation

Stypox
Copy link
Member

@Stypox Stypox commented Oct 27, 2022

What is it?

  • Bugfix (user facing)
  • Feature (user facing)
  • Codebase improvement (dev facing)
  • Meta improvement to the project (dev facing)

Description of the changes in your PR

In #8621 I deduplicated the queries to get feed info, but I made a mistake regarding the "All" group. The LEFT JOIN of the subscription table with the feed groups table rightfully generates multiple results for each subscription (since it is a join), but, for user-created groups, all results except for at most one are, in the end, filtered out by the first condition in the WHERE, because a subscription can appear in a group at most once. When the query was used for the "All" group, though, the first condition in the WHERE would not do anything (the reasoning behind this was to allow subscriptions independently of groups), causing duplicate subscription results to be generated (i.e. one per group the subscription belonged to). This PR fixes the problem by just making the condition on the LEFT JOIN stricter: since when we are selecting all subscriptions we don't need data about groups, the LEFT JOIN now always fails since the condition in the ON would evaluate to false when groupId=all. Therefore, since we are using a left join, it is ok for the groups table columns to not exist, and hence exactly one result gets generated.

Fixes the following issue(s)

APK testing

The APK can be found by going to the "Checks" tab below the title. On the left pane, click on "CI", scroll down to "artifacts" and click "app" to download the zip file which contains the debug APK of this PR.

Due diligence

@TobiGr TobiGr added bug Issue is related to a bug feed Issue is related to the feed labels Oct 27, 2022
Copy link
Member

@TobiGr TobiGr left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code changes lgtm

@sonarcloud
Copy link

sonarcloud bot commented Oct 27, 2022

Kudos, SonarCloud Quality Gate passed!    Quality Gate passed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 0 Code Smells

0.0% 0.0% Coverage
0.0% 0.0% Duplication

@TobiGr TobiGr merged commit c8caf48 into TeamNewPipe:dev Nov 3, 2022
This was referenced Nov 4, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Issue is related to a bug feed Issue is related to the feed
Projects
None yet
Development

Successfully merging this pull request may close these issues.

v 0.24.0 gives me double videos in feed list (when same channel in multiple channel groups)
2 participants