我正在尝试部署带有ouchdb索引的链码,但是它不起作用。 我使用Hyperledger织物2.0版Alpha,并且链代码可以使用了。
这是我的索引
{"index":{"fields":["price"]},"ddoc":"indexPriceDoc", "name":"indexPrice","type":"json"}
这是文件夹结构: chaincode \ META-INF \ statedb \ couchdb \ indexes \ indexPrice.json
这是我链码中的查询
queryString := fmt.Sprintf("{\"selector\":{\"timeSlot\":\"%s\"},\"sort\":[{\"price\":\"asc\"}], \"use_index\":[ \"indexPriceDoc\",\"indexPrice\" ]}", subscribe.TimeSlot)
iterator, err := stub.GetQueryResult(queryString)
在我的日志文件中执行查询时,我发现此错误:
2019-06-12 09:59:05.714 UTC [shim] handleGetQueryResult -> ERRO 005 [0f072238] Received ERROR
2019-06-12 09:59:05.714 UTC [offer] Error -> ERRO 006 Error querying offers: GET_QUERY_RESULT failed: transaction ID: 0f072238990b15b22696060305140880c6694028c1fac300511090f433dc2583: error handling CouchDB request. Error:no_usable_index, Status Code:400, Reason:No index exists for this sort, try indexing by the sort fields.
怎么了?
答案 0 :(得分:1)
关闭网络,然后重新安装并实例化带有索引的链码。 设置多个索引时,我也面临同样的问题。