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)

Reply via email to