> For JVM Heap it is 2G
Try 4G

>   and gc_grace = 1800
Realised that I did not provide a warning about the implication this has for 
node tool repair. If you are doing deleted on the CF you need to run nodetool 
repair every gc_grace seconds. 

In this case I think you main problem was not enough JVM heap. Try setting it 
to 4G and see how that goes. 

Cheers

-----------------
Aaron Morton
Freelance Cassandra Consultant
New Zealand

@aaronmorton
http://www.thelastpickle.com

On 12/03/2013, at 8:17 PM, 金剑 <jinjia...@gmail.com> wrote:

> Thanks for you reply. we will try both of your recommentation. The OS memory 
> is 8G, For JVM Heap it is 2G, DeletedColumn used 1.4G which are rooted from 
> readStage thread. Do you think we need increase the size of JVM Heap?  
> 
>  Configuration for the index columnFamily is 
> 
> create column family purge
>   with column_type = 'Standard'
>   and comparator = 'UTF8Type'
>   and default_validation_class = 'BytesType'
>   and key_validation_class = 'UTF8Type'
>   and read_repair_chance = 1.0
>   and gc_grace = 1800
>   and min_compaction_threshold = 4
>   and max_compaction_threshold = 32
>   and replicate_on_write = true
>   and compaction_strategy = 
> 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy';
> 
> 
> Best Regards!
> 
> Jian Jin
> 
> 
> 2013/3/9 aaron morton <aa...@thelastpickle.com>
> You need to provide some details of the machine and the JVM configuration. 
> But lets say you need to have 4Gb to 8GB for the JVM heap. 
> 
> If you have many deleted columns I would say you have a *lot* of garbage in 
> each row. Consider reducing the gc_grace seconds so the columns are purged 
> more frequently, not however that columns are only purged when all fragments 
> of the row are part of the minor compaction. 
> 
> If you have a mixed write / delete work load consider using the Levelled 
> compaction strategy 
> http://www.datastax.com/dev/blog/leveled-compaction-in-apache-cassandra
> 
> Cheers
> 
> -----------------
> Aaron Morton
> Freelance Cassandra Developer
> New Zealand
> 
> @aaronmorton
> http://www.thelastpickle.com
> 
> On 6/03/2013, at 10:37 PM, Jason Wee <peich...@gmail.com> wrote:
> 
>> hmm.. did you managed to take a look using nodetool tpstats? That may give 
>> you indication further..
>> 
>> Jason
>> 
>> 
>> On Thu, Mar 7, 2013 at 1:56 PM, 金剑 <jinjia...@gmail.com> wrote:
>> Hi,
>> 
>> My version is  1.1.7
>> 
>> Our use case is : we have a index columnfamily to record how many resource 
>> is stored for a user. The number might vary from tens to millions.
>> 
>> We provide a feature to let user to delete resource according prefix.
>> 
>> 
>>  we found some cassandra will OOM after some period. The cluster is a kind 
>> of cross-datacenter ring.
>> 
>> 1. Exception in cassandra log:
>> 
>> ERROR [Thread-5810] 2013-02-04 05:38:13,882 AbstractCassandraDaemon.java 
>> (line 135) Exception in thread Thread[Thread-5810,5,main] 
>> java.util.concurrent.RejectedExecutionException: ThreadPoolExecutor has shut 
>> down 
>> at 
>> org.apache.cassandra.concurrent.DebuggableThreadPoolExecutor$1.rejectedExecution(DebuggableThreadPoolExecutor.java:60)
>>  
>> at 
>> java.util.concurrent.ThreadPoolExecutor.reject(ThreadPoolExecutor.java:767) 
>> at 
>> java.util.concurrent.ThreadPoolExecutor.ensureQueuedTaskHandled(ThreadPoolExecutor.java:758)
>>  
>> at 
>> java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:655) 
>> at 
>> org.apache.cassandra.net.MessagingService.receive(MessagingService.java:581) 
>> at 
>> org.apache.cassandra.net.IncomingTcpConnection.receiveMessage(IncomingTcpConnection.java:155)
>>  
>> at 
>> org.apache.cassandra.net.IncomingTcpConnection.run(IncomingTcpConnection.java:113)
>>  
>> ERROR [Thread-5819] 2013-02-04 05:38:13,888 AbstractCassandraDaemon.java 
>> (line 135) Exception in thread Thread[Thread-5819,5,main] 
>> java.util.concurrent.RejectedExecutionException: ThreadPoolExecutor has shut 
>> down 
>> at 
>> org.apache.cassandra.concurrent.DebuggableThreadPoolExecutor$1.rejectedExecution(DebuggableThreadPoolExecutor.java:60)
>>  
>> at 
>> java.util.concurrent.ThreadPoolExecutor.reject(ThreadPoolExecutor.java:767) 
>> at 
>> java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:658) 
>> at 
>> org.apache.cassandra.net.MessagingService.receive(MessagingService.java:581) 
>> at 
>> org.apache.cassandra.net.IncomingTcpConnection.receiveMessage(IncomingTcpConnection.java:155)
>>  
>> at 
>> org.apache.cassandra.net.IncomingTcpConnection.run(IncomingTcpConnection.java:113)
>>  
>> ERROR [Thread-36] 2013-02-04 05:38:13,898 AbstractCassandraDaemon.java (line 
>> 135) Exception in thread Thread[Thread-36,5,main] 
>> java.util.concurrent.RejectedExecutionException: ThreadPoolExecutor has shut 
>> down 
>> at 
>> org.apache.cassandra.concurrent.DebuggableThreadPoolExecutor$1.rejectedExecution(DebuggableThreadPoolExecutor.java:60)
>>  
>> at 
>> java.util.concurrent.ThreadPoolExecutor.reject(ThreadPoolExecutor.java:767) 
>> at 
>> java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:658) 
>> at 
>> org.apache.cassandra.net.MessagingService.receive(MessagingService.java:581) 
>> at 
>> org.apache.cassandra.net.IncomingTcpConnection.receiveMessage(IncomingTcpConnection.java:155)
>>  
>> at 
>> org.apache.cassandra.net.IncomingTcpConnection.run(IncomingTcpConnection.java:113)
>>  
>> ERROR [Thread-3990] 2013-02-04 05:38:13,902 AbstractCassandraDaemon.java 
>> (line 135) Exception in thread Thread[Thread-3990,5,main] 
>> java.util.concurrent.RejectedExecutionException: ThreadPoolExecutor has shut 
>> down 
>> at 
>> org.apache.cassandra.concurrent.DebuggableThreadPoolExecutor$1.rejectedExecution(DebuggableThreadPoolExecutor.java:60)
>>  
>> at 
>> java.util.concurrent.ThreadPoolExecutor.reject(ThreadPoolExecutor.java:767) 
>> at 
>> java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:658) 
>> at 
>> org.apache.cassandra.net.MessagingService.receive(MessagingService.java:581) 
>> at 
>> org.apache.cassandra.net.IncomingTcpConnection.receiveMessage(IncomingTcpConnection.java:155)
>>  
>> at 
>> org.apache.cassandra.net.IncomingTcpConnection.run(IncomingTcpConnection.java:113)
>>  
>> ERROR [ACCEPT-/10.139.50.62] AbstractCassandraDaemon.java (line 135) 
>> Exception in thread Thread[ACCEPT-/10.139.50.62,5,main] 
>> java.lang.RuntimeException: java.nio.channels.ClosedChannelException 
>> at 
>> org.apache.cassandra.net.MessagingService$SocketThread.run(MessagingService.java:710)
>>  
>> Caused by: java.nio.channels.ClosedChannelException 
>> at 
>> sun.nio.ch.ServerSocketChannelImpl.accept(ServerSocketChannelImpl.java:137) 
>> at sun.nio.ch.ServerSocketAdaptor.accept(ServerSocketAdaptor.java:84) 
>> at 
>> org.apache.cassandra.net.MessagingService$SocketThread.run(MessagingService.java:699)
>>  
>>  INFO [HintedHandoff:1] 2013-02-04 05:38:24,971 HintedHandOffManager.java 
>> (line 374) Timed out replaying hints to /23.20.84.240; aborting further 
>> deliveries 
>>  INFO [HintedHandoff:1] 2013-02-04 05:38:24,971 HintedHandOffManager.java 
>> (line 392) Finished hinted handoff of 0 rows to endpoint 
>>  INFO [HintedHandoff:1] 2013-02-04 05:38:24,971 HintedHandOffManager.java 
>> (line 296) Started hinted handoff for token: 3 
>> 
>> 2. From heap dump, there are many deletedColumn found, rooted from thread 
>> readStage.
>> 
>> 
>> Pls help: where might be the problem?
>> 
>> Best Regards!
>> 
>> Jian Jin
>> 
> 
> 

Reply via email to