To get a good idea of how GC is performing turn on the GC logging in 
cassandra-env.sh. 

After a full cms GC event, see how big the tenured heap is. If it's not 
reducing enough then GC will never get far enough ahead. 

Cheers

-----------------
Aaron Morton
Freelance Cassandra Developer
New Zealand

@aaronmorton
http://www.thelastpickle.com

On 22/02/2013, at 8:37 AM, Andras Szerdahelyi 
<andras.szerdahe...@ignitionone.com> wrote:

> Thank you- indeed my index interval is 64 with a CF of 300M rows + bloom 
> filter false positive chance was default.
> Raising the index interval to 512 didn't fix this  alone, so I guess I'll 
> have to set the bloom filter to some reasonable value and scrub.
> 
> From: aaron morton <aa...@thelastpickle.com>
> Reply-To: "user@cassandra.apache.org" <user@cassandra.apache.org>
> Date: Thursday 21 February 2013 17:58
> To: "user@cassandra.apache.org" <user@cassandra.apache.org>
> Subject: Re: "Heap is N.N full." Immediately on startup
> 
> My first guess would be the bloom filter and index sampling from lots-o-rows 
> 
> Check the row count in cfstats
> Check the bloom filter size in cfstats. 
> 
> Background on memory requirements 
> http://www.mail-archive.com/user@cassandra.apache.org/msg25762.html
> 
> Cheers
> 
> -----------------
> Aaron Morton
> Freelance Cassandra Developer
> New Zealand
> 
> @aaronmorton
> http://www.thelastpickle.com
> 
> On 20/02/2013, at 11:27 PM, Andras Szerdahelyi 
> <andras.szerdahe...@ignitionone.com> wrote:
> 
>> Hey list,
>> 
>> Any ideas ( before I take a heap dump ) what might be consuming my 8GB JVM 
>> heap at startup in Cassandra 1.1.6 besides
>> row cache : not persisted and is at 0 keys when this warning is produced
>> Memtables : no write traffic at startup, my app's column families are 
>> durable_writes:false
>> Pending tasks : no pending tasks, except for 928 compactions ( not sure 
>> where those are coming from )
>> I drew these conclusions from the StatusLogger output below: 
>> 
>> INFO [ScheduledTasks:1] 2013-02-20 05:13:25,198 GCInspector.java (line 122) 
>> GC for ConcurrentMarkSweep: 14959 ms for 2 collections, 7017934560 used; max 
>> is 8375238656
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,198 StatusLogger.java (line 57) 
>> Pool Name                    Active   Pending   Blocked
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,199 StatusLogger.java (line 72) 
>> ReadStage                         0         0         0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,200 StatusLogger.java (line 72) 
>> RequestResponseStage              0         0         0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,200 StatusLogger.java (line 72) 
>> ReadRepairStage                   0         0         0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,200 StatusLogger.java (line 72) 
>> MutationStage                     0        -1         0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,201 StatusLogger.java (line 72) 
>> ReplicateOnWriteStage             0         0         0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,201 StatusLogger.java (line 72) 
>> GossipStage                       0         0         0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,201 StatusLogger.java (line 72) 
>> AntiEntropyStage                  0         0         0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,201 StatusLogger.java (line 72) 
>> MigrationStage                    0         0         0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,201 StatusLogger.java (line 72) 
>> StreamStage                       0         0         0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,202 StatusLogger.java (line 72) 
>> MemtablePostFlusher               0         0         0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,202 StatusLogger.java (line 72) 
>> FlushWriter                       0         0         0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,202 StatusLogger.java (line 72) 
>> MiscStage                         0         0         0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,202 StatusLogger.java (line 72) 
>> commitlog_archiver                0         0         0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,203 StatusLogger.java (line 72) 
>> InternalResponseStage             0         0         0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,212 StatusLogger.java (line 77) 
>> CompactionManager                 0       928
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,212 StatusLogger.java (line 89) 
>> MessagingService                n/a       0,0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,212 StatusLogger.java (line 99) 
>> Cache Type                     Size                 Capacity               
>> KeysToSave                                                         Provider
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,212 StatusLogger.java (line 
>> 100) KeyCache                         25                       25            
>>           all                                                                
>>  
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,213 StatusLogger.java (line 
>> 106) RowCache                          0                        0            
>>           all              
>> org.apache.cassandra.cache.SerializingCacheProvider
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,213 StatusLogger.java (line 
>> 113) ColumnFamily                Memtable ops,data
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,213 StatusLogger.java (line 
>> 116) MYAPP_1.CF                        0,0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,213 StatusLogger.java (line 
>> 116) MYAPP_2.CF                         0,0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,213 StatusLogger.java (line 
>> 116) HiveMetaStore.MetaStore                   0,0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,213 StatusLogger.java (line 
>> 116) system.NodeIdInfo                         0,0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,213 StatusLogger.java (line 
>> 116) system.IndexInfo                          0,0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,213 StatusLogger.java (line 
>> 116) system.LocationInfo                       0,0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,214 StatusLogger.java (line 
>> 116) system.Versions                           0,0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,214 StatusLogger.java (line 
>> 116) system.schema_keyspaces                   0,0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,214 StatusLogger.java (line 
>> 116) system.Migrations                         0,0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,214 StatusLogger.java (line 
>> 116) system.schema_columnfamilies                 0,0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,214 StatusLogger.java (line 
>> 116) system.schema_columns                     0,0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,214 StatusLogger.java (line 
>> 116) system.HintsColumnFamily                  0,0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,214 StatusLogger.java (line 
>> 116) system.Schema                             0,0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,214 StatusLogger.java (line 
>> 116) cfs_archive.sblocks                       0,0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,214 StatusLogger.java (line 
>> 116) cfs_archive.cleanup                       0,0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,215 StatusLogger.java (line 
>> 116) cfs_archive.inode                         0,0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,215 StatusLogger.java (line 
>> 116) cfs.cleanup                               0,0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,215 StatusLogger.java (line 
>> 116) cfs.sblocks                               0,0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,215 StatusLogger.java (line 
>> 116) cfs.inode                                 0,0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,215 StatusLogger.java (line 
>> 116) OpsCenter.events                          0,0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,215 StatusLogger.java (line 
>> 116) OpsCenter.rollups300                      0,0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,215 StatusLogger.java (line 
>> 116) OpsCenter.rollups86400                    0,0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,215 StatusLogger.java (line 
>> 116) OpsCenter.pdps                      345,54448
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,215 StatusLogger.java (line 
>> 116) OpsCenter.events_timeline                 0,0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,216 StatusLogger.java (line 
>> 116) OpsCenter.settings                        0,0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,216 StatusLogger.java (line 
>> 116) OpsCenter.rollups7200                     0,0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,216 StatusLogger.java (line 
>> 116) OpsCenter.rollups60                       0,0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,216 StatusLogger.java (line 
>> 116) demo.users                                0,0
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,216 StatusLogger.java (line 
>> 116) MYAPP_3.CF                         0,0
>>  WARN [ScheduledTasks:1] 2013-02-20 05:13:25,216 GCInspector.java (line 145) 
>> Heap is 0.8379384574280004 full.  You may need to reduce memtable and/or 
>> cache sizes.  Cassandra will now flush up to the two largest memtables to 
>> free up memory.  Adjust flush_largest_memtables_at threshold in 
>> cassandra.yaml if you don't want Cassandra to do this automatically
>>  WARN [ScheduledTasks:1] 2013-02-20 05:13:25,217 StorageService.java (line 
>> 2855) Flushing CFS(Keyspace='OpsCenter', ColumnFamily='pdps') to relieve 
>> memory pressure
>>  INFO [ScheduledTasks:1] 2013-02-20 05:13:25,217 ColumnFamilyStore.java 
>> (line 659) Enqueuing flush of Memtable-pdps@98567689(15238/54448 
>> serialized/live bytes, 345 ops)
>>  INFO [FlushWriter:6] 2013-02-20 05:13:25,218 Memtable.java (line 264) 
>> Writing Memtable-pdps@98567689(15238/54448 serialized/live bytes, 345 ops)
>>  INFO [FlushWriter:6] 2013-02-20 05:13:25,241 Memtable.java (line 305) 
>> Completed flushing 
>> /var/lib/cassandra/data/OpsCenter/pdps/OpsCenter-pdps-hf-127-Data.db (5394 
>> bytes) for commitlog position ReplayPosition(segmentId=1361354508149, :
>> 
>> 
>> 
>> Thanks!
>> Andras
>> 
> 

Reply via email to