首页 > 解决方案 > Corda - 当修改后的合约被集成到网络中时,具有未消费状态的交易会发生什么?

问题描述

我已经使用“Yo!CorDapp”示例(https://github.com/corda/spring-observable-stream)在 Corda 平台的 release-v1 上构建了一个 CorDapp。

CorDapp 有四个节点——控制器节点(提供网络地图服务和验证公证服务)、“节点 A”、“节点 B”和“节点 C”。以下是应用程序中定义的流程 -

流程1:“节点A”向“节点B”发送交易请求。还通知“节点 C”。

流程 2:“节点 B”批准交易请求,自签名,获得 A 的签名并关闭交易。还通知“节点 C”。

请考虑以下情况 -

Step 1. 创建由节点 A 发起且仍需节点 B 批准的交易记录。

Step 2. 修改合约代码并集成到corda网络中

修改后的合约整合后Node B可以批准交易吗?

标签: corda

解决方案


在升级合同之前应该排空流量。

另外,验证交易的合同附加到交易中。因此,如果交易被构建并发送给另一方签名,他们将从交易中检索附件并对其进行验证。

即使他们有另一个版本的合同,也不会被使用。

话虽如此,排干流量仍然是重要的一步(至少目前如此)。如果在流程等待执行时升级,可能会出现其他问题。


推荐阅读