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

Caleb Rackliffe commented on CASSANDRA-16261:
---------------------------------------------

Aside from a minor unresolved issue in one of the tests 
[here|https://github.com/ekaterinadimitrova2/cassandra/pull/81#discussion_r555437171],
 and needing to add some information about the new metric in {{metrics.rst}}, 
the 3.11 and trunk patches look good to me.

I'm not sure what to make of the huge number of failures on Jenkins for trunk, 
but on 3.11, these two seem like they *might* be new:
 
[https://jenkins-cm4.apache.org/job/Cassandra-devbranch/284/testReport/dtest.disk_balance_test/TestDiskBalance]
 
[https://jenkins-cm4.apache.org/job/Cassandra-devbranch/284/testReport/dtest.bootstrap_test/TestBootstrap]

> Prevent unbounded number of flushing tasks
> ------------------------------------------
>
>                 Key: CASSANDRA-16261
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-16261
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Legacy/Local Write-Read Paths
>            Reporter: Ekaterina Dimitrova
>            Assignee: Ekaterina Dimitrova
>            Priority: Normal
>             Fix For: 3.0.x, 3.11.x, 4.0-beta
>
>
> The cleaner thread is not prevented from queueing an unbounded number of 
> flushing tasks for memtables that are almost empty.
> This patch adds a mechanism to track the number of pending flushing
> tasks in the memtable cleaner. Above the maximum number (2x the flushing
> threads by default), only memtables using at least MCT memory will be
> flushed, where MCT stands for Memory Cleanup Threshold.
> This patch also fixes a possible problem tracking the memory marked as
> "reclaiming" in the memtable allocators and pool. Writes that complete
> only after a memtable has been scheduled for flushing, did not report
> their memory as reclaiming. Normally this should be a small value of no
> consequence, but if the flushing tasks are blocked for a long period,
> and there is a sufficient number of writes, or these writes use
> a sufficiently large quantity of memory, this would cause the memtable
> cleaning algorithm to schedule repeated flushing tasks because the used
> memory is always > reclaiming memory + MCT.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to