[ https://issues.apache.org/jira/browse/CASSANDRA-2961?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13100468#comment-13100468 ]
Brandon Williams edited comment on CASSANDRA-2961 at 9/8/11 5:20 PM: --------------------------------------------------------------------- bq. hamscrest : In my case, It's true, I just use hamcrest with "is" into assert. There is a lot of other verb which interesting to make asserting more readable. Tt was for help for next but if you want I can remove it. tell me you do you prefer. I don't think it's providing enough utility yet to justify another dependency. bq. VersionedValue.getExpireTime : It's true, I put it in the Gossiper? a utility class? I think I would pass the expire times to the VV constructors and put the actual generation of the times in Gossiper. bq. 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. That's because in removeToken, we are responsible for the generation of the expireTime (we are the removal coordinator.) was (Author: brandon.williams): bq. hamscrest : In my case, It's true, I just use hamcrest with "is" into assert. There is a lot of other verb which interesting to make asserting more readable. Tt was for help for next but if you want I can remove it. tell me you do you prefer. I don't think it's providing enough utility yet to justify another dependency. bq. VersionedValue.getExpireTime : It's true, I put it in the Gossiper? a utility class? I think I would pass the expire times to the VV constructors and put the actual generation of the times in Gossiper. bq. 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. That's because in removeToken, we are responsible for the generation of the expireTime (we are the removal coordinator.) > 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.1 > > 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