You're right, it looks like a bad backport since the 0.7 code is correct.

Patch attached to https://issues.apache.org/jira/browse/CASSANDRA-1656

On Fri, Oct 22, 2010 at 8:11 PM, Chen Xinli <chen.d...@gmail.com> wrote:
> 2010/10/22 Brandon Williams <dri...@gmail.com>
>
>> On Fri, Oct 22, 2010 at 3:28 AM, Chen Xinli <chen.d...@gmail.com> wrote:
>>
>> > Hi,
>> >
>> > I'm using 0.6.6 and find hinted handoff never work.
>> >
>> > In HintedHandOffManager.java # sendMessage(InetAddress endPoint, String
>> > tableName, String key)
>> >
>> > QueryFilter filter = new SliceQueryFilter(tableName, new
>> > QueryPath(cfs.getColumnFamilyName()), startColumn,
>> > ArrayUtils.EMPTY_BYTE_ARRAY, false, PAGE_SIZE);
>> >                ColumnFamily cf = cfs.getColumnFamily(filter);
>> >                if (pagingFinished(cf, startColumn))
>> >                    break;
>> >
>> > tableName should be key.
>> >
>>
>> In 0.6, the HH schema is a SCF, where the row key is the keyspace for which
>> the hints belong, the supercolumn name is the row key the hint belongs to,
>> and the subcolumns are the IP addresses of the destinations.  What
>> sendMessage is doing here is using the keyspace (tableName) as the row key,
>> which is correct.
>>
>> -Brandon
>>
>
> You are talking about fetching row keys and IP from HINTS column family;
> using tableName as row key is correct there.
> This logic is in method deliverHintsToEndpoint
>
> In sendMessage, using tableName as row key obviously is wrong. I think it
> was caused by copying-sourcecode.
>
> --
> Best Regards,
> Chen Xinli
>



-- 
Jonathan Ellis
Project Chair, Apache Cassandra
co-founder of Riptano, the source for professional Cassandra support
http://riptano.com

Reply via email to