We're using Mnesia in a distributed application but when running our scenario tests we observe the following:
Between 2%-7% of our scenarios fail because the DB tables don't get shared between nodes.
When new "slave" (not by API, just by function) nodes come up, we remotely call the master and add table copies, then wait for the tables. In all our failed scenarios, the tables don't get shared in time (= 2s).
Are there other factors impacting how and when tables are shared in distributed Mnesia? We've been playing with various values for the wait time but the problem has never entirely gone away.