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