Commit Graph

48152 Commits

Author SHA1 Message Date
2475a62f2d Merge pull request #16518 from nekodex/participantlist-cleanup
Remove unused BDL parameter in `ParticipantList`
2022-01-19 14:59:40 +09:00
fdf65aa2ff Merge pull request #16502 from peppy/realm/remove-ef-migrations
Remove all EF migrations and helper methods
2022-01-19 14:43:45 +09:00
aa6466dfa4 Merge pull request #16499 from peppy/realm-integration/faster-migration
Improve performance of migration to realm
2022-01-19 14:43:33 +09:00
581873f944 Merge pull request #16497 from peppy/top-local-rank-optimisation
Rewrite `TopLocalRank` to use realm subscriptions
2022-01-19 14:22:12 +09:00
aa872d6363 Merge branch 'master' into participantlist-cleanup 2022-01-19 08:19:50 +03:00
58bae9bda3 Merge pull request #16331 from stanriders/continuous-effective-misscount
Don't floor `effectiveMissCount`
2022-01-19 14:13:12 +09:00
493a970ed5 Remove unused AudioManager 2022-01-19 14:08:21 +09:00
3407b34b11 Merge branch 'master' into realm/remove-ef-migrations 2022-01-19 14:01:34 +09:00
0b1736def6 Merge branch 'master' into realm-integration/faster-migration 2022-01-19 13:54:14 +09:00
3e5d29ed00 Merge pull request #16505 from peppy/remove-base-difficulty-usage
Remove all usage of `BaseDifficulty` (and access `Difficulty` instead)
2022-01-19 13:53:55 +09:00
9c8f7795b7 Merge pull request #16510 from peppy/optimise-set-detach-part-2
Avoid file retrieval overhead when detaching `BeatmapSetInfo`
2022-01-19 13:53:34 +09:00
201f2d7813 Add comprehensive test coverage for TopLocalRank 2022-01-19 13:48:00 +09:00
a0336c6fc2 Merge pull request #16495 from peppy/realm-integration/reinit-on-corrupt
Add support for starting with a fresh realm database if the existing one is not usable
2022-01-19 13:30:14 +09:00
9be5bf38c6 Simplify binding/invalidation in TopLocalRank 2022-01-19 13:20:52 +09:00
2556f1cb87 Merge branch 'master' into optimise-set-detach-part-2 2022-01-19 13:20:38 +09:00
d663fcd045 Merge pull request #16508 from peppy/optimise-set-detach
Create separate automapper configurations to reduce cyclic detach overhead
2022-01-19 13:20:25 +09:00
e60fd358d0 Merge branch 'master' into top-local-rank-optimisation 2022-01-19 13:04:14 +09:00
d440197fb3 Merge branch 'master' into realm-integration/faster-migration 2022-01-19 12:56:42 +09:00
2363130f8b Add back BaseDifficulty with obsoletion counter to account for custom rulesets 2022-01-19 12:33:56 +09:00
ad4d9789ad Merge branch 'master' into realm-integration/reinit-on-corrupt 2022-01-19 12:31:56 +09:00
f6f44029e8 Merge pull request #16507 from peppy/more-ingore-rules
Add some missing `IgnoredAttributes` to reduce automapper overhead
2022-01-19 12:26:37 +09:00
fb558a3189 Merge branch 'master' into realm-integration/reinit-on-corrupt 2022-01-19 12:26:24 +09:00
8c120c6bfb Merge pull request #16491 from peppy/realm-integration/safer-migration
Improve safety and logging of realm migration process
2022-01-19 12:23:48 +09:00
c52899b1fb Rename property 2022-01-19 11:56:44 +09:00
261b4988f9 Only catch RealmExceptions to avoid blocking the nested TimeoutException 2022-01-19 10:58:59 +09:00
195534a1d2 Only output "successful" messages when copy actually occurred 2022-01-19 10:31:13 +09:00
e1a35714be Add notification for debug builds when database migration occurs 2022-01-19 10:31:10 +09:00
04e9ffa966 Freshen some comments 2022-01-19 10:20:56 +09:00
64a023665e Avoid taking more than one backup per migration run 2022-01-19 10:20:56 +09:00
3bc091fe6d Add ignore rules on more helper properties 2022-01-19 09:46:45 +09:00
761e161eec Add comment explaining ignore rule 2022-01-19 09:44:21 +09:00
5809ce6951 Merge pull request #16490 from peppy/playlist-test-coverage
Fix `TestScenePlaylistsScreen` crashing on entering room
2022-01-18 23:47:56 +01:00
7df18c7767 Merge branch 'master' into playlist-test-coverage 2022-01-18 20:17:48 +01:00
b3983db69d Merge pull request #16511 from peppy/revert-nunit-test-adaptor 2022-01-18 20:50:54 +03:00
96d07e20ed Revert nunit test adaptor version bump until console output bug is resolved
Tests have started to output too much log content, causing viewing CI
failures to be painfully impossible. Roll back for now.

Fix may be related to
https://github.com/nunit/nunit3-vs-adapter/issues/941, although we don't
use filter.
2022-01-19 02:18:58 +09:00
1db2135d70 Update tests to match new behaviour 2022-01-19 01:05:47 +09:00
60b80c88b6 Avoid file retrieval overhead when detaching BeatmapSetInfo
It seems that no usages of `BeatmapSetInfo` detaches require files - a
`WorkingBeatmap` is always obtained before doing further lookups.

Therefore we can omit this include unless the detaching object is a
`BeatmapInfo`. A refetch is performed when retrieving a
`WorkingBeatmap` to complete the equation.
2022-01-19 00:49:18 +09:00
f2b151023e Create separate automapper configurations to reduce cyclic detach overhead
This optimises the `BeatmapSetInfo` detach operation by avoiding
detaching `BeatmapSetInfo.Beatmaps[].BeatmapSetInfo` a second time over.
2022-01-19 00:03:24 +09:00
67bf95bc91 Remove all usage of AuthorString 2022-01-18 23:30:40 +09:00
3596c6ed5d Add some missing IgnoredAttributes to reduce automapper overhead 2022-01-18 23:25:30 +09:00
7f65f3a47f Remove all usage of BaseDifficulty (and access Difficulty instead) 2022-01-18 22:57:39 +09:00
6b0bf38c93 Use a single EF context to avoid scores getting cascade deleted along the way 2022-01-18 20:47:53 +09:00
6ddd2d59d3 Remove EF helper methods 2022-01-18 20:44:26 +09:00
bb5b9458e8 Remove all EF migrations 2022-01-18 20:42:48 +09:00
f5b8653491 Add spaces to query string 2022-01-18 19:28:09 +09:00
519f7e6ad2 Don't bother with removing from EF as the file is going to be deleted anyway 2022-01-18 19:17:47 +09:00
3b0977903b Use IQueryable directly to avoid insane overheads 2022-01-18 19:17:47 +09:00
66ed4270c0 Merge pull request #16488 from peppy/global-bindable-thread-safety
Ensure global beatmap/ruleset are always mutated from the update thread
2022-01-18 19:09:15 +09:00
27ea37c690 Rewrite TopLocalRank to use realm subscriptions
This addresses the number one performance concern with realm (when
entering song select). Previous logic was causing instantiation and
property reads of every score in the database due to the `AsEnumerable`
specfication.
2022-01-18 18:17:53 +09:00
02baad30d7 Merge branch 'master' into global-bindable-thread-safety 2022-01-18 18:12:00 +09:00