Closed jason-o-matic closed 12 years ago
Lazily +1'ing this. It goes through to re-raise twice as well. I'm not sure if that's a good thing.
Actually, this exception (Memcached::ABadKeyWasProvidedOrCharactersOutOfRange) is being thrown when there's no problem with the keys. I've tried logging the keys when it occurs, and then retrying the multi_get, and it works without problem on the same keys.
Would be curious to know what happens over the wire at that point. Maybe we could derive a reproducible case.
On further inspection, MEMCACHED_BAD_KEY_PROVIDED is only thrown by client-side checks. You could try turning off :verify_key and seeing if you get a more revealing error (or no error).
I also see that the issue surrounding the missing key param is the double re-raise...will fix.
Have disabled verify_key. Will see what blows up. Love the comments in the docs about this one: "Validate keys before accepting them. Never disable this."
I get the same Memcached::ABadKeyWasProvidedOrCharactersOutOfRange (Key {}) error. Does the reraise cause this?
It's possible the reraise is masking the real error, but are you sure it's off? That error should never be thrown.
yes: @options={:retry_timeout=>1, :no_block=>true, :buffer_requests=>true, :noreply=>true, :binary_protocol=>false, :verify_key=>false},
I'll try updating to your fix soon.
This makes it much harder to figure out what the issue was from the exception info.