> The HH code currently tries to send the hints to nodes other than the > natural endpoints. If small-scale performance is a problem, we could > make the natural endpoints be responsible for the hints. This reduces > durability a bit, but might be a decent tradeoff. The other interesting benefit is that the hint would not need to store the actual content of the change, since the natural endpoints will already be storing copies. The hints would just need to encode the fact that a given (key,name1[,name2]) changed.
-----Original Message----- From: "Jonathan Ellis" <jbel...@gmail.com> Sent: Wednesday, January 27, 2010 1:18pm To: cassandra-dev@incubator.apache.org Subject: Re: thinking about dropping hinted handoff On Wed, Jan 27, 2010 at 1:12 PM, Ryan King <r...@twitter.com> wrote: > On Wed, Jan 27, 2010 at 8:34 AM, Jonathan Ellis <jbel...@gmail.com> wrote: >> While being able to write (with CL.ZERO or new-in-0.6 ANY) even if all >> the real write targets are down is cool, but since your goal in real >> life is to keep enough replicas alive that you can actually do reads, >> I'm not sure how useful it is. HH also has a measurable performance >> problem in small clusters (that is, where cluster size is not much >> larger than replication factor) since having a node go down means you >> will increase the write load on the remaining nodes a non-negligible >> amount to write the hints, which can be a nasty surprise if you >> weren't planning for it. > > The HH code currently tries to send the hints to nodes other than the > natural endpoints. If small-scale performance is a problem, we could > make the natural endpoints be responsible for the hints. This reduces > durability a bit, but might be a decent tradeoff. That is a good idea, I think we should make that change if we want to keep HH. -Jonathan