-
Notifications
You must be signed in to change notification settings - Fork 114
Open
Description
当前平行链节点启动会从已有区块继续执行,不会对历史区块做是否和当前的bin一致的计算结果的校验。 比如一个新版本启动,不会对旧区块做校验,现在要求运维每次更新必须删除旧区块,重新执行比对block hash是否和曾经区块一致来校验。非常不方便,而且容易遗漏或犯错。
期望每次启动增加对历史区块的校验机制。如果校验失败,则panic,提示用户增加fork或其他操作。
大概实现是:
- 在当前下载层,执行层基础上增加校验层。校验和下载执行同步进行,不影响区块下载和执行,但是在没有校验完成时候暂停共识的发送。
- 对已经校验了的高度和当前bin的git 版本号绑定保存数据库,方便下次重启从上次校验高度继续校验,而不是从头校验。如果启动发现当前bin的git版本号和数据库的不一致,则从0开始校验。
Metadata
Metadata
Assignees
Labels
No labels