Completed 500 Internal Server Error on heroku devise sign up - ruby-on-rails

Keep getting this error when trying to sign up on live Rails app. The log also shows this:
2015-06-15T00:13:57.424501+00:00 heroku[router]: at=info method=POST path="/users" host=viral-blocmarks.herokuapp.com request_id=9e9de849-e0fa-40d2-b9a9-d69b605bb55d fwd="71.163.107.55" dyno=web.1 connect=1ms service=105ms status=500 bytes=1754
The app runs fine in development mode, sign up and sign in without problems. Looked at the versions of my databases in local and remote heroku, and they are out of sync. Heroku version is this (heroku run rake db:version):
20150614012934
Local version is this (rake db:version):
20150614160654
I tried to sync them using
heroku run rake db:migrate
But they don't sync, maybe because there is no difference. Anyway, I would appreciate some help since the answers to similar posts don't seem to work for me.
I ran the following, but it didn't help:
heroku run rake db:reset
Went to the live app, and was NOT able to sign up. Got the logs, which had the same error
Completed 500 Internal Server Error in 707ms (ActiveRecord: 10.0ms)
2015-06-15T02:55:49.697158+00:00 app[web.1]: vendor/bundle/ruby/2.0.0/gems/actionpack-4.2.1/lib/action_dispatch/middleware/static.rb:113:in `call'
2015-06-15T02:55:49.697160+00:00 app[web.1]: vendor/bundle/ruby/2.0.0/gems/rack-1.6.1/lib/rack/sendfile.rb:113:in `call'
2015-06-15T02:55:49.697163+00:00 app[web.1]: vendor/bundle/ruby/2.0.0/gems/railties-4.2.1/lib/rails/application.rb:164:in `call'
2015-06-15T02:55:49.697161+00:00 app[web.1]: vendor/bundle/ruby/2.0.0/gems/railties-4.2.1/lib/rails/engine.rb:518:in `call'
2015-06-15T02:55:49.697165+00:00 app[web.1]: vendor/bundle/ruby/2.0.0/gems/rack-1.6.1/lib/rack/lock.rb:17:in `call'
2015-06-15T02:55:49.697166+00:00 app[web.1]: vendor/bundle/ruby/2.0.0/gems/rack-1.6.1/lib/rack/content_length.rb:15:in `call'
2015-06-15T02:55:49.697168+00:00 app[web.1]: vendor/bundle/ruby/2.0.0/gems/rack-1.6.1/lib/rack/handler/webrick.rb:89:in `service'
2015-06-15T02:55:49.697171+00:00 app[web.1]: vendor/ruby-2.0.0/lib/ruby/2.0.0/webrick/httpserver.rb:94:in `run'
2015-06-15T02:55:49.697169+00:00 app[web.1]: vendor/ruby-2.0.0/lib/ruby/2.0.0/webrick/httpserver.rb:138:in `service'
2015-06-15T02:55:49.697172+00:00 app[web.1]: vendor/ruby-2.0.0/lib/ruby/2.0.0/webrick/server.rb:295:in `block in start_thread'

found the error. I didn't modify my setup_mail.rb for production:
if Rails.env.development? || Rails.env.production?
Once I added the OR clause, and then deployed, email sign up, confirmation and sign in all worked fine.

Related

Failed to Load Command Puma: NameError: Wrong Constant Name 'Model-Names' Copy

