[ https://issues.apache.org/jira/browse/CASSANDRA-2961?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13099466#comment-13099466 ]
Brandon Williams commented on CASSANDRA-2961: --------------------------------------------- A few things: * I don't think it's worth pulling in the hamcrest dependency for 'is' instead of writing assertEquals(1L, expireTime) * VersionedValue.getExpireTime feels like the wrong place to me for that logic, but I could be wrong * rather than having multiple calls to addExpireTimeIfFound let's put this in excise() * some DEBUG logging to know when an endpoint is going to be expired (and whether a timestamp was supplied or not) could be helpful in the future > 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 > Labels: patch > 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