Hi,

Does this happen if you are not using binary mode? 

I would also look at the latest version, 0.51 is a bit old.

Cheers,
        -Brian

On Jun 6, 2012, at 6:05 PM, Nicolas Motte wrote:

> Hi,
> 
> I went through all the libmemcached code (v0.51).
> I wrote down a simple test to check I understood correctly the
> behavior of the lib.
> 
> Here is my test case :
> 
> I start 3 memcached nodes. The settings are : binary protocol, ketama,
> connect_timeout=100, retry_timeout=1, number_of_replica=1, no_block=0
> I try to get an item on this empty farm. It tries the first node, the
> replica, and return false -> ok
> Then, I saw in the code that in case of a set, we set the key to the
> first node, and then we buffer the set to the replica. So I call set
> enough to flush this buffer. At that point, I have
> 
> first node -> 368 keys
> second node -> 364 keys
> third node -> 0 keys
> 
> My keys are "Key1" and "Key2", always stored with the same value
> I try to get my item, it finds it in the first node -> ok
> Then I kill the first node, and try to get Key1. As NO_BLOCK is set to
> 0, it first flushes the remaining call in the buffer, which means we
> now have 368 keys in the second node.
> At that point, I expect my get to return the correct value (it should
> try on the first node, see that the connection is down, put it in
> timeout state, and try on the replica).
> But in practice, it returns false, and the second node didn t receive
> any query.
> If I call get a second time on this same key, this time it finds it in
> the replica....I really don t get why...
> 
> Then I start again the first node, auto_ejecct is set to false, so I m
> sure it has not been removed from the ketama continuum. At that point,
> if I try to get the key, it should try to find it on the first node
> (and fail since this node is empty). But in fact, it directly goes to
> the second node, the first node doesn t receive queries anymore even
> if I send a lot of them...I don t understand why neither.
> 
> I hope someone will be able to help me..
> Cheers
> Nico

Attachment: signature.asc
Description: Message signed with OpenPGP using GPGMail

Reply via email to