[ 
https://issues.apache.org/jira/browse/CASSANDRA-18125?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17649441#comment-17649441
 ] 

Nicolas Henneaux edited comment on CASSANDRA-18125 at 12/19/22 7:06 PM:
------------------------------------------------------------------------

Thanks for your feedback, of course I can provide more details.

1. There is no secondary index in use.
2. Not sure what is really heavy but I don't believe it is heavy, each node has 
~200GB of data with ttl of 10 days for most of the data (~20GB written by day). 
About overwrite, I guess you mean updating some cells, yes we usually insert 
then update a row within a short time frame (~10min).
3. I don't think off-heap is used. If disabled by default, that's not something 
I enabled

A compaction was running it seems. I got a lot of 
- TWCS skipping check for fully expired SSTables
- TWCS expired check sufficiently far in the past, checking for fully expired 
SSTables

Here is an extract of the logs around ~1min
{code}
Dec 19, 2022 @ 13:07:51.334COMMIT-LOG-ALLOCATOR 
org.apache.cassandra.db.ColumnFamilyStore logFlush - Enqueuing flush of T4: 
35.156KiB (0%) on-heap, 0.000KiB (0%) off-heap
Dec 19, 2022 @ 13:07:51.334COMMIT-LOG-ALLOCATOR 
org.apache.cassandra.db.ColumnFamilyStore logFlush - Enqueuing flush of T3: 
852.600KiB (0%) on-heap, 0.000KiB (0%) off-heap
Dec 19, 2022 @ 13:07:51.334COMMIT-LOG-ALLOCATOR 
org.apache.cassandra.db.ColumnFamilyStore logFlush - Enqueuing flush of T2: 
41.210KiB (0%) on-heap, 0.000KiB (0%) off-heap
Dec 19, 2022 @ 13:07:51.334COMMIT-LOG-ALLOCATOR 
org.apache.cassandra.db.ColumnFamilyStore logFlush - Enqueuing flush of T1: 
364.268KiB (0%) on-heap, 0.000KiB (0%) off-heap
Dec 19, 2022 @ 13:07:15.561NonPeriodicTasks:1 
org.apache.cassandra.io.sstable.SSTable delete - Deleting sstable: 
/data/cassandra/data/system_distributed/repair_history-759fffad624b318180eefa9a52d1f627/nb-26-big
Dec 19, 2022 @ 13:07:15.560CompactionExecutor:6104 
org.apache.cassandra.db.compaction.CompactionTask runMayThrow - Compacted 
(ad77aef0-7f95-11ed-bab7-e7d7c3e60f28) 2 sstables to 
[/data/cassandra/data/system_distributed/repair_history-759fffad624b318180eefa9a52d1f627/nb-29-big,]
 to level=0.  5.429KiB to 5.426KiB (~99% of original) in 9ms.  Read Throughput 
= 593.925KiB/s, Write Throughput = 593.604KiB/s, Row Throughput = ~118/s.  59 
total partitions merged to 58.  Partition merge counts were {1:57, 2:1, }
Dec 19, 2022 @ 13:07:15.560NonPeriodicTasks:1 
org.apache.cassandra.io.sstable.SSTable delete - Deleting sstable: 
/data/cassandra/data/system_distributed/repair_history-759fffad624b318180eefa9a52d1f627/nb-27-big
Dec 19, 2022 @ 13:07:15.551MemtableReclaimMemory:2628 
org.apache.cassandra.service.CassandraDaemon uncaughtException - Exception in 
thread Thread[MemtableReclaimMemory:2628,5,main]java.lang.AssertionError: null
        at 
org.apache.cassandra.utils.memory.MemtablePool$SubPool.released(MemtablePool.java:193)
        at 
org.apache.cassandra.utils.memory.MemtableAllocator$SubAllocator.releaseAll(MemtableAllocator.java:151)
        at 
org.apache.cassandra.utils.memory.MemtableAllocator$SubAllocator.setDiscarded(MemtableAllocator.java:142)
        at 
org.apache.cassandra.utils.memory.MemtableAllocator.setDiscarded(MemtableAllocator.java:93)
        at 
org.apache.cassandra.utils.memory.SlabAllocator.setDiscarded(SlabAllocator.java:120)
        at org.apache.cassandra.db.Memtable.setDiscarded(Memtable.java:201)
        at 
org.apache.cassandra.db.ColumnFamilyStore$Flush$1.runMayThrow(ColumnFamilyStore.java:1216)
        at 
org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:28)
        at 
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
        at 
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
        at 
io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
        at java.base/java.lang.Thread.run(Thread.java:829)
