cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Aleksey Yeschenko (JIRA)" <>
Subject [jira] [Commented] (CASSANDRA-12671) Support changing hinted handoff throttle in real time
Date Mon, 05 Dec 2016 09:32:00 GMT


Aleksey Yeschenko commented on CASSANDRA-12671:

Sorry, but I don't think this particular implementation will do.

1. {{getHintedHandoffThrottleBytesPerNode()}} does not belong to {{DatabaseDescriptor}}. That
class should be kept as close to a dumb wrapper over {{Config}} as possible.

2. That calculation is not cheap, and as such should not be performed on *every hint read*.

    public Set<InetAddress> getAllEndpoints()
            return ImmutableSet.copyOf(endpointToHostIdMap.keySet());

Generally I would recommend reading the source code of every method you call, to know what
each of them does under the hood. Can't always move code from one place to another: what's
acceptable as a one-off call might not be acceptable on a hot path.

3. How are you even updating {{conf.hinted_handoff_throttle_in_kb}} live? Am I missing something?
Are you using a custom configuration provider?

4. Either way, this change, I assume, is not a frequent event. As such changes to the rate
limit should be push-based, not pull-based.

> Support changing hinted handoff throttle in real time 
> ------------------------------------------------------
>                 Key: CASSANDRA-12671
>                 URL:
>             Project: Cassandra
>          Issue Type: Improvement
>            Reporter: Dikang Gu
>            Assignee: Dikang Gu
>            Priority: Minor
>             Fix For: 3.x
> Problem: currently the sethintedhandoffthrottlekb takes effect when current hints handoff
tasks finish, and then applies to next task, which could take hours for big node. 
> I think it would be great to change the hinted handoff throttle in real time, which means
it takes effect immediately. 

This message was sent by Atlassian JIRA

View raw message