You might want to lower your in memory compaction
limit<http://www.datastax.com/docs/0.7/configuration/storage_configuration#in-memory-compaction-limit-in-mb>,
but I would also recommend checking your heap
size<http://www.datastax.com/docs/0.7/operations/tuning#heap-sizing>and
monitoring (with something like jconsole) to see how much heap
pressure
there is.

On Tue, Mar 29, 2011 at 3:36 PM, Marek Żebrowski
<marek.zebrow...@gmail.com>wrote:

> Hi, I am getting repeatable OOM during compaction:
>
> ERROR [CompactionExecutor:1] 2011-03-29 14:52:29,193
> AbstractCassandraDaemon.java (line 112) Fatal exception in thread
> Thread[CompactionExecutor:1,1,main]
> java.lang.OutOfMemoryError: Java heap space
>        at java.util.Arrays.copyOf(Arrays.java:2786)
>        at
> java.io.ByteArrayOutputStream.write(ByteArrayOutputStream.java:94)
>        at java.io.DataOutputStream.write(DataOutputStream.java:90)
>        at
> org.apache.cassandra.utils.ByteBufferUtil.write(ByteBufferUtil.java:237)
>        at
> org.apache.cassandra.utils.ByteBufferUtil.writeWithLength(ByteBufferUtil.java:230)
>        at
> org.apache.cassandra.db.ColumnSerializer.serialize(ColumnSerializer.java:56)
>        at
> org.apache.cassandra.db.ColumnSerializer.serialize(ColumnSerializer.java:35)
>        at
> org.apache.cassandra.db.ColumnFamilySerializer.serializeForSSTable(ColumnFamilySerializer.java:87)
>        at
> org.apache.cassandra.db.ColumnFamilySerializer.serializeWithIndexes(ColumnFamilySerializer.java:106)
>        at
> org.apache.cassandra.io.PrecompactedRow.<init>(PrecompactedRow.java:97)
>        at
> org.apache.cassandra.io.CompactionIterator.getCompactedRow(CompactionIterator.java:147)
>        at
> org.apache.cassandra.io.CompactionIterator.getReduced(CompactionIterator.java:108)
>        at
> org.apache.cassandra.io.CompactionIterator.getReduced(CompactionIterator.java:43)
>        at
> org.apache.cassandra.utils.ReducingIterator.computeNext(ReducingIterator.java:73)
>        at
> com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:136)
>        at
> com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:131)
>        at
> org.apache.commons.collections.iterators.FilterIterator.setNextObject(FilterIterator.java:183)
>        at
> org.apache.commons.collections.iterators.FilterIterator.hasNext(FilterIterator.java:94)
>        at
> org.apache.cassandra.db.CompactionManager.doCompaction(CompactionManager.java:449)
>        at
> org.apache.cassandra.db.CompactionManager$1.call(CompactionManager.java:124)
>        at
> org.apache.cassandra.db.CompactionManager$1.call(CompactionManager.java:94)
>        at
> java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
>        at java.util.concurrent.FutureTask.run(FutureTask.java:138)
>        at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>        at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>        at java.lang.Thread.run(Thread.java:662)
>
> --
> Marek Żebrowski
>



-- 
Tyler Hobbs
Software Engineer, DataStax <http://datastax.com/>
Maintainer of the pycassa <http://github.com/pycassa/pycassa> Cassandra
Python client library

Reply via email to