问题描述
我了解到,脱链工作人员在wasm环境中进行操作,但是它是确定性wasm运行时的独立环境。脱链工作者可以访问运行时状态(只读)。
关于发布运行时摘要,我相信基质在导入块之前会剥离这些摘要吗? (然后向后推)。我想这样做是因为在块执行期间运行时无法意识到摘要的发生。
总而言之,由于脱链工作人员正在执行块后执行,因此应提供运行后摘要。脱链工作者如何访问其引用的块的完整标头和运行后摘要?它可以访问块哈希-
fn offchain_worker(n:T :: BlockNumber){..
::: block_hash(n)
如果在执行过程中在基板运行时尝试这样做,则会收到0x0000000 ..(这是预期的)。
完整的标头和运行后摘要可用于外部索引或其他目的。我知道基材无法索引所有内容,也不需要。我只想访问引用的标头和运行后摘要。
解决方法
不幸的是,此打开的PR https://github.com/paritytech/substrate/pull/7541#issue-521035839
目前似乎不具备此功能。