我在应用程序中使用java-sdk,它使用java应用程序中的多个线程调用相同的链代码。 我的设置如下:
客户端(使用5个线程) - >在对等体上调用链代码(每个线程将不同的参数传递给链代码)
此执行导致由于执行
而引发错误SDKUtils.getProposalConsistencySets(Collection<ProposalResponse> proposalResponse, Set<ProposalResponse> invalid)
方法,因为该方法返回一组大小为!= 1。 (实际上这检查代码错误的位置:https://github.com/hyperledger/fabric-sdk-java/blob/edd54f832351452ef6aea3d9cb505b2f38b12711/src/test/java/org/hyperledger/fabric/sdkintegration/End2endIT.java#L589) 这表明同伴已经返回了不一致的计算结果。
之前有没有人见过这个错误?我怀疑这是由于java-sdk代码中的多线程问题,但到目前为止还无法确切地指出导致这种情况的原因。
Orderer模式:solo
BatchTimeout:2s