1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-15 06:52:56 +08:00
Commit Graph

292 Commits

Author SHA1 Message Date
Dean Herbert
a0a65abcac Crentalise all import logic 2018-02-15 14:22:39 +09:00
Dean Herbert
d3dd31dadb Make deletion and purging logic even more global 2018-02-15 14:22:39 +09:00
Dean Herbert
d340509b1d Move ArchiveReaders to a more global namespace
Also moves delete and action logic to a shared implementation
2018-02-15 14:22:39 +09:00
Dean Herbert
6ff63c2f0c Move deletion to ArchiveModelImportManager 2018-02-15 14:22:39 +09:00
Dean Herbert
e0d28564d0 Move import logic to shared implementation 2018-02-15 14:22:39 +09:00
Dean Herbert
50cdb03cd9 Don't dispose read contexts 2018-02-13 15:08:45 +09:00
Dean Herbert
ab34123ba8 Remove unnecessary class variable 2018-02-13 15:05:19 +09:00
Dean Herbert
a738664167 Add interface for database context factory 2018-02-12 23:10:05 +09:00
Dean Herbert
64cda9fd0f Remove incorrect assert assumption 2018-02-12 22:16:09 +09:00
Dean Herbert
8b37fde15b Only write when writes occur
Also add finaliser logic for safety. Also better threading. Also more cleanup.
2018-02-12 19:57:21 +09:00
Dean Herbert
edc3638175 DatabaseWriteUsage 2018-02-12 17:55:11 +09:00
Dean Herbert
e54de0c267 Remove sqlite-net migration
Anyone that may have benefited from this already has.
2018-02-12 15:25:09 +09:00
Dean Herbert
03154dbc63 Fix incorrect initial migration
Also adds variant to settings
2018-01-25 23:41:03 +09:00
Dean Herbert
5a00ae36d1 Add database-based configuration for rulesets 2018-01-24 17:45:28 +09:00
Dean Herbert
37d393bca0 Update licence headers 2018-01-05 20:21:19 +09:00
Dean Herbert
d02e1ae896 Update RulesetInfo and add migration 2017-12-10 12:15:55 +09:00
Dean Herbert
85827f83eb Perform a reload on objects when Refreshing them
Previously, it was possible for an object to be "refreshed" with a stale cached state from the current thread's context.

This ensures a check against the database is performed as well.

Resolves #1562.
2017-11-23 17:04:39 +09:00
Dean Herbert
7d2bbc50a3 Add unique constraint on OnlineBeatmapID 2017-11-19 01:45:17 +09:00
smoogipoo
04b271cce9 Migrate osu.Game project to VS2017 project structure 2017-10-30 22:24:11 +09:00
Dean Herbert
ead3ca1f27 Merge branch 'master' into fix-threaded-context-issues 2017-10-25 23:42:08 +09:00
Dean Herbert
6f7ba55f80 Fill out xmldoc 2017-10-25 22:19:47 +09:00
Dean Herbert
c1d133977e FirstOrDefault -> SingleOrDefault 2017-10-25 22:17:17 +09:00
Dean Herbert
5001e9f264 Fix Hide/Restore/Delete etc. 2017-10-25 22:08:34 +09:00
Dean Herbert
8452e315f4 Allow "refreshing" instances via DatabaseBackedStore 2017-10-25 22:06:25 +09:00
Dean Herbert
487b888f4f Add missing database indices
Also add missing unique constraints where applicable.
2017-10-25 22:05:10 +09:00
Dan Balasescu
05e1a7a5f8 Merge branch 'master' into online-beatmap-id-sanity 2017-10-25 21:38:33 +09:00
TocoToucan
5107489cda Remove DatabaseBackedStore Reset functions 2017-10-25 15:12:14 +03:00
TocoToucan
63fe569afa Remove DatabaseBackedStore Prepare functions 2017-10-25 14:53:20 +03:00
Dean Herbert
66f1d2fb2e Ensure all parsed "Online" IDs are above zero or null
Some .osu file sources (or database sources) may be in a bad state. We want to get these ones right as they cannot be enforced by the database itself (via FKs or constraints).
2017-10-25 14:34:39 +09:00
Dean Herbert
22b3f5dd19 Merge remote-tracking branch 'upstream/master' into import-test-fixes 2017-10-23 22:03:37 +09:00
Dean Herbert
dc9c474033 Move all TestCases to Testing project
This allows tests to successfully retrieve rulesets, as they are referenced.
2017-10-23 19:32:02 +09:00
Dean Herbert
1a3debc91d Ensure thread safety on shared contexts
Let's call this one temporary.
2017-10-23 17:56:04 +09:00
Dean Herbert
df20845fbb Share one context per file store for performance reasons
There is now a CreateContext method for retrieving a stand-alone context for threaded use.

We may want to add safety against this context being disposed (or just return a fresh one if it is).
2017-10-23 16:35:35 +09:00
Dean Herbert
4a68dd88cb Centralise BeginTransaction and disable transaction use for now 2017-10-23 14:53:13 +09:00
Dean Herbert
61c1dd3636 Don't output database logs unless DEBUG_DATABASE is specified compile-time 2017-10-22 19:46:08 +09:00
Dean Herbert
1514d8451e Use a more elegant method of setting the connection timeout 2017-10-22 16:20:04 +09:00
Dean Herbert
29fcd210aa Centralise transaction committing 2017-10-22 16:17:40 +09:00
Dean Herbert
39b356880e Fix typo 2017-10-22 15:32:47 +09:00
Dean Herbert
6818ebdaff Change the way migrations are checked for
This method allows switching between sqlite-net and EF builds without completely breaking. Note that DB migration still only happens in a forward direction, but this will allow switching back and forth without eventually being unable to start the game.
2017-10-22 15:27:16 +09:00
Dean Herbert
47213d2498 Rely on storage.DeleteDatabase for guaranteed database deletion
Relies on https://github.com/ppy/osu-framework/pull/1100 being merged for most effectiveness.
2017-10-21 00:15:02 +09:00
Dean Herbert
d32059a7ba Ignore include-ignore warnings for now 2017-10-20 09:25:54 +09:00
Dean Herbert
ca78078436 Add more logging output 2017-10-20 08:06:07 +09:00
Dean Herbert
efaf98c5cf Allow recovery from a very broken database 2017-10-20 00:48:27 +09:00
Dean Herbert
d9fd05a5af Hidden cannot be null 2017-10-19 23:19:30 +09:00
Dean Herbert
8aea6068ba Add fallback logic for the case where previous database can't be migrated 2017-10-19 21:37:09 +09:00
Dean Herbert
1672e0d6b6 Add fallback logic in case migration fails
Nuke it all.
2017-10-19 21:11:43 +09:00
Dean Herbert
1fbbee14e4 Allow migration from sqlite-net to EF
Bonus stage
2017-10-19 20:04:59 +09:00
Dean Herbert
f7d0df1743 Fix beatmap difficulty and metadata deletion 2017-10-19 17:50:46 +09:00
Dean Herbert
b02dd196f6 Don't make one factory each context
A factory is supposed to be re-used.
2017-10-19 17:29:39 +09:00
Dean Herbert
36c00577af Reduce database log output
Also hard-disables it for uninteresting log levels, providing a further performance boost.
2017-10-19 16:35:06 +09:00