Just deployed to Heroku and successfullly migrated db. But site crashed with error saying there is 'NameError: Wrong Constant Name Companies Copy' where i have a Company model.
Using Rails 6.0.0.rc1
Ruby version 2.6.3
Checked through the entire code and confirmed that i did not initialize anything with the plural "Companies" name.
have checked through blogs and stackoverflow... there is no specific way to identify this issues.
2019-07-15T03:39:08.124899+00:00 heroku[web.1]: Starting process with command `bundle exec puma -p 28862`
2019-07-15T03:39:10.206749+00:00 app[web.1]: Puma starting in single mode...
2019-07-15T03:39:10.206793+00:00 app[web.1]: * Version 3.12.1 (ruby 2.6.3-p62), codename: Llamas in Pajamas
2019-07-15T03:39:10.206795+00:00 app[web.1]: * Min threads: 5, max threads: 5
2019-07-15T03:39:10.206797+00:00 app[web.1]: * Environment: production
2019-07-15T03:39:14.734930+00:00 app[web.1]: ! Unable to load application: NameError: wrong constant name Companies copy
2019-07-15T03:39:14.735052+00:00 app[web.1]: bundler: failed to load command: puma (/app/vendor/bundle/ruby/2.6.0/bin/puma)
2019-07-15T03:39:14.735115+00:00 app[web.1]: NameError: wrong constant name Companies copy
2019-07-15T03:39:14.735118+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.1.8/lib/zeitwerk/loader.rb:679:in `const_defined?'
2019-07-15T03:39:14.735120+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.1.8/lib/zeitwerk/loader.rb:679:in `cdef?'
2019-07-15T03:39:14.735122+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.1.8/lib/zeitwerk/loader.rb:597:in `strict_autoload_path' 2019-07-15T03:39:14.735124+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.1.8/lib/zeitwerk/loader.rb:574:in `autoload_for?'
2019-07-15T03:39:14.735126+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.1.8/lib/zeitwerk/loader.rb:488:in `autoload_subdir'
2019-07-15T03:39:14.735128+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.1.8/lib/zeitwerk/loader.rb:477:in `block in set_autoloads_in_dir'
2019-07-15T03:39:14.735130+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.1.8/lib/zeitwerk/loader.rb:649:in `block in ls'
2019-07-15T03:39:14.735132+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.1.8/lib/zeitwerk/loader.rb:646:in `foreach'
2019-07-15T03:39:14.735134+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.1.8/lib/zeitwerk/loader.rb:646:in `ls'
2019-07-15T03:39:14.735136+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.1.8/lib/zeitwerk/loader.rb:463:in `set_autoloads_in_dir'
2019-07-15T03:39:14.735138+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.1.8/lib/zeitwerk/loader/callbacks.rb:65:in `block in on_namespace_loaded'
2019-07-15T03:39:14.735139+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.1.8/lib/zeitwerk/loader/callbacks.rb:64:in `each'
2019-07-15T03:39:14.735141+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.1.8/lib/zeitwerk/loader/callbacks.rb:64:in `on_namespace_loaded'
2019-07-15T03:39:14.735142+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.1.8/lib/zeitwerk/loader/callbacks.rb:50:in `block in on_dir_autoloaded'
2019-07-15T03:39:14.735144+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.1.8/lib/zeitwerk/loader/callbacks.rb:37:in `synchronize'
2019-07-15T03:39:14.735145+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.1.8/lib/zeitwerk/loader/callbacks.
Hope anyone with similar experience can at least point me to where to look to solve or dissect this issue further.
Many thanks.
UPDATE:
Found a quick fix. The reason the error was raise was due to autoloading with with zeitwerk which is the default autoloader for rails 6.
I have not found the reason as to why I had the NameError. So, in the application.rb file, I reverted the autoloading back to the classic version which was used for rails before version 6. After that everything went well.
config.load_defaults "6.x"
config.autoloader = :classic

How to fix "Client Request Interrupted" error in Heroku (with a rails app)?

I deployed my rails app on Heroku.
When I try to create a new profile, my app crashes. My logs display a Client Request Interrupted error. You can see my logs below.
I searched this error on heroku dev center: https://devcenter.heroku.com/changelog-items/662
On this page (https://devcenter.heroku.com/changelog-items/662):
It said : "This error will be logged if the client socket was closed either in the middle of the request or before a response could be returned."
Then
"This error condition caused an H18 to be logged and the sock field could be used to differentiate between what are now H18 and H27 errors. "
H18 - Server Request Interrupted
The backend socket, belonging to your app’s web process was closed before the backend returned an HTTP response.
2019-02-05T15:53:19.905345+00:00 app[web.1]: bundler: failed to load command: puma (/app/vendor/bundle/ruby/2.5.0/bin/puma)
2019-02-05T15:53:19.905399+00:00 app[web.1]: SignalException: SIGTERM
2019-02-05T15:53:19.905401+00:00 app[web.1]: /app/vendor/bundle/ruby/2.5.0/gems/puma-3.12.0/lib/puma/launcher.rb:398:in `block in setup_signals'
2019-02-05T15:53:19.905406+00:00 app[web.1]: /app/vendor/bundle/ruby/2.5.0/gems/puma-3.12.0/lib/puma/single.rb:115:in `join'
2019-02-05T15:53:19.905407+00:00 app[web.1]: /app/vendor/bundle/ruby/2.5.0/gems/puma-3.12.0/lib/puma/single.rb:115:in `run'
2019-02-05T15:53:19.905409+00:00 app[web.1]: /app/vendor/bundle/ruby/2.5.0/gems/puma-3.12.0/lib/puma/launcher.rb:184:in `run'
2019-02-05T15:53:19.905410+00:00 app[web.1]: /app/vendor/bundle/ruby/2.5.0/gems/puma-3.12.0/lib/puma/cli.rb:78:in `run'
2019-02-05T15:53:19.905412+00:00 app[web.1]: /app/vendor/bundle/ruby/2.5.0/gems/puma-3.12.0/bin/puma:10:in `<top (required)>'
2019-02-05T15:53:19.905414+00:00 app[web.1]: /app/vendor/bundle/ruby/2.5.0/bin/puma:23:in `load'
2019-02-05T15:53:19.905415+00:00 app[web.1]: /app/vendor/bundle/ruby/2.5.0/bin/puma:23:in `<top (required)>'
2019-02-05T21:33:39.526627+00:00 heroku[web.1]: Unidling
2019-02-05T21:33:53.579585+00:00 app[web.1]: Puma starting in single mode...
2019-02-05T21:33:53.579631+00:00 app[web.1]: * Version 3.12.0 (ruby 2.5.3-p105), codename: Llamas in Pajamas
2019-02-05T21:33:53.579632+00:00 app[web.1]: * Min threads: 5, max threads: 5
2019-02-05T21:33:53.579634+00:00 app[web.1]: * Environment: production
2019-02-05T21:34:00.063370+00:00 heroku[web.1]: State changed from starting to up
2019-02-05T21:33:59.640588+00:00 app[web.1]: * Listening on tcp://0.0.0.0:11397
2019-02-05T21:33:59.642173+00:00 app[web.1]: Use Ctrl-C to stop
2019-02-05T21:34:02.204235+00:00 heroku[router]: sock=client at=warning code=H27 desc="Client Request Interrupted" method=GET path="/" host=agora-challenge.herokuapp.com request_id=9d994b8b-eff4-4088-b2be-a42b14fec708 fwd="209.17.96.226" dyno=web.1 connect=1ms service=119ms status=499 bytes= protocol=https
The important part to notice is the sock=client which means that the request was interrupted at the request of the client:
2019-02-05T21:34:02.204235+00:00 heroku[router]: sock=client at=warning code=H27 desc="Client Request Interrupted" method=GET path="/" host=agora-challenge.herokuapp.com request_id=9d994b8b-eff4-4088-b2be-a42b14fec708 fwd="209.17.96.226" dyno=web.1 connect=1ms service=119ms status=499 bytes= protocol=https
I didn't understand either Heroku dev center explanations nor previous Stack Overflow questions.
Thanks a lot for your answers.

Heroku rails installation stopped working after month

I set up this super simple rails app about 5 month ago and it worked until lately.
But today i noticed im getting this error: "We're sorry, but something went wrong. If you are the application owner check the logs for more information."
I checked the heroku logs but i dont see any errors appart from what i assume is the daily restart:
2017-02-11T01:37:52.624288+00:00 heroku[router]: at=info method=GET path="/favicon.ico" host=url.herokuapp.com request_id=918be0b7-bf45-4111-97b8-d95450dd3507 fwd="126.7.114.122" dyno=web.1 connect=0ms service=4ms status=200 bytes=228
2017-02-11T01:38:45.926088+00:00 heroku[web.1]: Restarting
2017-02-11T01:38:45.927276+00:00 heroku[web.1]: State changed from up to starting
2017-02-11T01:38:46.437082+00:00 app[web.1]: [2017-02-11 01:38:46] FATAL SignalException: SIGTERM
2017-02-11T01:38:46.437099+00:00 app[web.1]: /app/vendor/ruby-2.2.4/lib/ruby/2.2.0/webrick/server.rb:174:in `select'
2017-02-11T01:38:46.437100+00:00 app[web.1]: /app/vendor/ruby-2.2.4/lib/ruby/2.2.0/webrick/server.rb:174:in `block in start'
2017-02-11T01:38:46.437101+00:00 app[web.1]: /app/vendor/ruby-2.2.4/lib/ruby/2.2.0/webrick/server.rb:32:in `start'
2017-02-11T01:38:46.437102+00:00 app[web.1]: /app/vendor/ruby-2.2.4/lib/ruby/2.2.0/webrick/server.rb:162:in `start'
2017-02-11T01:38:46.437103+00:00 app[web.1]: /app/vendor/bundle/ruby/2.2.0/gems/rack-1.6.4/lib/rack/handler/webrick.rb:34:in `run'
2017-02-11T01:38:46.437103+00:00 app[web.1]: /app/vendor/bundle/ruby/2.2.0/gems/rack-1.6.4/lib/rack/server.rb:286:in `start'
2017-02-11T01:38:46.437104+00:00 app[web.1]: /app/vendor/bundle/ruby/2.2.0/gems/railties-4.2.6/lib/rails/commands/server.rb:80:in `start'
2017-02-11T01:38:46.437105+00:00 app[web.1]: /app/vendor/bundle/ruby/2.2.0/gems/railties-4.2.6/lib/rails/commands/commands_tasks.rb:80:in `block in server'
2017-02-11T01:38:46.437105+00:00 app[web.1]: /app/vendor/bundle/ruby/2.2.0/gems/railties-4.2.6/lib/rails/commands/commands_tasks.rb:75:in `tap'
2017-02-11T01:38:46.437106+00:00 app[web.1]: /app/vendor/bundle/ruby/2.2.0/gems/railties-4.2.6/lib/rails/commands/commands_tasks.rb:75:in `server'
2017-02-11T01:38:46.437106+00:00 app[web.1]: /app/vendor/bundle/ruby/2.2.0/gems/railties-4.2.6/lib/rails/commands/commands_tasks.rb:39:in `run_command!'
2017-02-11T01:38:46.437107+00:00 app[web.1]: /app/vendor/bundle/ruby/2.2.0/gems/railties-4.2.6/lib/rails/commands.rb:17:in `<top (required)>'
2017-02-11T01:38:46.437108+00:00 app[web.1]: bin/rails:9:in `require'
2017-02-11T01:38:46.437109+00:00 app[web.1]: bin/rails:9:in `<main>'
2017-02-11T01:38:46.437176+00:00 app[web.1]: [2017-02-11 01:38:46] INFO going to shutdown ...
2017-02-11T01:38:46.437226+00:00 app[web.1]: [2017-02-11 01:38:46] INFO WEBrick::HTTPServer#start done.
I also took a look at my production.log file but it's weirdly empty.
I'm at a loss regarding how to trouble shoot this. any suggestion?
So, it turned out it wasnt actually related to the environment.
I ran the site on my machine with the prod env and was able to find an access_token was expired which error wasnt caught correctly causing the 500 error.
I fixed it and redeployed the site. it works now.

Trouble with Rails Unicorn Web Server starting on Heroku

I've been trouble-shooting my crashed application on Heroku without success. I'm using:
Ruby 2.1.0
Rails 4.1.6
Unicorn web server
I'm getting an Application Error when I go to my url.
These are the last few lines from heroku logs
2015-03-13T20:44:36.095469+00:00 app[web.1]: from config.ru:1:in `new'
2015-03-13T20:44:36.095481+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.1.0/bin/unicorn:23:in `load'
2015-03-13T20:44:36.095477+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.1.0/gems/unicorn- 4.8.3/lib/unicorn/http_server.rb:764:in `build_app!'
2015-03-13T20:44:36.095483+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.1.0/bin/unicorn:23:in `<main>'
2015-03-13T20:44:36.095470+00:00 app[web.1]: from config.ru:1:in `<main>'
2015-03-13T20:44:36.095471+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.1.0/gems/unicorn-4.8.3/lib/unicorn.rb:48:in `eval'
2015-03-13T20:44:36.095467+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.1.0/gems/rack-1.5.2/lib/rack/builder.rb:55:in `initialize'
2015-03-13T20:44:36.095473+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.1.0/gems/unicorn-4.8.3/lib/unicorn.rb:48:in `block in builder'
2015-03-13T20:44:36.095474+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.1.0/gems/unicorn-4.8.3/lib/unicorn/http_server.rb:764:in `call'
2015-03-13T20:44:36.095479+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.1.0/gems/unicorn-4.8.3/lib/unicorn/http_server.rb:137:in `start'
2015-03-13T20:44:36.095480+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.1.0/gems/unicorn-4.8.3/bin/unicorn:126:in `<top (required)>'
2015-03-13T20:44:36.912915+00:00 heroku[web.1]: Process exited with status 1
2015-03-13T20:44:37.040788+00:00 heroku[web.1]: State changed from starting to crashed
2015-03-13T20:45:09.859594+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=stand-as-witnesses-staging.herokuapp.com request_id=2228b811-6b37-482e-a1ec-630699947581 fwd="71.232.132.204" dyno= connect= service= status=503 bytes=
Heroku ps gives:
=== web (1X): `bundle exec unicorn -p $PORT -c ./config/unicorn.rb`
web.1: crashed 2015/03/13 16:44:37 (~ 19m ago)
I upgraded from Ruby 2.0.0 to 2.1.0 and from Unicorn 4.6.3 to 4.8.3 to see if that would solve the problem, but no help there.
My Procfile and app/config/unicorn.rb files are standard based on Heroku's instructions for using unicorn.
Since the app runs fine locally, can anyone point out why I'm getting this crash?
Thanks!
Seems like you should specify model class instead (as I understand this is BlockedSite) of controller in your app/admin/blocked_site.rb AA file. This should fix error:
superclass mismatch for class BlockedSitesController (TypeError)
Thanks for pointing me in the right direction. It turns out that the problem was that we had an existing file in app/controllers/admin/blocked_sites_controller.rb. When I removed that file and a couple of others in that same location, the crashes went away and I was able to navigate to my pages.

Rails facebook Iframe app error: InvalidAuthenticityToken

I get this error when I acccess my facebook iframe app:
The change you wanted was rejected.
Maybe you tried to change something you didn't have access to.
Heroku logs:
2011-06-05T08:30:41+00:00 app[web.1]: Started POST "/facebook/" for xxxx
03 at 2011-06-05 10:30:41 +0200
2011-06-05T08:30:41+00:00 heroku[router]: POST www.vinderhimlen.dk/facebook/ dyn
o=web.1 queue=0 wait=0ms service=39ms bytes=711
2011-06-05T08:30:41+00:00 app[web.1]:
2011-06-05T08:30:41+00:00 app[web.1]: ActionController::InvalidAuthenticityToken
(ActionController::InvalidAuthenticityToken):
2011-06-05T08:30:41+00:00 app[web.1]:
2011-06-05T08:30:41+00:00 app[web.1]:
2011-06-05T08:30:41+00:00 app[web.1]:
2011-06-05T08:30:45+00:00 heroku[web.1]: Stopping process with SIGTERM
2011-06-05T08:30:45+00:00 app[web.1]: >> Stopping ...
2011-06-05T08:30:45+00:00 heroku[web.1]: Process exited
Iceberg#ICEBERG-PC /c/rails/konkurranceportalen (master)
$
By default, Rails requires a token to be included as a hidden field with every POST.
This protects your app from Cross-Site Request Forgery.
See the Rails Request Forgery Protection documentation.
skip_before_filter :verify_authenticity_token may be useful for further debugging.

Resources