| hoo added a comment. |
In T159828#3163025, @daniel wrote:Thank you @hoo!
One thing that still worries me is that we don't have a mechanism for stale locks. If a dispatcher dies while holding a lock, that lock will stay until it times out (after 30 minutes, I think). So no changes will be dispatched to the respective client until the lock is gone. I currently see no good way to get around this, though. We could put information (host name and process id) about the lock holder into redis (or into the changes_dispatch table), and then actively check if the process is alive... but I don't know an easy way to do this without setting up another service.
We can set a timeout for this LockManager::lock allows that (as third argument). I don't know what would be decent here, maybe 2 or 3 minutes?
Cc: Stashbot, aude, gerritbot, aaron, Marostegui, jcrespo, Aklapper, Jonas, Lydia_Pintscher, hoo, daniel, Ladsgroup, QZanden, Salgo60, Minhnv-2809, D3r1ck01, Izno, Luke081515, Wikidata-bugs, Mbch331, Jay8g, Krenair
_______________________________________________ Wikidata-bugs mailing list [email protected] https://lists.wikimedia.org/mailman/listinfo/wikidata-bugs
