Corda 科尔达州立大学学员名单重要性

Corda 科尔达州立大学学员名单重要性,corda,Corda,我正在开发一个cordap,它涉及三方(节点),即:。A、 B,C 有两个流程,如下所示: 流程1:A到B发行流程 状态对象中参与者字段的值:listOf(A,B) 结果:最新状态在节点A和节点B中可见 流量2:B到C传输流量 状态对象中参与者字段的值:listOf(B,C) 结果: 最新状态在节点B和节点C中可见 节点A中没有可见的状态:-((节点A应该显示其在流1中获取的状态。是否应该?) 我的问题是,即使甲方未参与流程2,分类账更新是如何在节点A上发生的,以及为什么其状态不可见 注意:

我正在开发一个cordap,它涉及三方(节点),即:。A、 B,C

有两个流程,如下所示:

流程1:A到B发行流程

状态对象中参与者字段的值:listOf(A,B)

结果:最新状态在节点A和节点B中可见


流量2:B到C传输流量

状态对象中参与者字段的值:listOf(B,C)

结果:

  • 最新状态在节点B和节点C中可见
  • 节点A中没有可见的状态:-((节点A应该显示其在流1中获取的状态。是否应该?)

  • 我的问题是,即使甲方未参与流程2,分类账更新是如何在节点A上发生的,以及为什么其状态不可见

    注意: 要获取状态,我在每个节点上运行以下命令:

    run vaultQuery contractStateType: com.example.Mystate
    

    如果节点A不再是参与者,则不应再具有该状态

    the vault will store the state if it is one of the participants
    

    节点A上的分类账将状态标记为已使用,并将节点A从参与者列表中删除。只有参与者列表中的标识在其分类账/数据库上才应具有未使用状态


    状态和事务是不同的。节点A应该仍然保持流1中的历史事务不变。但是,由于流2更改了参与者,节点A应该不能再使用/查看最新的未使用状态。

    当您在节点A上运行查询时,您看到的是流2的发送,情况不应该是这样。或者你想让节点A看到在流2中发生的tx吗?我对corda的理解是,节点A应该有它的状态(在流1中获得)在流2运行后保持原样。但是,当我在节点A上运行查询时,没有显示任何状态。是的,因为节点A不涉及流2,节点A不应该看到流2中发生的tx。请告诉我这是否有意义。@Kid101更新了问题,以便更清楚地了解我面临的问题。请看一看。是的。第二次传输saction将被存储(因为它使用a是参与者的状态),但是第二个状态将被忽略,因为它不涉及a。@joel这很有帮助。谢谢。