HuangLab-SYSU / block-emulator

MIT License
220 stars 60 forks source link

改为一个分片跑实验会有奇怪的死锁现象,目测是partition导致 #42

Open Lupinus opened 3 days ago

Lupinus commented 3 days ago

在CLPACommitteeModule的运行CLPA_Partition前加上 params.ShardNum > 1即可解决问题

iiinotlll commented 2 days ago

感谢您的反馈~

问题出现在 supervisor\committee\committee_clpa.go 的第 154~156 行。由于仅有一个分片,所以 CLPA 的划分并没有产生作用,这导致区块链系统并不会增加 Epoch,导致了下面的循环跳出条件无法达成。

for atomic.LoadInt32(&ccm.curEpoch) != int32(clpaCnt) { time.Sleep(time.Second) }

最后,感谢您提供的解决方案,我们会在近期的代码提交附上这个更新~