milestone 16: behavioral fixes for silent failures, locks, counters and the query log
This commit is contained in:
@@ -147,9 +147,10 @@ pub fn applyDelete(state: *server.WebState, io: std.Io, id: i64) ?Failure {
|
||||
///
|
||||
/// After the reload and never part of the response: the row is gone and the
|
||||
/// snapshot has stopped enforcing the list, so bytes still on disk are not a
|
||||
/// failed delete. `Manager.pruneOrphans` takes the manager's writer lock, which
|
||||
/// the reload above has already taken and released — nothing here holds it, and
|
||||
/// `state.config_lock` was released before either.
|
||||
/// failed delete. `Manager.pruneOrphans` takes the manager's refresh lock and
|
||||
/// then its writer lock; the reload above has already taken and released the
|
||||
/// writer lock — nothing here holds either, and `state.config_lock` was
|
||||
/// released before both.
|
||||
fn pruneFiles(state: *server.WebState, io: std.Io) void {
|
||||
const manager = state.manager orelse return;
|
||||
manager.pruneOrphans(io) catch |err| {
|
||||
|
||||
Reference in New Issue
Block a user