如何将状态从链代码复制到链代码的更新版本?
How does one copy the state from a chaincode to an updated version of the chaincode?
我们目前正在试验 Hyperledger 的链代码,想知道我们如何才能访问旧版本链代码所持有的状态。
据我了解,链码创建的状态不能被其他链码访问,除非通过查询交易。但是,当需要通过发布更新版本来修复 bugs/issues 时会发生什么。我们如何才能完全访问旧链代码中的状态?
由于无法直接访问旧的链代码状态,这是否意味着我们必须在链代码中构建一种允许其状态为 downloaded/copied/forked 的机制?
当数据分散在多个版本的链代码中时,从旧链代码查询旧数据将是一场噩梦。
我现在没有任何文档支持这一点,但 Fabric v1.0 似乎有此功能的变体 - 带有一个名为“upgrade”的新开关。
自己没有试过。所以不知道状态是否可以跨同一链码的不同版本使用。 link 损坏的原因是同一链码的两个版本之间的链码 ID 不同。
看看这个 YouTube 视频,Upgrade Chaincode。 (请注意,此视频使用开发模式,因此Chaincode可以使用给定的名称来引用,例如mycc)
另请参阅此处的面料功能增强计划以提及此功能Fabric next, presentation
我们目前正在试验 Hyperledger 的链代码,想知道我们如何才能访问旧版本链代码所持有的状态。
据我了解,链码创建的状态不能被其他链码访问,除非通过查询交易。但是,当需要通过发布更新版本来修复 bugs/issues 时会发生什么。我们如何才能完全访问旧链代码中的状态?
由于无法直接访问旧的链代码状态,这是否意味着我们必须在链代码中构建一种允许其状态为 downloaded/copied/forked 的机制?
当数据分散在多个版本的链代码中时,从旧链代码查询旧数据将是一场噩梦。
我现在没有任何文档支持这一点,但 Fabric v1.0 似乎有此功能的变体 - 带有一个名为“upgrade”的新开关。 自己没有试过。所以不知道状态是否可以跨同一链码的不同版本使用。 link 损坏的原因是同一链码的两个版本之间的链码 ID 不同。 看看这个 YouTube 视频,Upgrade Chaincode。 (请注意,此视频使用开发模式,因此Chaincode可以使用给定的名称来引用,例如mycc)
另请参阅此处的面料功能增强计划以提及此功能Fabric next, presentation