Another NoMethodError - trackbacks this time


#1

Here’s another strange NoMethodError from my production log.
Strangely this seems to be catching because of trackbacks. I never
have trackbacks enabled because in my opinion they’re only of use to
spammers.

Doesn’t seem to be trashing fcgi, but … err … I haven’t a clue
what it’s impact is.

Processing ArticlesController#trackback (for 68.142.250.70 at
2006-04-04 03:39:08) [GET]
Parameters: {“action”=>“trackback”, “id”=>“1055”,
“controller”=>“articles”}

NoMethodError (undefined method has_key' for {"action"=>"trackback", "id"=>"1569", "controller"=>"articles"}:HashWithIndifferentAccess): /app/controllers/articles_controller.rb:105:intrackback’
/app/controllers/articles_controller.rb:101:in catch' /app/controllers/articles_controller.rb:101:intrackback’
/usr/lib/ruby/gems/1.8/gems/actionpack-1.11.2/lib/
action_controller/base.rb:853:in send' /usr/lib/ruby/gems/1.8/gems/actionpack-1.11.2/lib/ action_controller/base.rb:853:inperform_action_without_filters’
/usr/lib/ruby/gems/1.8/gems/actionpack-1.11.2/lib/
action_controller/filters.rb:332:in perform_action_without_benchmark' /usr/lib/ruby/gems/1.8/gems/actionpack-1.11.2/lib/ action_controller/benchmarking.rb:69:inperform_action_without_rescue’
/usr/lib/ruby/gems/1.8/gems/actionpack-1.11.2/lib/
action_controller/benchmarking.rb:69:in measure' /usr/lib/ruby/gems/1.8/gems/actionpack-1.11.2/lib/ action_controller/benchmarking.rb:69:inperform_action_without_rescue’
/usr/lib/ruby/gems/1.8/gems/actionpack-1.11.2/lib/
action_controller/rescue.rb:82:in perform_action' /usr/lib/ruby/gems/1.8/gems/actionpack-1.11.2/lib/ action_controller/base.rb:369:insend’
/usr/lib/ruby/gems/1.8/gems/actionpack-1.11.2/lib/
action_controller/base.rb:369:in
process_without_session_management_support' /usr/lib/ruby/gems/1.8/gems/actionpack-1.11.2/lib/ action_controller/session_management.rb:116:inprocess’
/usr/lib/ruby/gems/1.8/gems/rails-1.0.0/lib/dispatcher.rb:38:in
dispatch' /usr/lib/ruby/gems/1.8/gems/rails-1.0.0/lib/fcgi_handler.rb: 141:inprocess_request’
/usr/lib/ruby/gems/1.8/gems/rails-1.0.0/lib/fcgi_handler.rb:
53:in process!' /usr/lib/ruby/gems/1.8/gems/rails-1.0.0/lib/fcgi_handler.rb: 52:ineach_cgi’
/usr/lib/ruby/1.8/fcgi.rb:597:in each' /usr/lib/ruby/1.8/fcgi.rb:597:ineach_cgi’
/usr/lib/ruby/gems/1.8/gems/rails-1.0.0/lib/fcgi_handler.rb:
52:in process!' /usr/lib/ruby/gems/1.8/gems/rails-1.0.0/lib/fcgi_handler.rb: 22:inprocess!’
dispatch.fcgi:24

Cheers


#2

Huh, there’s actually a bug in the code there. Apparently we don’t
have a test for that action. I’ll write a test, then fix the bug.


#3

Ok, fixed in r996. There was actually several problems with receiving
trackback pings and this has been fixed. There’s also now a test for it.


#4

On 4 Apr 2006, at 14:06, Kevin B. wrote:

Here’s another strange NoMethodError from my production log.
Strangely this seems to be catching because of trackbacks. I never
have trackbacks enabled because in my opinion they’re only of use to
spammers.

Cheers Kevin, I’m pulling down r996 now


#5

On 4 Apr 2006, at 14:06, Kevin B. wrote:

Here’s another strange NoMethodError from my production log.
Strangely this seems to be catching because of trackbacks. I never
have trackbacks enabled because in my opinion they’re only of use to
spammers.

There wasn’t a ticket for this Kevin, but I can confirm there’s no
errors now.

For theme developers, it’s worth remembering that you need to change
the RDF description … line 10(ish) in /views/articles/read.rhtml if
you have:

 dc:description="<%=h strip_html(@article.body_html[0..255]).gsub

(/-+/, ‘-’) %>"

to

 dc:description="<%=h strip_html(article_html(@article)

[0…255]).gsub(/-+/, ‘-’) %>"

or it’ll throw out errors.