[
https://issues.apache.org/jira/browse/CASSANDRA-16261?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17231874#comment-17231874
]
Ekaterina Dimitrova commented on CASSANDRA-16261:
-------------------------------------------------
This patch puts a cap on the maximum number of flushing tasks that can be
enqueued by the memtable cleaner thread.
This will have the consequence of creating larger sstables if flushing cannot
keep up, so we must choose the maximum number of pending tasks carefully. At
the moment it is [configurable
|https://github.com/ekaterinadimitrova2/cassandra/blob/CASSANDRA-16261-trunk/src/java/org/apache/cassandra/db/Memtable.java#L76]
and set to twice the number of flush writers.
When a memtable gets into discarding state, all pending updates update both
used and reclaiming.
[trunk|https://github.com/ekaterinadimitrova2/cassandra/pull/76/commits/6ffa1802a1cfb8420db8a253ae5312fcffddfd6a]
| [JAVA8 CI
|https://app.circleci.com/pipelines/github/ekaterinadimitrova2/cassandra/506/workflows/4411817d-bd4d-449a-b28e-8f9616eaf1f4]
| [JAVA 11 CI
|https://app.circleci.com/pipelines/github/ekaterinadimitrova2/cassandra/506/workflows/9646169b-26bd-4d5b-aa5b-ba7d6522786d]
[3.11|https://github.com/ekaterinadimitrova2/cassandra/commit/1f0d02d0a8d04524a99574dc60c0f4b215520591]
| [CI
|https://app.circleci.com/pipelines/github/ekaterinadimitrova2/cassandra/508/workflows/78295ba3-6a08-4e04-a39e-cf46a7913d02]
No new test failures, one more test class added - [MemtableCleanerThreadTest
|https://github.com/ekaterinadimitrova2/cassandra/pull/76/commits/6ffa1802a1cfb8420db8a253ae5312fcffddfd6a#diff-ef05bf02f6f0b3ab7db707faeb3a6c0e69f67d330de07ca0876cccaf1ea9395fR44].
[~adelapena] do you mind to review it?
> 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.11.x, 4.0-beta4
>
>
> The cleaner thread is not prevented from queueing an unbounded number of
> flushing tasks for memtables that are almost empty.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]