Exception Storm dprc thrift7.transport.t传输异常:帧大小(1213486160)大于最大长度(1048576)!

Exception Storm dprc thrift7.transport.t传输异常:帧大小(1213486160)大于最大长度(1048576)!,exception,thrift,apache-storm,Exception,Thrift,Apache Storm,我使用storm 0.10.0部署DRPCTopology到storm集群,但具有ttTransportException 代码是: DRPCClient client = new DRPCClient(map, "10.10.5.92", 3774, 5000); System.out.println(client.execute("match-drpc", "cat")); 错误是: Exception in thread "main" org.apache.thrift7.transpo

我使用storm 0.10.0部署
DRPCTopology
到storm集群,但具有
ttTransportException

代码是:

DRPCClient client = new DRPCClient(map, "10.10.5.92", 3774, 5000);
System.out.println(client.execute("match-drpc", "cat"));
错误是:

Exception in thread "main" org.apache.thrift7.transport.TTransportException: Frame size (1213486160) larger than max length (1048576)!
    at org.apache.thrift7.transport.TFramedTransport.readFrame(TFramedTransport.java:137)
    at org.apache.thrift7.transport.TFramedTransport.read(TFramedTransport.java:101)
    at org.apache.thrift7.transport.TTransport.readAll(TTransport.java:86)
    at org.apache.thrift7.protocol.TBinaryProtocol.readAll(TBinaryProtocol.java:429)
    at org.apache.thrift7.protocol.TBinaryProtocol.readI32(TBinaryProtocol.java:318)
    at org.apache.thrift7.protocol.TBinaryProtocol.readMessageBegin(TBinaryProtocol.java:219)
    at org.apache.thrift7.TServiceClient.receiveBase(TServiceClient.java:69)
    at backtype.storm.generated.DistributedRPC$Client.recv_execute(DistributedRPC.java:106)
    at backtype.storm.generated.DistributedRPC$Client.execute(DistributedRPC.java:92)
    at backtype.storm.utils.DRPCClient.execute(DRPCClient.java:59)

您需要在
storm.yaml
文件中增加
nimbus.thrift.max\u buffer\u size
。然后,重新启动群集(否则,不考虑新值)。

1213486160不是实际的数据包长度。它是ASCII“HTTP”,被解释为32位大端整数。您的“DRPClient”所说的不是您所期望的协议,而是一个web服务器。

与此问题有关,但是它的拉取请求没有全部合并,因此默认的传输插件仍然是旧的(
SimpleTransportPlugin

添加以下配置为我修复了Storm v 1.0.2中的问题(应该也适用于0.10.x)


storm.thrift.transport:“org.apache.storm.security.auth.plain.PlainSaslTransportPlugin”

您更新了哪个
storm.yaml
?你能检查WebUI中的参数吗(它显示了Nimbus拾取的参数)。是的,它会改变WebUI,但在版本0.10.0下不工作。我使用的是storm 0.9.6,而不是你的版本。。。你是自己安装Storm的吗?或者和你的管理员谈谈。如果StormUI显示节俭缓冲区大小的值大于1213486160,但仍然不起作用,我不知道如何解决这个问题。。。(可能尝试将其增加到两个值的幂。)您配置了什么值?还是和以前一样的错误吗?谢谢!我已经解决了,当我删除所有磁盘和zookeeper数据并重新安装时,错误消失了。