Activity log for bug #1152206

Date Who What changed Old value New value Message
2013-03-07 14:58:20 Evan bug added bug
2013-03-07 15:02:52 Evan description In a number of places we're now retrying counter mutations. This was seen as being better than failing hard and the client sending all the data again, causing disruption to column families beyond the counter-based CF that was being incremented. This is actually okay so long as we do two things: 1) Keep an equal number of columns somewhere else in the database. For example, we have DayBuckets and DayBucketsCount, the latter being the length of each row in DayBuckets. 2) We periodically repair the potentially-overcounted column families by processing the columns from #1 into the counters. In a number of places we're now retrying counter mutations. This was seen as being better than failing hard and the client sending all the data again, causing disruption to column families beyond the counter-based CF that was being incremented. This is actually okay so long as we do two things: 1) Keep an equal number of columns somewhere else in the database. For example, we have DayBuckets and DayBucketsCount, the latter being the length of each row in DayBuckets. 2) We periodically repair the potentially-overcounted column families by processing the columns from #1 into the counters. Fixing this will address one of the two causes of OOPSes on daisy.ubuntu.com at present, a MaximumRetryException ("Retried 1 times. Last failure was TTransportException: TSocket read 0 bytes"). The other cause is reports with signatures larger than 65535, which is fixed in daisy trunk.
2013-03-07 15:03:15 Evan daisy: importance Undecided High
2013-03-07 15:03:15 Evan daisy: status New Confirmed
2013-03-07 15:05:22 Evan description In a number of places we're now retrying counter mutations. This was seen as being better than failing hard and the client sending all the data again, causing disruption to column families beyond the counter-based CF that was being incremented. This is actually okay so long as we do two things: 1) Keep an equal number of columns somewhere else in the database. For example, we have DayBuckets and DayBucketsCount, the latter being the length of each row in DayBuckets. 2) We periodically repair the potentially-overcounted column families by processing the columns from #1 into the counters. Fixing this will address one of the two causes of OOPSes on daisy.ubuntu.com at present, a MaximumRetryException ("Retried 1 times. Last failure was TTransportException: TSocket read 0 bytes"). The other cause is reports with signatures larger than 65535, which is fixed in daisy trunk. In a number of places we're now retrying counter mutations. This was seen as being better than failing hard and the client sending all the data again, causing disruption to column families beyond the counter-based CF that was being incremented. This is actually okay so long as we do two things: 1) Keep an equal number of columns somewhere else in the database. For example, we have DayBuckets and DayBucketsCount, the latter being the length of each row in DayBuckets. 2) We periodically repair the potentially-overcounted column families by processing the columns from #1 into the counters. Fixing this will address one of the two causes of OOPSes on daisy.ubuntu.com at present, a MaximumRetryException ("Retried 1 times. Last failure was TTransportException: TSocket read 0 bytes"). The other cause is reports with signatures larger than 65535, which is fixed in daisy trunk. Ebay talks a bit about the repair approach in their Cassandra data modelling blog series: http://www.ebaytechblog.com/2012/08/14/cassandra-data-modeling-best-practices-part-2/
2013-03-07 15:46:59 Brian Murray bug added subscriber Brian Murray
2013-04-01 23:52:00 Haw Loeung bug added subscriber Haw Loeung
2014-09-19 16:55:04 Haw Loeung removed subscriber Haw Loeung