【问题标题】:My substrate node is not producing blocks how do i solve this?我的基板节​​点没有产生块我如何解决这个问题?
【发布时间】:2020-06-27 16:41:41
【问题描述】:

我自己实施了资金库、会话集合和 Staking 托盘。 为什么我的节点不产生块? https://github.com/noahsalvadordenjo/unprod.git

【问题讨论】:

  • 感谢您提供指向您的存储库的链接,Noah!随意在 GitHub 上标记我或在 Riot 上用这些东西的链接对我进行 ping。这是一个很好的 Stack Overflow 问题的示例stackoverflow.com/questions/62601759/…
  • 您可能想了解如何配置链规范,特别是您为质押模块的验证器计数和最小验证器计数值设置的值。我对质押模块一点也不熟悉,真的,但我认为这可能是你的问题。 github.com/noahsalvadordenjo/unprod/blob/new_branch/node/src/…

标签: substrate


【解决方案1】:

仅仅将 Staking、Elections、Session 等添加到节点模板运行时并让 NPoS 系统正常工作是不够的。

不幸的是,Substrate 节点模板使用了 AURA,这是一种权威证明共识算法,在此处定义:

https://github.com/noahsalvadordenjo/unprod/blob/new_branch/node/src/service.rs

并匹配运行时中定义的运行时组件。

如果你想从 NPoS 节点开始,我建议从这里的基础基板节点开始:

https://github.com/paritytech/substrate/tree/master/bin/node

然后从中移除您可能不使用的任何可选托盘。否则,也许您可​​以从中学习如何实现 BABE 共识而不是 AURA,但这对于新的 Substrate 开发人员来说有点超出了范围。

【讨论】:

  • 谢谢 那为什么这个节点不产生区块呢?我用 alice 和 bob github.com/noahsalvadordenjo/poa 启动了节点
  • 我看到你在这里删除了初始权限:github.com/noahsalvadordenjo/poa/commit/…你如何决定你正在改变什么?
  • 是的,但我认为会话模板会插入它们,这就是我想要完成的目标
  • 您需要一些初始权限才能开始生成初始块,否则您将永远无法超过零块,并且不会执行任何区块链逻辑。使用权威证明网络 afaik 时,会话也不能以这种方式工作。无论哪种情况,您都在进行一些更改,这些更改会破坏您的链条,因此您无法生成区块。
  • 如果有更高级别的问题可以回答以帮助您,请将其作为新的 stackoverflow 帖子打开,并包含有关您尝试做什么的详细信息和信息。您不能只发布一个存储库的链接并询问“为什么这不起作用”。获得好的答案不会有成效
猜你喜欢
  • 2021-04-02
  • 1970-01-01
  • 2022-06-14
  • 2022-10-19
  • 2021-10-10
  • 1970-01-01
  • 2019-10-14
  • 2020-03-25
  • 2020-02-14
相关资源
最近更新 更多