Dan Balasescu
4bbff2ebf7
Merge branch 'master' into new-interfaces
2021-10-06 11:38:17 +09:00
Dan Balasescu
9491e5a547
Merge pull request #14954 from peppy/rename-result-response
...
Rename `APIRequest.Result` to `Response`
2021-10-06 10:52:33 +09:00
Dean Herbert
1e4da81120
Fix import notifications not showing correct text
2021-10-05 17:14:09 +09:00
Dean Herbert
b41fa41c85
Rename APIRequest.Result
to Response
2021-10-05 14:28:56 +09:00
Dean Herbert
1d99bc280f
Merge branch 'master' into new-interfaces
2021-10-04 20:42:40 +09:00
Dean Herbert
63f0b0c932
Rename out of place interface name
2021-10-04 16:35:55 +09:00
Dean Herbert
857000b756
Mark IPresentImports
as covariant
2021-10-04 16:29:46 +09:00
Dean Herbert
3c15ef720f
Remove setter from IHasGuidPrimaryKey
interface
2021-10-04 16:26:28 +09:00
Dean Herbert
916342c837
Merge branch 'master' into importer-returns-live
2021-10-04 16:24:26 +09:00
Dan Balasescu
aca2f0c12d
Merge pull request #14901 from peppy/model-importer-split
...
Split importer interface out of `IModelManager`
2021-10-04 16:22:29 +09:00
Dean Herbert
682fe5be78
Merge branch 'master' into realm-context-factory-safer-blocking
2021-10-02 00:30:09 +09:00
Dean Herbert
b1f9bbdc69
Merge branch 'master' into model-importer-split
2021-10-02 00:29:29 +09:00
Dan Balasescu
a620b55d55
Merge pull request #14900 from peppy/model-downloader-split
...
Split `ArchiveModelManager` into two pieces
2021-10-01 23:16:09 +09:00
Dan Balasescu
d24f89fead
Merge pull request #14906 from peppy/update-realm-context-factory
...
Refine `RealmContext` implementation
2021-10-01 22:57:03 +09:00
Dean Herbert
a32f5d44e2
Improve clarity of xmldoc
...
Co-authored-by: Dan Balasescu <smoogipoo@smgi.me>
2021-10-01 22:23:51 +09:00
Dean Herbert
d309636460
Update all EF based models to implement new read only interfaces
2021-10-01 16:55:50 +09:00
Dean Herbert
74841cf1a9
Merge branch 'update-realm-context-factory' into realm-context-factory-safer-blocking
2021-10-01 03:54:31 +09:00
Dean Herbert
b51fd00ba3
Guard against disposal in all context retrievals
2021-10-01 03:46:53 +09:00
Dean Herbert
8557530cd5
Add back main context locking
2021-10-01 03:45:00 +09:00
Dean Herbert
cfd3bdf888
Ensure realm blocks until all threaded usages are completed
2021-10-01 01:34:35 +09:00
Dean Herbert
9fa901f6aa
Refine RealmContext
implementation API
2021-09-30 23:56:38 +09:00
Dean Herbert
a2e61883e3
Initial push to use ILive
in import process
2021-09-30 22:55:25 +09:00
Dean Herbert
66409147dc
Remove duplicate interface specification
2021-09-30 19:25:08 +09:00
Dean Herbert
c05a8fc4a2
Split importer interface out of IModelManager
2021-09-30 18:52:09 +09:00
Dean Herbert
3e3b9bc963
Split out IModelDownloader
and also split apart ScoreManager
2021-09-30 18:25:20 +09:00
Dean Herbert
0a00bc7795
Split out IPostNotifications
into an interface
2021-09-30 18:21:34 +09:00
Dean Herbert
5618c9933b
Expose more pieces of ArchiveModelManager
via interfaces
2021-09-30 16:44:39 +09:00
Dean Herbert
d4310f5d9a
Move database connection string operations local
...
In line with framework changes in
https://github.com/ppy/osu-framework/pull/4793 .
2021-09-27 17:32:41 +09:00
Dean Herbert
edb1230111
Fix potential nullref throw on failed startup
2021-09-16 22:48:09 +09:00
Dean Herbert
5bb741b4e8
Remove migration of key bindings
2021-09-15 17:04:38 +09:00
Dean Herbert
fed0e15cea
Fix typo in ArchiveModelManager
2021-08-23 20:23:46 +09:00
Dean Herbert
4bf22db4ff
Attempt to reduce skin lookup overhead where file access is not required
2021-08-17 00:23:30 +09:00
Dean Herbert
d9b5f235d8
Add xmldoc explaining thread safety limitations of IModelManager
"events"
2021-08-10 17:36:59 +09:00
Dean Herbert
459f9a0465
Handle nulls and fix missing documentation
2021-07-05 21:35:37 +09:00
Dean Herbert
9c311a6d8a
Add ability to lookup multiple users at once to UserLookupCache
2021-07-05 19:56:16 +09:00
Dean Herbert
1e4beddd2d
Disable foreign key enforcing at an sqlite level
2021-07-05 15:41:48 +09:00
Dan Balasescu
b82afaddc1
Merge pull request #13767 from peppy/fix-realm-refresh-race
...
Fix thread safety of realm `Refresh` operation
2021-07-05 13:53:29 +09:00
Dean Herbert
f510ef9153
Move previousContext
assign within lock
to make things look safer
...
Not an actual requirement, but no harm.
2021-07-05 10:49:56 +09:00
Bartłomiej Dach
3291f15dcc
Mention GetForWrite()
as another alternative to Context
accesses
2021-07-04 12:08:15 +02:00
Bartłomiej Dach
b89521314f
Mention alternatives to Context
when not on update thread in xmldoc
2021-07-04 12:07:34 +02:00
Dean Herbert
3ec7dc3bb9
Update tests in line with thread safety check
2021-07-04 17:59:39 +09:00
Dean Herbert
567e9f33a9
Fix thread safety of realm Refresh
operation
...
Due to the lack of locking, there was a chance the the update thread
`context` was retrieved just before the `flushContexts` call, followed
by `.Refresh()` being run while the blocking behaviour was invoked.
This can be seen in test failures such as
https://ci.appveyor.com/project/peppy/osu/builds/39859786/tests .
As an aside, I tried multiple different methods to avoid `lock()` on the
update thread but they felt flaky. The overhead of lock when there's no
contention is reportedly around 30-50ns, so likely not of concern. We
can address it at a later point if it becomes one.
2021-07-04 16:24:43 +09:00
Bartłomiej Dach
8a23dfa6f5
Fix optimised import path buffering events without flush
2021-07-03 17:58:12 +02:00
Dean Herbert
2f1203085b
Also add logging of realm block/flush operations
2021-06-29 20:23:25 +09:00
Dan Balasescu
a9084db665
Merge pull request #13673 from peppy/import-early-checksum-abort
...
Shortcut import process to speed up duplicate imports
2021-06-28 19:55:09 +09:00
Dan Balasescu
92fcf90768
Merge branch 'master' into import-early-checksum-abort
2021-06-28 19:29:08 +09:00
Dean Herbert
d4ea73d727
Simplify disposal exceptions
2021-06-28 16:17:09 +09:00
Dean Herbert
f78cedd0e1
Reorder methods and add xmldoc for BlockAllOperations
2021-06-28 16:16:40 +09:00
Dean Herbert
90f0bc87f5
Add safety against double disposal
2021-06-28 16:12:21 +09:00
Dean Herbert
842f033522
Remove no longer necessary exception
2021-06-28 16:11:55 +09:00