Dec 19, 2022 @ 13:07:15.551MemtablePostFlush:2626 
org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager 
archiveAndDiscard - Segment 
CommitLogSegment(/data/cassandra/commitlog/CommitLog-7-1670343439312.log) is no 
longer active and will be deleted now
Dec 19, 2022 @ 13:07:15.551MemtablePostFlush:2626 
org.apache.cassandra.db.commitlog.CommitLog discardCompletedSegments - Commit 
log segment 
CommitLogSegment(/data/cassandra/commitlog/CommitLog-7-1670343439312.log) is 
unused
Dec 19, 2022 @ 13:07:15.551CompactionExecutor:6104 
org.apache.cassandra.db.compaction.TimeWindowCompactionStrategy newestBucket - 
bucket size 2 >= 2 and not in current bucket, compacting what's here: 
[BigTableReader(path='/data/cassandra/data/system_distributed/repair_history-759fffad624b318180eefa9a52d1f627/nb-27-big-Data.db'),
 
BigTableReader(path='/data/cassandra/data/system_distributed/repair_history-759fffad624b318180eefa9a52d1f627/nb-26-big-Data.db')]
Dec 19, 2022 @ 13:07:15.551CompactionExecutor:6104 
org.apache.cassandra.db.compaction.CompactionTask runMayThrow - Compacting 
(ad77aef0-7f95-11ed-bab7-e7d7c3e60f28) 
[/data/cassandra/data/system_distributed/repair_history-759fffad624b318180eefa9a52d1f627/nb-27-big-Data.db:level=0,
 
/data/cassandra/data/system_distributed/repair_history-759fffad624b318180eefa9a52d1f627/nb-26-big-Data.db:level=0,
 ]
Dec 19, 2022 @ 13:07:15.550MemtableFlushWriter:3385 
org.apache.cassandra.db.ColumnFamilyStore flushMemtable - Flushed to 
[BigTableReader(path='/data/cassandra/data/system_distributed/parent_repair_history-deabd734b99d3b9c92e5fd92eb5abf14/nb-31-big-Data.db')]
 (1 sstables, 7.193KiB), biggest 7.193KiB, smallest 7.193KiB
Dec 19, 2022 @ 13:07:15.550MemtableFlushWriter:3384 
org.apache.cassandra.db.ColumnFamilyStore flushMemtable - Flushed to 
[BigTableReader(path='/data/cassandra/data/system_distributed/repair_history-759fffad624b318180eefa9a52d1f627/nb-28-big-Data.db')]
 (1 sstables, 6.510KiB), biggest 6.510KiB, smallest 6.510KiB
Dec 19, 2022 @ 13:07:15.546PerDiskMemtableFlushWriter_0:3385 
org.apache.cassandra.db.Memtable writeSortedContents - Completed flushing 
/data/cassandra/data/system_distributed/parent_repair_history-deabd734b99d3b9c92e5fd92eb5abf14/nb-31-big-Data.db
 (4.170KiB) for commitlog position CommitLogPosition(segmentId=1670343439574, 
position=3282)
Dec 19, 2022 @ 13:07:15.545PerDiskMemtableFlushWriter_0:3384 
org.apache.cassandra.db.Memtable writeSortedContents - Completed flushing 
/data/cassandra/data/system_distributed/repair_history-759fffad624b318180eefa9a52d1f627/nb-28-big-Data.db
 (1.785KiB) for commitlog position CommitLogPosition(segmentId=1670343439574, 
position=1779)
Dec 19, 2022 @ 13:07:15.545PerDiskMemtableFlushWriter_0:3384 
org.apache.cassandra.db.Memtable writeSortedContents - Writing 
Memtable-repair_history@685478737(-8.285KiB serialized bytes, 246 ops, -0%/0% 
of on/off-heap limit), flushed range = (min(-9223372036854775808), 
max(9223372036854775807)]Dec 19, 2022 @ 
13:07:15.545PerDiskMemtableFlushWriter_0:3385 org.apache.cassandra.db.Memtable 
writeSortedContents - Writing Memtable-parent_repair_history@860004687(5.211KiB 
serialized bytes, 2 ops, 0%/0% of on/off-heap limit), flushed range = 
(min(-9223372036854775808), max(9223372036854775807)]Dec 19, 2022 @ 
13:07:15.543COMMIT-LOG-ALLOCATOR org.apache.cassandra.db.ColumnFamilyStore 
logFlush - Enqueuing flush of parent_repair_history: 14.763KiB (0%) on-heap, 
0.000KiB (0%) off-heap
Dec 19, 2022 @ 13:07:15.542COMMIT-LOG-ALLOCATOR 
org.apache.cassandra.db.ColumnFamilyStore logFlush - Enqueuing flush of 
repair_history: -8.000KiB (-0%) on-heap, 0.000KiB (0%) off-heap
Dec 19, 2022 @ 13:06:22.905ReadStage-1 
org.apache.cassandra.utils.memory.BufferPool log - Maximum memory usage reached 
(512.000MiB), cannot allocate chunk of 8.000MiB
Dec 19, 2022 @ 13:05:36.979NonPeriodicTasks:1 
org.apache.cassandra.io.sstable.SSTable delete - Deleting sstable: 
/data/cassandra/data/X/Y-48b97b403c1011eab0e9f58b98b870bd/nb-2963-big
Dec 19, 2022 @ 13:05:36.979CompactionExecutor:6105 
org.apache.cassandra.db.compaction.CompactionTask runMayThrow - Compacted 
(72b6a320-7f95-11ed-bab7-e7d7c3e60f28) 1 sstables to [] to level=0.  0.000KiB 
to 0.000KiB (~0% of original) in 1ms.  Read Throughput = 0.000KiB/s, Write 
Throughput = 0.000KiB/s, Row Throughput = ~0/s.  0 total partitions merged to 
0.  Partition merge counts were {}
{code}



