crossbario / crossbar

Crossbar.io - WAMP application router
https://crossbar.io/
Other
2.05k stars 274 forks source link

lmdb.LockError on multi-node, Dockerized clusters #2011

Open oberstet opened 2 years ago

oberstet commented 2 years ago

On Dockerized clusters that share zLMDB databases, eg for persistent cookie stores, when a cluster boots up it sometimes fails with lmdb.LockError

https://gist.github.com/oberstet/fdebff3a9102e614b00c77f3d9757cff

Crucially: I never saw that on non-Dockerized clusters

However, in any case, this code seems to be sth we can and should improve https://github.com/crossbario/zlmdb/blob/2ebd65a51e0ba48fb72a354bbb72591d3d27d8e4/zlmdb/_database.py#L337

Plus, try to understand what's going on. Eg what exactly does Docker change in terms of Posix filesystem semantics?

We should also test with "NFS" in the mix .. that is, a concrete NFS implementation such as Linux and AWS EFS

oberstet commented 2 years ago

see also https://github.com/crossbario/zlmdb/issues/53