-
Bug
-
Resolution: Duplicate
-
Normal
-
None
-
None
-
None
So, https://beta.musicbrainz.org/label/c595c289-47ce-4fba-b999-b87503e8cb71 right now is where I found this. But I think it applies to anything that uses Data::Role::Merge:
a.) in Data::Role::EntityCacheBase we have an "after 'merge'" sub which deletes from the cache. Great!
b.) in Data::Role::Merge we override whatever merge function is created (with an empty sub), which we recognize as a hack and say that a closed ticket we wontfixed (MBS-2618) will fix, and then do the merge with an "around 'merge'".
I'm pretty sure this means that Data::Role::Merge destroys our cache flush. More sure of that given there's only two edits to that label which would concern the cache – one was an autoedit (add label, for the one that went away in the merge: https://beta.musicbrainz.org/edit/21198741 ) and the other was a merge ( https://beta.musicbrainz.org/edit/21202641 ). Third-most-recent edit that would have touched edits_pending was in 2010. Production DB has 0 for edits_pending, so it's not an edit class problem – it's changing the edits_pending correctly in the DB, it's just not clearing the cache :/
Role::InsertUpdateDelete follows a similar method for inserts, updates, and deletes.
Role::Merge is used by labels, recordings, release groups, urls, and works. Role::InsertUpdateDelete is used by oauth applications, editor oauth tokens, and genders.
- duplicates
-
MBS-7241 Non-transactional cache means the cache can sometimes fail to delete entities that are gone at the database level
- Closed