同一个块的2个事务可以更新相同的状态密钥吗?

时间:2018-01-24 09:04:26

标签: hyperledger-fabric

我相信答案是肯定的,但我想要确认。

使用Fabric,代言人在最新状态下模拟事务,并准备添加读写密钥集的提议。 在提交阶段,对等体将从订购服务接收块,并且仅在未更新读取集时应用写入集更新(版本化检查)。 因此,对于同一个块,同一个密钥不能由同一个块的2个不同事务更新。

如果是这种情况,对于频繁的交易用例,聚合价值和维持平衡链可能会有问题。这种操作应留给离线应用层。

1 个答案:

答案 0 :(得分:4)

因此,对于同一个块,同一个密钥不能由同一个块的2个不同事务更新。

以上是正确的。 Hyperledger Fabric使用类似MVCC的模型来防止冲突(或者"双重花费")。在尝试再次更新状态之前,您将要等待先前的状态更改事务提交。