[error] Mnesia(‘[email protected]‘): ** ERROR ** mnesia_event got {inconsistent_database, running_p

8.7-8.9日日志报错

6826+07:00 [warning] Ekka(AutoCluster): discovery did not succeed; retrying in 5000 ms
2024-08-07T21:43:52.525013+07:00 [warning] Ekka(AutoCluster): discovered nodes outside cluster: ['[email protected]','[email protected]']

emqx 用的是 erlang 的 mnesia 数据库,从 CAP 上来说它是个 CA 系统。就是说强一致性、并且不允许发生网络分片的。

mnesia 在 shutdown 的时候,发现仍然有其他节点正在工作,它就认为其他节点的数据一定是比他要新的,所以它在重新启动的时候,会首先尝试连接那些节点,如果连接不上就一直等待那些节点,目的是为了防止产生数据不一致。

8.16日志报错

running_partitioned_network

2024-08-16T15:45:35.666587+07:00 [error] Mnesia('[email protected]'): ** ERROR ** mnesia_event got {inconsistent_database, running_partitioned_network, '[email protected]'} → 此时已经出现了网络分区,导致所有AP不在线
2024-08-16T15:45:35.666710+07:00 [critical] Ekka(Monitor): Network partition detected from node