astro / astro/remcached

Breaking under memcached 1.4.12

Open
#3 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Ruby
Stars
50
Forks
5
PR merge metrics
No merged PRs in 30d

Description

I think there may be a break in the remcached client when used in conjunction with the latest memcached release (1.4.12). When I launch my Goliath project after installing the latest memcache, I receive the following error when the memcached connection pool is established:

   /Users/awatson/.rvm/gems/ruby-1.9.2-p180@proj/gems/remcached-0.4.1/lib/remcached/client.rb:79:in `receive_data': undefined method `[]' for nil:NilClass (NoMethodError)

from /Users/awatson/.rvm/gems/ruby-1.9.2-p180@proj/gems/eventmachine-1.0.0.beta.3/lib/eventmachine.rb:199:in `run_machine'
from /Users/awatson/.rvm/gems/ruby-1.9.2-p180@proj/gems/eventmachine-1.0.0.beta.3/lib/eventmachine.rb:199:in `run'
from /Users/awatson/.rvm/gems/ruby-1.9.2-p180@proj/gems/em-synchrony-1.0.0/lib/em-synchrony.rb:27:in `synchrony'
from /Users/awatson/.rvm/gems/ruby-1.9.2-p180@proj/gems/goliath-0.9.4/lib/goliath/server.rb:73:in `start'
from /Users/awatson/.rvm/gems/ruby-1.9.2-p180@proj/gems/goliath-0.9.4/lib/goliath/runner.rb:236:in `run_server'
from /Users/awatson/.rvm/gems/ruby-1.9.2-p180@proj/gems/goliath-0.9.4/lib/goliath/runner.rb:170:in `run'
from /Users/awatson/.rvm/gems/ruby-1.9.2-p180@proj/gems/goliath-0.9.4/lib/goliath/application.rb:123:in `run!'
from /Users/awatson/.rvm/gems/ruby-1.9.2-p180@proj/gems/goliath-0.9.4/lib/goliath/application.rb:141:in `block in '

I can see that Goliath makes the initial connection to memcache via memcache logging, but it seems that something bad happens in the client during the response. If I back down memcache to 1.4.10, the problem disappears.

Thanks,
Adam

Contributor guide

No contributing guide indexed for this repository

Research direction

Start at lib/remcached/client.rb line 79 and inspect how the memcached response is handled when connecting to memcached 1.4.12. Reproduce the failure with memcached 1.4.12 and compare it with 1.4.10; done means the connection pool establishes without the NoMethodError.

Written by the indexing model from the issue text.

Assessment

Tech stack
memcached, ruby
Domain
backend
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.