You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@cassandra.apache.org by Kalyan Chakravarthy <fu...@gmail.com> on 2018/11/05 18:00:15 UTC

Exception when running sstableloader

I’m trying to migrate data between two clusters on different networks. Ports: 7001,7199,9046,9160 are open between them. But port:7000 is not open. When I run sstableloader command, got the following exception. 
Command:

:/a/cassandra/bin# ./sstableloader -d 192.168.98.99/abc/cassandra/data/apps/ads-0fdd9ff0a7d711e89107ff9c3da22254

Error/Exception: 

Could not retrieve endpoint ranges:
org.apache.thrift.transport.TTransportException: Frame size (352518912) larger than max length (15728640)!
java.lang.RuntimeException: Could not retrieve endpoint ranges:
        at org.apache.cassandra.tools.BulkLoader$ExternalClient.init(BulkLoader.java:342)
        at org.apache.cassandra.io.sstable.SSTableLoader.stream(SSTableLoader.java:156)
        at org.apache.cassandra.tools.BulkLoader.main(BulkLoader.java:109)
Caused by: org.apache.thrift.transport.TTransportException: Frame size (352518912) larger than max length (15728640)!
        at org.apache.thrift.transport.TFramedTransport.readFrame(TFramedTransport.java:137)
        at org.apache.thrift.transport.TFramedTransport.read(TFramedTransport.java:101)
        at org.apache.thrift.transport.TTransport.readAll(TTransport.java:86)
        at org.apache.thrift.protocol.TBinaryProtocol.readAll(TBinaryProtocol.java:429)
        at org.apache.thrift.protocol.TBinaryProtocol.readI32(TBinaryProtocol.java:318)
        at org.apache.thrift.protocol.TBinaryProtocol.readMessageBegin(TBinaryProtocol.java:219)
        at org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:69)
        at org.apache.cassandra.thrift.Cassandra$Client.recv_describe_partitioner(Cassandra.java:1368)
        at org.apache.cassandra.thrift.Cassandra$Client.describe_partitioner(Cassandra.java:1356)
        at org.apache.cassandra.tools.BulkLoader$ExternalClient.init(BulkLoader.java:304)
        ... 2 more




In yaml file,’ thrift_framed_transport_size_in_mb:’ is set to 15. So I have increased its value to 40. Even after increasing the ‘thrift_framed_transport_size_in_mb: ‘ in yaml file, I’m getting the same error. 

What could be the solution for this. Can somebody please help me with this??

Cheers 
LAD

Re: Exception when running sstableloader

Posted by Alain RODRIGUEZ <ar...@gmail.com>.
Hello LAD,

I do not know much about the SSTable Loader. I carefully stayed away from
it so far :). But it seems it's using thrift to talk to Cassandra.

Some of your rows might be too big and increasing
'thrift_framed_transport_size_in_mb' should have helped indeed.

Did you / Would you try with increasing this as well:
'thrift_max_message_length_in_mb' and see what happens?

Cheers,
-----------------------
Alain Rodriguez - alain@thelastpickle.com
France / Spain

The Last Pickle - Apache Cassandra Consulting
http://www.thelastpickle.com



Le lun. 5 nov. 2018 à 18:00, Kalyan Chakravarthy <fu...@gmail.com> a
écrit :

> I’m trying to migrate data between two clusters on different networks.
> Ports: 7001,7199,9046,9160 are open between them. But port:7000 is not
> open. When I run sstableloader command, got the following exception.
> Command:
>
> :/a/cassandra/bin# ./sstableloader -d
> 192.168.98.99/abc/cassandra/data/apps/ads-0fdd9ff0a7d711e89107ff9c3da22254
>
> Error/Exception:
>
> Could not retrieve endpoint ranges:
> org.apache.thrift.transport.TTransportException: *Frame size (352518912)
> larger than max length (15728640)!*
> java.lang.RuntimeException: Could not retrieve endpoint ranges:
>         at
> org.apache.cassandra.tools.BulkLoader$ExternalClient.init(BulkLoader.java:342)
>         at
> org.apache.cassandra.io.sstable.SSTableLoader.stream(SSTableLoader.java:156)
>         at org.apache.cassandra.tools.BulkLoader.main(BulkLoader.java:109)
> Caused by: org.apache.thrift.transport.TTransportException: Frame size
> (352518912) larger than max length (15728640)!
>         at
> org.apache.thrift.transport.TFramedTransport.readFrame(TFramedTransport.java:137)
>         at
> org.apache.thrift.transport.TFramedTransport.read(TFramedTransport.java:101)
>         at
> org.apache.thrift.transport.TTransport.readAll(TTransport.java:86)
>         at
> org.apache.thrift.protocol.TBinaryProtocol.readAll(TBinaryProtocol.java:429)
>         at
> org.apache.thrift.protocol.TBinaryProtocol.readI32(TBinaryProtocol.java:318)
>         at
> org.apache.thrift.protocol.TBinaryProtocol.readMessageBegin(TBinaryProtocol.java:219)
>         at
> org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:69)
>         at
> org.apache.cassandra.thrift.Cassandra$Client.recv_describe_partitioner(Cassandra.java:1368)
>         at
> org.apache.cassandra.thrift.Cassandra$Client.describe_partitioner(Cassandra.java:1356)
>         at
> org.apache.cassandra.tools.BulkLoader$ExternalClient.init(BulkLoader.java:304)
>         ... 2 more
>
>
>
>
> In yaml file,’ thrift_framed_transport_size_in_mb:’ is set to 15. So I
> have increased its value to 40. Even after increasing the
> ‘thrift_framed_transport_size_in_mb: ‘ in yaml file, I’m getting the same
> error.
>
> What could be the solution for this. Can somebody please help me with
> this??
>
> Cheers
> LAD
>