6d3ba47631ebde78460168a2d33c4facde0bd731 | Author: Jason Koch <jkoch@netflix.com>
| 2024-08-12 22:52:13-07:00
Reduce lock held duration in ConcurrencyLimitingRequestThrottler
It might take some (small) time for callback handling when the
throttler request proceeds to submission.
Before this change, the throttler proceed request will happen while
holding the lock, preventing other tasks from proceeding when there is
spare capacity and even preventing tasks from enqueuing until the
callback completes.
By tracking the expected outcome, we can perform the callback outside
of the lock. This means that request registration and submission can
proceed even when a long callback is being processed.
patch by Jason Koch; Reviewed by Andy Tolbert and Chris Lohfink for CASSANDRA-19922
6c48329199862215abc22170769fd1a165e80a15 | Author: Ammar Khaku <ammar.khaku@gmail.com>
| 2024-03-14 16:55:59-07:00
CASSANDRA-19468 Don't swallow exception during metadata refresh
If an exception was thrown while getting new metadata as
part of schema refresh it died on the admin executor instead
of being propagated to the CompletableFuture argument.
Instead, catch those exceptions and hand them off to the
CompletableFuture.
patch by Ammar Khaku; reviewed by Chris Lohfink, Bret McGuire for CASSANDRA-19468