同一块的 2 笔交易可以更新相同的状态密钥吗?
Can 2 transactions of the same block update the same state key?
我认为答案是否定的,但我想确认一下。
使用 Fabric,背书者根据最新状态模拟交易并准备添加读写密钥集的提案。
在提交阶段,对等点将从排序服务接收一个块,并且只有在读取集尚未更新(版本控制检查)时才应用写入集更新。
所以对于同一个区块,同一个key不能被同一个区块的2个不同交易更新。
如果是这样,聚合价值和维持链上平衡对于频繁的交易用例来说可能会有问题。这种操作应该留给链下应用层。
所以对于同一个区块,同一个key不能被同一个区块的2个不同交易更新。
以上正确。 Hyperledger Fabric 使用类似 MVCC 的模型来防止冲突(或 "double spend")。在尝试再次更新状态之前,您需要等待之前的状态更改事务提交。
我认为答案是否定的,但我想确认一下。
使用 Fabric,背书者根据最新状态模拟交易并准备添加读写密钥集的提案。 在提交阶段,对等点将从排序服务接收一个块,并且只有在读取集尚未更新(版本控制检查)时才应用写入集更新。 所以对于同一个区块,同一个key不能被同一个区块的2个不同交易更新。
如果是这样,聚合价值和维持链上平衡对于频繁的交易用例来说可能会有问题。这种操作应该留给链下应用层。
所以对于同一个区块,同一个key不能被同一个区块的2个不同交易更新。
以上正确。 Hyperledger Fabric 使用类似 MVCC 的模型来防止冲突(或 "double spend")。在尝试再次更新状态之前,您需要等待之前的状态更改事务提交。