如果成员缺席的时间不足以将其从组中驱逐,则它可以重新连接并通过从另一个成员的 XCom 消息缓存中检索丢失的事务来再次开始参与组。但是,如果在该成员不在时发生的事务已从其他成员的 XCom 消息缓存中删除,因为已达到最大大小限制,则该成员无法以这种方式重新连接。
当当前无法访问的成员可能需要恢复的消息从消息缓存中删除时,组复制的组通信系统 (GCS) 会通过警告消息提醒您。此警告消息记录在所有活动的组成员上(每个无法访问的成员只记录一次)。尽管组成员无法确定无法访问的成员看到的最后一条消息是什么消息,但警告消息表明缓存大小可能不足以支持您选择的成员被驱逐前的等待时间。
在这种情况下,可以考虑
group_replication_message_cache_size
参考系统变量指定的时间段
group_replication_member_expel_timeout
加上5秒检测周期内的预期消息量增加限制,使缓存包含成员成功返回所需的所有错过的消息。如果您预计某个成员在异常时间段内无法访问,您还可以考虑临时增加缓存大小限制。