diff --git a/ObjectService/RouteHandlers/TableHandlers/ObjectRouteHandler.cs b/ObjectService/RouteHandlers/TableHandlers/ObjectRouteHandler.cs index 8174ef7c..19144a69 100644 --- a/ObjectService/RouteHandlers/TableHandlers/ObjectRouteHandler.cs +++ b/ObjectService/RouteHandlers/TableHandlers/ObjectRouteHandler.cs @@ -252,6 +252,12 @@ static async Task CreateDatAsync(DtoObjectPost request, [FromServices] if (db.DoesObjectExist(hdrs.S5.Name, hdrs.S5.Checksum, out var existingObject)) { // todo: if we get here - the object doesn't exist but the dat object does - we should then link them + // save changes first to persist any missing object removal + if (missingEntry != null) + { + _ = await db.SaveChangesAsync(); + } + return Results.Accepted($"Object already exists in the database. DatName={hdrs.S5.Name} DatChecksum={hdrs.S5.Checksum} UploadedDate={existingObject!.UploadedDate}"); }