was (Author: nicolas.henneaux):
Thanks for your feedback, of course I can provide more details.

1. There is no secondary index in use.
2. Not sure what is really heavy but I don't believe it is heavy, each node has 
~200GB of data with ttl of 10 days for most of the data (~20GB written by day). 
About overwrite, I guess you mean updating some cells, yes we usually insert 
then update a row within a short time frame (~10min).
3. I don't think off-heap is used. If disabled by default, that's not something 
I enabled


> AssertionError on thread MemtableReclaimMemory in 
> MemtablePool$SubPool.released(MemtablePool.java:193)
> ------------------------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-18125
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-18125
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Nicolas Henneaux
>            Priority: Normal
>
> On two nodes (on a 5 nodes cluster) on the cluster I'm running, I got the 
> following exception. It occurred at 3,5 minutes interval.
> {code}
> MemtableReclaimMemory:2625 org.apache.cassandra.service.CassandraDaemon 
> uncaughtException - Exception in thread 
> Thread[MemtableReclaimMemory:2625,5,main]java.lang.AssertionError: null
>       at 
> org.apache.cassandra.utils.memory.MemtablePool$SubPool.released(MemtablePool.java:193)
>       at 
> org.apache.cassandra.utils.memory.MemtableAllocator$SubAllocator.releaseAll(MemtableAllocator.java:151)
>       at 
> org.apache.cassandra.utils.memory.MemtableAllocator$SubAllocator.setDiscarded(MemtableAllocator.java:142)
>       at 
> org.apache.cassandra.utils.memory.MemtableAllocator.setDiscarded(MemtableAllocator.java:93)
>       at 
> org.apache.cassandra.utils.memory.SlabAllocator.setDiscarded(SlabAllocator.java:120)
>       at org.apache.cassandra.db.Memtable.setDiscarded(Memtable.java:201)
>       at 
> org.apache.cassandra.db.ColumnFamilyStore$Flush$1.runMayThrow(ColumnFamilyStore.java:1216)
>       at 
> org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:28)
>       at 
> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
>       at 
> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
>       at 
> io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
>       at java.base/java.lang.Thread.run(Thread.java:829)
> {code} 
> {code}
> $ nodetool info
> ID                     : 
> Gossip active          : true
> Native Transport active: true
> Load                   : 204.67 GiB
> Generation No          : 1670343179
> Uptime (seconds)       : 1110514
> Heap Memory (MB)       : 7218.07 / 24576.00
> Off Heap Memory (MB)   : 784.06
> Data Center            : par
> Rack                   : e1
> Exceptions             : 1
> Key Cache              : entries 802712, size 100 MiB, capacity 100 MiB, 
> 774541004 hits, 914207516 requests, 0.847 recent hit rate, 14400 save period 
> in seconds
> Row Cache              : entries 0, size 0 bytes, capacity 0 bytes, 0 hits, 0 
> requests, NaN recent hit rate, 0 save period in seconds
> Counter Cache          : entries 0, size 0 bytes, capacity 50 MiB, 0 hits, 0 
> requests, NaN recent hit rate, 7200 save period in seconds
> Percent Repaired       : 2.3272298419424144E-5%
> Token                  : (invoke with -T/--tokens to see all 8 tokens)
> $ java -version
> openjdk version "11.0.16" 2022-07-19 LTS
> OpenJDK Runtime Environment (Red_Hat-11.0.16.0.8-1.el7_9) (build 
> 11.0.16+8-LTS)
> OpenJDK 64-Bit Server VM (Red_Hat-11.0.16.0.8-1.el7_9) (build 11.0.16+8-LTS, 
> mixed mode, sharing)
> $ nodetool version
> ReleaseVersion: 4.0.6
> {code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org

Reply via email to