如何从IBM Blockchain云沙箱上的goleveldb迁移到CouchDb

时间:2017-08-17 13:32:25

标签: couchdb hyperledger hyperledger-fabric

我使用这些instructions在IBM Container Service的免费计划中设置了Blockchain网络。但它默认连接到leveldb。如何将其迁移到CouchDB以便我可以执行复杂的查询? 现在使用leveldb,当我实现查询并调用它时,我得到以下错误

  

{     “错误”:{       “statusCode”:500,       “名字”:“错误”,       “message”:“尝试查询链码时出错。错误:链码错误(状态:500,消息:错误:leveldb不支持ExecuteQuery)”,       “stack”:“错误:尝试查询链码时出错。错误:链码错误(状态:500,消息:错误:leveldb不支持ExecuteQuery)\ n在channel.queryByChaincode.then.catch(/ usr / local / lib / node_modules /作曲家静止服务器/ node_modules /作曲家连接器-hlfv1 / LIB / hlfconnection.js:782:34)”     }   }

2 个答案:

答案 0 :(得分:0)

IBM Bluemix入门计划不允许修改网络配置。因此,在引导时旋转沙发数据库实例不是一种选择。 如果链代码是用go编写的,并且struct是使用docStructure定义的:

型大理石结构{     ObjectType字符串json:"docType"     名称字符串json:"name"     颜色字符串json:"color"     大小int json:"size"     所有者字符串json:"owner" }

区块链服务将自动旋转沙发数据库实例

答案 1 :(得分:-1)

我不确定您的区块链IBM帐户提供什么样的访问权限,让我从Fabric视角回答它。 你需要为每个对等设备启动1个CouchDB容器(有hyperledger-fabric-couchdb的图像),并更改对等配置,以便1)声明为CouchDB,2)将CouchDB容器的地址提供给对等体。 所有这些都可以通过更改docker compose文件来完成(假设你使用的是) 有关更多具体细节,请参阅http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html#using-couchdb