On Sun, May 2, 2010 at 1:00 PM, James Golick <jamesgol...@gmail.com> wrote: > the ConcurrentSkipListMap (ColumnFamily.columns_). > SliceQueryFilter.getMemColumnIterator @ ~30% - Virtually all the time in > here is spent in ConcurrentSkipListMap$Values.toArrray()
Besides the UUID optimization you posted, we should do an audit of ColumnFamily.getSortedColumns and replace with iteration where possible (in this case, we'd be left with one copy of most of the columns, but that's better than two). We can get rid of the other copy by fixing the logic in Memtable.getSliceIterator, which says "copy all the columns, so we can do a binary search on them to find where to start," but since columns are natively in sorted order we could just use an iterator and a while loop. Created https://issues.apache.org/jira/browse/CASSANDRA-1046 for this. -- Jonathan Ellis Project Chair, Apache Cassandra co-founder of Riptano, the source for professional Cassandra support http://riptano.com