[ https://issues.apache.org/jira/browse/CASSANDRA-4180?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13634037#comment-13634037 ]
Jason Brown commented on CASSANDRA-4180: ---------------------------------------- On the whole, lgtm. Tests, especially scrub, are working correctly now. I do appreciate the row header creation being centralized now; that was tricky for me when I first started working on this. However, when I create a simple table under 1.2, then go to start this trunk, it fails on launch with: {code} INFO [main] 2013-04-17 06:49:47,456 CacheService.java (line 165) Scheduling row cache save to each 0 seconds (going to save all keys). INFO [SSTableBatchOpen:2] 2013-04-17 06:49:47,710 SSTableReader.java (line 168) Opening /var/lib/cassandra/data/system/schema_keyspaces/system-schema_keyspaces-ib-1 (261 bytes) INFO [SSTableBatchOpen:1] 2013-04-17 06:49:47,710 SSTableReader.java (line 168) Opening /var/lib/cassandra/data/system/schema_keyspaces/system-schema_keyspaces-ib-2 (165 bytes) INFO [SSTableBatchOpen:1] 2013-04-17 06:49:48,121 SSTableReader.java (line 168) Opening /var/lib/cassandra/data/system/schema_columnfamilies/system-schema_columnfamilies-ib-3 (691 bytes) INFO [SSTableBatchOpen:2] 2013-04-17 06:49:48,121 SSTableReader.java (line 168) Opening /var/lib/cassandra/data/system/schema_columnfamilies/system-schema_columnfamilies-ib-1 (4540 bytes) INFO [SSTableBatchOpen:3] 2013-04-17 06:49:48,122 SSTableReader.java (line 168) Opening /var/lib/cassandra/data/system/schema_columnfamilies/system-schema_columnfamilies-ib-2 (699 bytes) INFO [SSTableBatchOpen:1] 2013-04-17 06:49:48,144 SSTableReader.java (line 168) Opening /var/lib/cassandra/data/system/schema_columns/system-schema_columns-ib-2 (209 bytes) INFO [SSTableBatchOpen:2] 2013-04-17 06:49:48,145 SSTableReader.java (line 168) Opening /var/lib/cassandra/data/system/schema_columns/system-schema_columns-ib-3 (194 bytes) INFO [SSTableBatchOpen:3] 2013-04-17 06:49:48,145 SSTableReader.java (line 168) Opening /var/lib/cassandra/data/system/schema_columns/system-schema_columns-ib-1 (3768 bytes) INFO [SSTableBatchOpen:1] 2013-04-17 06:49:48,181 SSTableReader.java (line 168) Opening /var/lib/cassandra/data/system/local/system-local-ib-5 (441 bytes) ERROR [main] 2013-04-17 06:49:48,652 CassandraDaemon.java (line 454) Exception encountered during startup java.lang.OutOfMemoryError: Java heap space at org.apache.cassandra.io.util.RandomAccessReader.readBytes(RandomAccessReader.java:339) at org.apache.cassandra.utils.ByteBufferUtil.read(ByteBufferUtil.java:392) at org.apache.cassandra.utils.ByteBufferUtil.readWithLength(ByteBufferUtil.java:355) at org.apache.cassandra.db.ColumnSerializer.deserializeColumnBody(ColumnSerializer.java:124) at org.apache.cassandra.db.OnDiskAtom$Serializer.deserializeFromSSTable(OnDiskAtom.java:82) at org.apache.cassandra.db.Column$1.computeNext(Column.java:73) at org.apache.cassandra.db.Column$1.computeNext(Column.java:62) at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143) at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138) at org.apache.cassandra.db.columniterator.SimpleSliceReader.computeNext(SimpleSliceReader.java:92) at org.apache.cassandra.db.columniterator.SimpleSliceReader.computeNext(SimpleSliceReader.java:36) at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143) at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138) at org.apache.cassandra.db.columniterator.SSTableSliceIterator.hasNext(SSTableSliceIterator.java:90) at org.apache.cassandra.db.columniterator.LazyColumnIterator.computeNext(LazyColumnIterator.java:82) at org.apache.cassandra.db.columniterator.LazyColumnIterator.computeNext(LazyColumnIterator.java:59) at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143) at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138) at org.apache.cassandra.db.filter.QueryFilter$2.getNext(QueryFilter.java:136) at org.apache.cassandra.db.filter.QueryFilter$2.hasNext(QueryFilter.java:119) at org.apache.cassandra.utils.MergeIterator$OneToOne.computeNext(MergeIterator.java:199) at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143) at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138) at org.apache.cassandra.db.filter.SliceQueryFilter.collectReducedColumns(SliceQueryFilter.java:131) at org.apache.cassandra.db.filter.QueryFilter.collateColumns(QueryFilter.java:101) at org.apache.cassandra.db.filter.QueryFilter.collateOnDiskAtom(QueryFilter.java:75) at org.apache.cassandra.db.RowIteratorFactory$2.getReduced(RowIteratorFactory.java:105) at org.apache.cassandra.db.RowIteratorFactory$2.getReduced(RowIteratorFactory.java:78) at org.apache.cassandra.utils.MergeIterator$ManyToOne.consume(MergeIterator.java:114) at org.apache.cassandra.utils.MergeIterator$ManyToOne.computeNext(MergeIterator.java:97) at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143) at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138) {code} I'll try to take a look today. > Single-pass compaction for LCR > ------------------------------ > > Key: CASSANDRA-4180 > URL: https://issues.apache.org/jira/browse/CASSANDRA-4180 > Project: Cassandra > Issue Type: Improvement > Components: Core > Reporter: Sylvain Lebresne > Assignee: Jonathan Ellis > Labels: compaction > Fix For: 2.0 > > Attachments: scrub-error.txt > > > LazilyCompactedRow reads all data twice to compact a row which is obviously > inefficient. The main reason we do that is to compute the row header. > However, CASSANDRA-2319 have removed the main part of that row header. What > remains is the size in bytes and the number of columns, but it should be > relatively simple to remove those, which would then remove the need for the > two-phase compaction. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira