mirror of
https://github.com/osukey/osukey.git
synced 2025-07-01 16:29:58 +09:00
Report any error during import to the write context to allow for rollback
This commit is contained in:
@ -180,6 +180,8 @@ namespace osu.Game.Database
|
||||
try
|
||||
{
|
||||
using (var write = ContextFactory.GetForWrite()) // used to share a context for full import. keep in mind this will block all writes.
|
||||
{
|
||||
try
|
||||
{
|
||||
if (!write.IsTransactionLeader) throw new InvalidOperationException($"Ensure there is no parent transaction so errors can correctly be handled by {this}");
|
||||
|
||||
@ -197,6 +199,12 @@ namespace osu.Game.Database
|
||||
// import to store
|
||||
ModelStore.Add(item);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
write.Errors.Add(e);
|
||||
throw;
|
||||
}
|
||||
}
|
||||
}
|
||||
catch
|
||||
{
|
||||
|
Reference in New Issue
Block a user