[
https://issues.apache.org/jira/browse/ZOOKEEPER-5084?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
李浩_ updated ZOOKEEPER-5084:
---------------------------
Attachment: image-2026-09-01-16-45-40-142.png
Description:
{*}问题描述:{*}存在网络异常的环境,zk1初始作为主节点,zk2与主节点断连长时间后,重新建立连接,由于数据落后较多,zk1向zk2同步快照,后续继续写入事务,txnlog中必然存在数据空洞。后面zk1退出,zk2选为主,zk3网络恢复后连接zk2,zk2检测到peerLastZxid<minCommittedLog,并且peerLastZxid位于txnlog数据空洞之间,zk2先向zk3同步TRUNC数据,再同步DIFF数据,导致zk3在内存和持久化数据都存在数据空洞,与其他节点数据不一致。
!https://tianzhou.huawei.com/smartdm/fileservice/group4/M00/11/3C/B-GoGGqEKZmAVKLiAAC3i2E_EE8321.png!
*相关日志打印:*
!image-2026-09-01-16-45-40-142.png!
> zk主节点向从节点同步数据空洞,导致从节点数据与其他节点不一致
> -------------------------------
>
> Key: ZOOKEEPER-5084
> URL: https://issues.apache.org/jira/browse/ZOOKEEPER-5084
> Project: ZooKeeper
> Issue Type: Improvement
> Reporter: 李浩_
> Priority: Major
> Attachments: image-2026-09-01-16-45-40-142.png
>
>
> {*}问题描述:{*}存在网络异常的环境,zk1初始作为主节点,zk2与主节点断连长时间后,重新建立连接,由于数据落后较多,zk1向zk2同步快照,后续继续写入事务,txnlog中必然存在数据空洞。后面zk1退出,zk2选为主,zk3网络恢复后连接zk2,zk2检测到peerLastZxid<minCommittedLog,并且peerLastZxid位于txnlog数据空洞之间,zk2先向zk3同步TRUNC数据,再同步DIFF数据,导致zk3在内存和持久化数据都存在数据空洞,与其他节点数据不一致。
> !https://tianzhou.huawei.com/smartdm/fileservice/group4/M00/11/3C/B-GoGGqEKZmAVKLiAAC3i2E_EE8321.png!
> *相关日志打印:*
> !image-2026-09-01-16-45-40-142.png!
--
This message was sent by Atlassian Jira
(v8.20.10#820010)