[
https://issues.apache.org/jira/browse/CASSANDRA-2961?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13100123#comment-13100123
]
Jérémy Sevellec commented on CASSANDRA-2961:
--------------------------------------------
I found why i have make 2 call of addExpireTimeIfFound into SS instead of
calling it into excise :
There is 3 calls to excise in SS : handleStateLeft, handleStateRemoving and...
removeToken.
In removeToken, we don't have the "pieces" of the VV which contain expireTime.
So we can't extract an expireTime.
so there is 3 possibilities :
- modify excise to add "pieces" parameter, set it to null in the removeToken
call and manage the case if pieces is null. I find this solution not so
beautiful but will work.
- refactor and create 2 method signature of excise : one with pieces parameter
and one without.
- keep as it is.
It's as you want. Tell me what is your preference (or another).
> Expire dead gossip states based on time
> ---------------------------------------
>
> Key: CASSANDRA-2961
> URL: https://issues.apache.org/jira/browse/CASSANDRA-2961
> Project: Cassandra
> Issue Type: Improvement
> Affects Versions: 1.0
> Reporter: Brandon Williams
> Priority: Minor
> Fix For: 1.0
>
> Attachments: trunk-2961-v2.patch, trunk-2961.patch
>
>
> Currently dead states are held until aVeryLongTime, 3 days. The problem is
> that if a node reboots within this period, it begins a new 3 days and will
> repopulate the ring with the dead state. While mostly harmless, perpetuating
> the state forever is at least wasting a small amount of bandwidth. Instead,
> we can expire states based on a ttl, which will require that the cluster be
> loosely time synced; within the quarantine period of 60s.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira