我正在使用 Java Ledger Bindings 通过 Package 服务从分类帐中获取包,并收到以下错误:RESOURCE_EXHAUSTED: gRPC message exceeds maximum size
我的应用程序基于 Ping-Pong 示例应用程序,并且 daml 模型有大约 300 多个 daml 文件。
异常发生在以下代码块周围:
DamlLedgerClient client = DamlLedgerClient.forHostWithLedgerIdDiscovery(host, port, Optional.empty());
client.connect();
PackageClient packageService = client.getPackageClient();
Flowable<String> packagesIds = packageService.listPackages();
最佳答案
消息大小受 ManagedChannel
限制。用于连接 gRPC 服务器。要增加它,您必须构建和配置 ManagedChannel
对于 gRPC 自己并将其传递给 DamlLedgerClient
的构造函数.
ManagedChannel channel =
ManagedChannelBuilder
.forAddress(host,port)
.usePlaintext()
.maxInboundMessageSize(9999999)
.build();
DamlLedgerClient client = new DamlLedgerClient(Optional.empty(), channel);
关于daml - 如何处理 API 调用中的 RESOURCE EXHAUSTED 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54316767/