You only need patch for sstableloader. You don't have to upgrade your cassandra servers at all.
So, 1. fetch the latest cassandra-2.1 source $ git clone https://git-wip-us.apache.org/repos/asf/cassandra.git $ cd cassandra $ git checkout origin/cassandra-2.1 2. build it $ ant 3. use sstableloader you just built $ bin/sstableloader .... On Mon, Dec 28, 2015 at 6:03 PM, 土卜皿 <pengcz.n...@gmail.com> wrote: > hi, Yuki > Thank you very much! > The issue's description almost fits to my case! > 1. My Cassandra version is 2.1.11 > 2. my table has several colomn with collection type > 3. Before failed this time, I can use sstableloader to load the data > into this table, but > I got this error after I drop one column with collection type and > insert a column with int type > Do you think I will resolve my question if I update the version into > 2.1.13? > > And, my table already had 560 millions of records. So, for resolving this, > Whether I only need to update the new version C*.jar > and restart cassandra? > > Dillon > > 2015-12-29 7:36 GMT+08:00 Yuki Morishita <mor.y...@gmail.com>: >> >> This is known issue. >> >> https://issues.apache.org/jira/browse/CASSANDRA-10700 >> >> It is fixed in not-yet-released version 2.1.13. >> So, you need to build from the latest cassandra-2.1 branch to try. >> >> >> On Mon, Dec 28, 2015 at 5:28 PM, 土卜皿 <pengcz.n...@gmail.com> wrote: >> > hi, all >> > I used the sstableloader many times successfully, but I got the >> > following >> > error: >> > >> > [root@localhost pengcz]# /usr/local/cassandra/bin/sstableloader -u user >> > -pw >> > password -v -d 172.21.0.131 ./currentdata/keyspace/table >> > >> > Could not retrieve endpoint ranges: >> > java.lang.IllegalArgumentException >> > java.lang.RuntimeException: Could not retrieve endpoint ranges: >> > at >> > >> > org.apache.cassandra.tools.BulkLoader$ExternalClient.init(BulkLoader.java:338) >> > at >> > >> > org.apache.cassandra.io.sstable.SSTableLoader.stream(SSTableLoader.java:156) >> > at >> > org.apache.cassandra.tools.BulkLoader.main(BulkLoader.java:106) >> > Caused by: java.lang.IllegalArgumentException >> > at java.nio.Buffer.limit(Buffer.java:267) >> > at >> > >> > org.apache.cassandra.utils.ByteBufferUtil.readBytes(ByteBufferUtil.java:543) >> > at >> > >> > org.apache.cassandra.serializers.CollectionSerializer.readValue(CollectionSerializer.java:124) >> > at >> > >> > org.apache.cassandra.serializers.MapSerializer.deserializeForNativeProtocol(MapSerializer.java:101) >> > at >> > >> > org.apache.cassandra.serializers.MapSerializer.deserializeForNativeProtocol(MapSerializer.java:30) >> > at >> > >> > org.apache.cassandra.serializers.CollectionSerializer.deserialize(CollectionSerializer.java:50) >> > at >> > >> > org.apache.cassandra.db.marshal.AbstractType.compose(AbstractType.java:68) >> > at >> > >> > org.apache.cassandra.cql3.UntypedResultSet$Row.getMap(UntypedResultSet.java:287) >> > at >> > >> > org.apache.cassandra.config.CFMetaData.fromSchemaNoTriggers(CFMetaData.java:1833) >> > at >> > >> > org.apache.cassandra.config.CFMetaData.fromThriftCqlRow(CFMetaData.java:1126) >> > at >> > >> > org.apache.cassandra.tools.BulkLoader$ExternalClient.init(BulkLoader.java:330) >> > ... 2 more >> > >> > I don't know whether this error is relative to one of cluster nodes' >> > linux >> > crash? >> > >> > Any advice will be appreciated! >> > >> > Dillon Peng >> >> >> >> -- >> Yuki Morishita >> t:yukim (http://twitter.com/yukim) > > -- Yuki Morishita t:yukim (http://twitter.com/yukim)