Dean Herbert
c41ca10715
Allow files missing on disk to be restored on beatmap import
...
Previously, in the rare case the database became out of sync with the disk store, it was impossible to feasibly repair a beatmap. Now reimporting checks each file exists on disk and adds it back if it doesn't.
2017-09-19 18:35:52 +09:00
Dean Herbert
6eb960010f
Speed up startup cleanup operations.
2017-08-01 17:58:21 +09:00
Dean Herbert
3b1166d1e6
Optimise file lookups and other database operations
...
FirstOrDefault when called on a TableQuery with a predicate doesn't use table indices
2017-08-01 17:37:21 +09:00
Dean Herbert
9d630e446e
Use new storage methods to reset FileStore
...
Guarantees that backing files are cleaned up correctly. Also handles lingering "beatmaps" directory from older builds.
2017-08-01 10:57:46 +09:00
Dean Herbert
821f65c381
Actually delete files
2017-08-01 10:24:12 +09:00
Dean Herbert
c73e139954
Add "migration"
...
Also simplify initial migration for BeatmapStore by just nuking everything.
2017-08-01 10:24:04 +09:00
Dean Herbert
c060d32765
Separate out startup tasks to ensure they run after migrations
2017-08-01 10:24:00 +09:00
Dean Herbert
404497fa10
Allow a single beatmap to reference the same file multiple times
...
This fixes incorrect reference counts causing database desync.
2017-07-31 21:49:57 +09:00
Dean Herbert
6f4efbeda6
Merge remote-tracking branch 'upstream/master' into database-tidy
2017-07-27 17:41:29 +09:00
Dean Herbert
996e5e8b4a
Use SHA2 for hashing
2017-07-27 17:40:08 +09:00
Dean Herbert
5f53426a9a
*Database -> *Store
...
Welcome back BeatmapManager
2017-07-27 16:56:41 +09:00