GitHub user jonmeredith opened a pull request:
https://github.com/apache/cassandra/pull/288
In BufferPool, make allocating thread receive a Chunk.
Prevents a condition where the thread allocating the macro chunk could have
all of the chunks taken from the queue before it is able to use one.
This PR is currently pointed at the 3.0 branch, although I noticed that the
fix to protect against unexpected mega chunk allocation failures
(CASSANDRA-11710 / commit 31cab36b180) is only merged against cassandra-3.2
and cassandra-3.11 when it seems like it would benefit the 3.0 series too.
Please let me know if I should retarget against a later release. The only
downside of pointing it at 3.0 is that the merge into 3.11 / trunk requires
changing the return introduced in 11710 from `false` to `null`.
For CASSANDRA-14832.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/jonmeredith/cassandra CASSANDRA-14832
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/cassandra/pull/288.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #288
----
commit e611d400f46127ac73e20cae1e1c4a856d6807a1
Author: Jon Meredith <jmeredithco@...>
Date: 2018-10-18T15:56:46Z
In BufferPool, make allocating thread receive a Chunk.
Prevents a condition where the thread allocating the macro chunk
could have all of the chunks taken from the queue before it
is able to use one.
For CASSANDRA-14832
----
---
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]