This started at #1046874-2: Display a message to a user when repo is locked.
We have a way to clear locks, but it's done manually an it just change the value of {versioncontrol_repositories}.lock, but it do not touch the values stored at versioncontrol entities tables as a result of the parsing process done by the backend.
So, maybe we should think on a way to remove that lock consistently, and I suppose that is going to be related with #1009164: Add transaction support for big inserts.
Comments
Comment #1
sdboyer commentedI don't see any necessary connection to #1009164: Add transaction support for big inserts. That's fundamentally about performance, this is a more generalized logic flaw.
The initial thought I had is to switch to using a timestamp in the 'locked' field, indicating when the lock was generated. That'll help us make intelligent decisions about when to clear it.
Comment #2
marvil07 commentedComment #3
marvil07 commentedHere the first step: use timestamp on repository locked database field.
Git backend naturally would need a patch, that I am attaching here for now.
Comment #4
sdboyer commentedfollowup patch
Comment #5
sdboyer commentedComment #6
marvil07 commentedMinor doc change on the vc api patch, and committed.
I also committed the change for vc git.