I'm developing my app against Ror 2.0, and I noticed my public/
500.html page was not rendered in response to some low level errors
(like when I stopped MySql). So I did some debugging to figure out
why. After some digging I think I'm seeing a bug in the way
dispatcher.rb looks for the error pages.
This seems incredible to me. How could such a basic bug not be
But the code I'm looking at sure looks wrong. The filename it
constructs for the 500.html page has an extra space in it: "public/
Here's my diff:
C:\projects\[....]\vendor\rails>svn diff .
I wasn’t aware ANY request went through dispatcher.rb.
Correct me if I’m wrong.
@KC -- Are you seeing this in _production_? Seems more likely that
it's a development issue (ie., all requests considered local via your /
environment/development.rb) so that you see the error page that helps
you debug. I see a page with backtrace in dev (WinXP and Ubuntu) but
the expected 500 page if an error occurs in production.
All my testing has been in development instances. I'll try production
now. Makes sense that the routing would be different in the
But the code in question is in need or repair. It attempts to show
the 500 or 404 page and fails due to the string formatting error.
I can verify that this code is called in at least one context: when I
shut down my MySql server and attempted a request that involved active
record. No idea if this is