两个节点可以具有不同的合同版本但流量相同吗?

时间:2018-08-28 09:51:20

标签: corda

如果两个节点的状态版本不同但流版本相同,是否可以通信?

我遇到的情况是网络中可能有N个节点,并且某些节点的升级速度可能比其他节点慢。

即,节点A具有ObligationV1,而节点B已升级至ObligationV2,但是在两者上均部署了相同的flow-cordapp

  1. 可以工作吗?
  2. 公共流程可以处理状态创建的不同版本吗? (假设发送/接收的顺序相同)
  3. 网络运营商/响应者可以将V1列入黑名单吗?
  4. 如果这可行,是否表示如果NodeA是发起方,NodeB是响应方,则创建的状态为V1。反之亦然,则变为V2?

1 个答案:

答案 0 :(得分:0)

1)是的,它应该可以工作。就像我们通过新的CorDapp模板看到的那样,流程独立于包含状态和合同的CorDapp。

2)是的,这应该不是问题。新状态将是不同的类型。

3)目前,白名单仅可追加。这可能会随着工作中的签名约束而改变。

4)完全由您决定-NodeB的类路径中仍将具有V1,并且可以继续创建V1状态。