Jeff King <peff@xxxxxxxx> writes: > Of the three, I actually like the client-side one to check errno the > best. The client is mostly "best effort". If it can't talk to the daemon > for whatever reason, then it becomes a noop (there is nothing it can > retrieve from the cache, and if it's trying to write, then oh well, the > cached value was immediately expired!). > > So one could argue that _every_ read error should be silently ignored. > Calling die_errno() is mostly a nicety for debugging a broken setup, but > in normal use, the outcome is the same either way (and Git will > certainly ignore the exit code credential-cache anyway). I prefer the > "ignore known harmless errors" approach, possibly because I am often the > one debugging. ;) If ECONNABORTED is a harmless error we see in > practice, I don't mind adding it to the list (under the same rationale > as the current ECONNRESET that is there). With the issue of race clearly explained, I agree that this would be the best solution for this issue. Thanks.