[Bug 637114] Re: Large multiget requests randomly broken
Michael Koziarski
michael at koziarski.com
Thu Aug 4 21:49:13 UTC 2011
The cause of this is a broken back port of the upstream change set:
https://github.com/memcached/memcached/commit/d9cd01ede97f4145af9781d448c62a3318952719
That changeset uses strncmp whereas the .diff file uses strcmp
++ if (ptr - c->rcurr > 100 ||
++ strcmp(ptr, "get ") && strcmp(ptr, "gets ")) {
++ conn_set_state(c, conn_closing);
++ return 1;
++ }
Given that the string being compared contains either "get HUGE KEY" or
"gets HUGE KEYS" the check in the ubuntu diff will *always* return
false.
Simply correcting that back port appears to solve the problem for us.
--
You received this bug notification because you are a member of Ubuntu
Server Team, which is subscribed to memcached in Ubuntu.
https://bugs.launchpad.net/bugs/637114
Title:
Large multiget requests randomly broken
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/memcached/+bug/637114/+subscriptions
More information about the Ubuntu-server-bugs
mailing list