首页 火币中国文章正文

Filecoin网络v1.16.0升级说明

火币中国 2022年07月12日 12:12 168 Connor

这是Lotus 的一个强制升级发布版本,它引入了Filecoin network v16(等组件。

在进行升级后,你的lotus节点将会以原子性的方式,从传统的虚拟机(依赖于go的spec-actor 合约)切换到Filecoin虚拟机FVM (使用基于Rust的内建actors合约)。

Skyr升级引入了如下的FIP改进提议、升级和漏洞修复,这些都在built-actors v8()里实现了:

FIP-0030 引入FVM ()

FIP-0031 原子性地切换到不可编程的FVM虚拟机()

FIP-0032 针对不可编程的FVM的Gas Fee模型调整 ()

FIP-0027 Gas模型匹配不可编程的FVM虚拟机 ()

ProveReplicaUpdates方法漏洞修复 ()

SnarkPack新的证明版本()

须知

Actor Code CIDs

就如FIP-0031- structure of the code cid(将会是真的内容寻址方式。

对lotus用户来说,我们的改变对你的影响已经降到最低了。这意味着当你运行 lotus state get-actor 时,相应的CODE输出会是能代表该actor合约可执行代码的实际CID,跟随着会有以前出现过的那种合成ID,如fil/8/system。

展开全文

这还意味着在将来,当actor合约代码改变时,相应的CID会随之改变,这时候就需要进行网络升级,让网络的参与者就系统actors该使用什么可执行代码的问题上,达成相应的共识。

Built-in actor bundles

随着网络引入FVM,它也从以GoLang 编写的spec-actor 切换到built-in actor(,从而让节点保持运行。

为所有网络(mainnet, calibnet等)设置的bundles,已被包含到 lotus源代码树(build/actors/)里,并在构建时已经嵌入。根据你将要构建的网络版本,Lotus会在构建&升级的时候,对比build/builtin_actors_gen.go里的值,来验证bundle CIDs的正确性。你也可以运行lotus state actor-cids --network-version 16,来使用检查bundle manifest CID是否与bundle gen-ed值匹配。

使用v8.0.0 bundle的nv16网络版本,其 manifest CID 及 actor code CIDs的完整列表应为如下:

所有的bundles都可在 并放置到正确的路径里。

注意:使用定制的bundle会有与网络不同步的风险!

如下方式可获取Code CIDs:

api:StateActorCodeCIDs

cli: lotus state actor-cids

cli: lotus-shed cid inspect-bundle

执行追踪

对依赖于我们的lotus 执行追踪(execution trace )的开发者而言,你将需要使能 LOTUS_VM_ENABLE_TRACING 环境变量,来获取与之前完全一样的执行追踪信息。否则,Subcall 细节和DurationandGasCharges` 栏目将不会出现在新的 FVM trace追踪信息里。

Deal Proposal迁移

所有在元数据存储里使用非utf8字符串作为标签的deal proposals,将执行一个轻量迁移到新的格式,就如v1.1.1()所定义的。

其他

在完整的daemon 节点上,资源管理器现在默认开启了。在其他节点上,也可以通过手动设置环境变量var LOTUS_RCMGR至1的方式手动开启。

Fix: drand: Filecoin epochs 轮次计算Filecoin epochs (filecoin-project/lotus#8606)

依赖升级

chore: deps: 升级到go-libp2p v0.19.4 (filecoin-project/lotus#8801)

github.com/filecoin-project/go-fil-markets (v1.20.1 -> v1.20.1-v16-2):

github.com/filecoin-project/go-legs (v0.3.7 -> v0.3.10):

github.com/filecoin-project/go-state-types (v0.1.8 -> v0.1.10):

github.com/filecoin-project/specs-storage (v0.2.4 -> v0.4.1):

注:Filecoin v16 Skyr升级会往主网上引入基于 WASM的 Filecoin虚拟机(FVM),它暂时是不可编程的。主网将会原子性地从当前的内置虚拟机切换到基于WASM的FVM参考架构。此外,会有一个新的gas模型被激活,能够配对实际的WASM执行开销。这次,暂时只有内置的actors会被支持。这个升级将标志着FVM虚拟机开发里程碑M1的完成。

转载:

标签: Filecoin 升级 说明 网络 1.16

发表评论

火币交易所-火币pro-火币中国大陆官方网站 备案号:川ICP备66666666号