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

Simplify realm model tracking in BeatmapCarousel (and fix hard delete handling) #28769

Merged
merged 5 commits into from
Jul 8, 2024

Conversation

peppy
Copy link
Member

@peppy peppy commented Jul 8, 2024

This implements a simplification touched on in inline todo commentary by storing a list of GUIDs so we can properly track realm deletions (without needing to double-up on subscriptions).

Why did I do this now? It turns out we have never been handling hard deletions correctly, and this change resolves that issue. We use hard deletions in the ImportAsUpdate flow which I'm relying on for editor beatmap filesystem mounting, and this issue was blocking the ability to reliably reload the beatmap.

Passes existing tests and some stress testing of my own. The only potential issue could be that beatmapsChanged is now fired more often (on any change to a beatmap in realm), but I can't seem to have this cause an issue.

f5ef3ca is optional but just felt more correct.

Copy link
Collaborator

@bdach bdach left a comment

Choose a reason for hiding this comment

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

seems to make sense to me

@peppy peppy merged commit c100d1a into ppy:master Jul 8, 2024
15 of 17 checks passed
@peppy peppy deleted the carousel-realm-simplification branch July 10, 2024 09:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants