First off, never do this. Of course, you wouldn't. Except by accident. I'm only admitting to it in the hopes someone else out there doesn't waste too much time with something so simple.

I was RESTifying a controller by whitelisting methods and then testing. For #show I forgot to delete the private version before testing. Hilarity ensued. Neither Mongrel or Thin would tell me there was a problem, but, even though I had a show method, I was told it didn't exist. On a whim, I scrolled to the bottom of the file and noticed that show existed as a private method, and removing it promptly solved my problem.

While playing with routes to figure out the problem, I also encountered #show rendering show.rhtml, (it's old code) -- the server appeared to be running the private method instead of the public version. This is probably a bug, but in Ruby or Rails?