https://bugs.openldap.org/show_bug.cgi?id=9360
--- Comment #1 from Howard Chu hyc@openldap.org --- (In reply to spam@markandruth.co.uk from comment #0)
I have 2 python scripts writing to a database (lmdb 0.9.26, py-lmdb 0.98) and 5-10 lua processes (with lightningmdb module which uses lmdb 0.9.22) which are long-running serving queries from the database.
The database seems fine, not corrupted, and the python writes still working all the time. But periodically (perhaps 10-20% of the time), in a way I am unable to reliably reproduce, when the lua starts up every time a query is issued txn dbi_open returns "MDB_BAD_TXN: Transaction must abort, has a child, or is invalid". A direct restart of the processes does not fix this issue, however stopping lua+python and then starting again after a 5-20s wait usually fixes the issue. This has been reproduced over multiple servers but I'm at a loss as to how to debug this any further?
You didn't specify what OS you're using. This doesn't sound like an "all hardware/systems" type of issue.
You should probably not mix versions, as a general rule.