如何在IBM区块链云沙箱上从goleveldb迁移到CouchDb

如何在IBM区块链云沙箱上从goleveldb迁移到CouchDb,couchdb,hyperledger,hyperledger-fabric,Couchdb,Hyperledger,Hyperledger Fabric,我用它们在IBM容器服务的免费计划上建立了一个区块链网络。但它默认连接到leveldb。如何将其迁移到CouchDB以便执行复杂查询? 现在使用leveldb,当我实现查询并调用它时,我得到以下错误 { “错误”:{ “状态代码”:500, “名称”:“错误”, “消息”:“尝试查询链码时出错。错误:链码错误(状态:500,消息:错误:leveldb不支持ExecuteQuery)”, “堆栈”:“错误:尝试查询链码时出错。错误:链码错误(状态:500,消息:错误:leveldb不支持Execu

我用它们在IBM容器服务的免费计划上建立了一个区块链网络。但它默认连接到leveldb。如何将其迁移到CouchDB以便执行复杂查询? 现在使用leveldb,当我实现查询并调用它时,我得到以下错误

{ “错误”:{ “状态代码”:500, “名称”:“错误”, “消息”:“尝试查询链码时出错。错误:链码错误(状态:500,消息:错误:leveldb不支持ExecuteQuery)”, “堆栈”:“错误:尝试查询链码时出错。错误:链码错误(状态:500,消息:错误:leveldb不支持ExecuteQuery)\n位于channel.queryByChaincode.then.catch(/usr/local/lib/node\u modules/composer rest server/node\u modules/composer-connector-hlfv1/lib/hlfconnection.js:782:34)” } }


我不确定您的IBM区块链帐户提供了什么样的访问,让我从结构的角度回答这个问题。 您需要为每个对等方启动1个CouchDB容器(hyperledger fabric CouchDB有图像),并更改对等方配置,以便1)statedb为CouchDB,2)为对等方提供CouchDB容器的地址。 所有这些都可以通过更改docker compose文件来完成(假设您正在使用docker compose文件)
有关详细信息,请参阅

IBM Bluemix starter计划不允许修改网络配置。因此,在引导时旋转coach db实例不是一个选项。 如果链码是用go编写的,而struct是用docStructure定义的:

类型大理石结构{ ObjectType字符串
json:“docType”
名称字符串
json:“名称”
颜色字符串
json:“颜色”
Size int
json:“Size”
所有者字符串
json:“所有者”
}


区块链服务将自动旋转Coach db实例

我也有同样的问题,这甚至不能远程解决这个问题。它基本上说你应该使用沙发,问题是我如何在BlueMix上使用沙发。