Hi I did some more looking. It looks like on bootstrap the token gets added to the bootstrapTokens list. However there is no change to the tokenToEndPointMap. So how do writes make it to the new node. It is only when bootstrap is complete are the tokens removed from bootstrapTokens list added to the tokenToEndPointMap opening them up to the ring. Which means during bootstrap writes continue to go to the old nodes and the when bootstrap is complete there could be some data that was written during the bootstrap that remains on the old node. Am I missing something here? Any pointers would be great.
Cheers - bill > > ---------- Forwarded message ---------- > From: Stu Hood <stu.h...@rackspace.com> > Date: Sun, May 2, 2010 at 10:50 AM > Subject: Re: Bootstrap source code > To: dev@cassandra.apache.org > > > Nodes declare that they will be joining the ring at a particular position, > which makes them a member of the 'pending ranges' set. Nodes with pending > ranges are supposed to receive writes for those ranges, despite not > officially owning them yet. > > > -----Original Message----- > From: "Roger Schildmeijer" <schildmei...@gmail.com> > Sent: Sunday, May 2, 2010 11:50am > To: dev@cassandra.apache.org > Subject: Re: Bootstrap source code > > s/hinted handoff/read repair > > > > > > > > > (Moved to developers mailing list) > > > > Without delve to deep into to that part of the code my educated(?) guess > is that this will (eventually) be solved/repaired thanks to hinted handoff > and anti entropy service. > > > > > > On 2 maj 2010, at 18.29em, Bill Hastings wrote: > > > >> Hi > >> > >> I have looking at the bootstrap source and seem to understand it for the > most part. This is what I do not follow: > >> > >> (1) New node joins and doesn't advertise its token. > >> (2) Requests nodes to send it data. The nodes that need to send it data > first flush memtables and then transfer SSTables. > >> > >> Once the streaming is over the new node advertises its token and starts > handling reads and writes correct? But what happens to keys that are being > written to the old nodes after the memtables have been dumped. Looks like > there is a window where keys would be going to the old nodes and not making > it to the new nodes. Am I missing something here. > >> > >> -- > >> Cheers > >> Bill > > > > > > > -- Cheers Bill