Closed eatnumber1 closed 1 year ago
Here's the offending block for reference. It's presumably racing with a background cleanup operation. The latter uses a simplistic locking mechanism to avoid races but the former does not. The cleanup loop already ignores deletion errors.
So it's probably fine to just disregard these errors, as you say. Alternatively it could check the same lock and skip if it's held. Any interest in contributing a fix? 😄
I use bkt in my .zshenv, which, among other things, runs on every parallel arm of a GNU parallel invocation. So I'm starting bkt in parallel many times.
Sometimes, I see:
Could this be a race between bkt invocations deleting expired data? Seems like something that could be made idempotent (... by ignoring ENOENT)?