Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

平行链启动增加对历史区块的校验机制 #1148

Open
@mdj33

Description

当前平行链节点启动会从已有区块继续执行,不会对历史区块做是否和当前的bin一致的计算结果的校验。 比如一个新版本启动,不会对旧区块做校验,现在要求运维每次更新必须删除旧区块,重新执行比对block hash是否和曾经区块一致来校验。非常不方便,而且容易遗漏或犯错。
期望每次启动增加对历史区块的校验机制。如果校验失败,则panic,提示用户增加fork或其他操作。
大概实现是:

  1. 在当前下载层,执行层基础上增加校验层。校验和下载执行同步进行,不影响区块下载和执行,但是在没有校验完成时候暂停共识的发送。
  2. 对已经校验了的高度和当前bin的git 版本号绑定保存数据库,方便下次重启从上次校验高度继续校验,而不是从头校验。如果启动发现当前bin的git版本号和数据库的不一致,则从0开始校验。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions

        AltStyle によって変換されたページ (->オリジナル) /