【发布时间】:2018-02-01 15:43:58
【问题描述】:
我相信答案是否定的,但我想确认一下。
使用 Fabric,背书者根据最新状态模拟交易,并准备添加读取和写入密钥集的提案。 在提交阶段,peer 将收到来自排序服务的块,并且仅当读取集尚未更新时才应用写入集更新(版本控制检查)。 所以对于同一个区块,同一个区块的2个不同交易不能更新同一个key。
如果是这种情况,聚合价值和保持链上的平衡对于频繁交易的用例可能会有问题。这样的操作应该留给链下应用层。
【问题讨论】:
我相信答案是否定的,但我想确认一下。
使用 Fabric,背书者根据最新状态模拟交易,并准备添加读取和写入密钥集的提案。 在提交阶段,peer 将收到来自排序服务的块,并且仅当读取集尚未更新时才应用写入集更新(版本控制检查)。 所以对于同一个区块,同一个区块的2个不同交易不能更新同一个key。
如果是这种情况,聚合价值和保持链上的平衡对于频繁交易的用例可能会有问题。这样的操作应该留给链下应用层。
【问题讨论】:
所以对于同一个区块,同一个key不能被同一个区块的2个不同事务更新。
以上是正确的。 Hyperledger Fabric 使用类似 MVCC 的模型来防止冲突(或“双花”)。在尝试再次更新状态之前,您需要等待上一个状态更改事务提交。
【讨论】: