当Hyperledger Fabric智能合约调用getHistoryForKey时,它会接收特定密钥的更新。我想知道这些信息是从哪里来的?它没有存储在世界观(levelDB,CouchDB)中,因此必须从区块链中检索。智能合约是否可以访问区块链?我遗漏了什么?
发布于 2021-05-29 16:27:05
有一个setting可以启用对等体的历史数据库。它在默认情况下是启用的,并且是一个物理上独立于世界状态的数据库。
每个频道都有自己的历史数据库。历史数据库使用LevelDB (嵌入式数据库)进行存储。
历史数据库存储每个更新的key/txid/blocknum _ for。当您调用GetHistoryForKey时,它会遍历历史数据库,然后从块存储中检索值。
https://stackoverflow.com/questions/67743229
复制相似问题