PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

I lavoratori Rails Resque non riescono con PGError:il server ha chiuso la connessione in modo imprevisto

Dopo aver fatto un po' di ricerca / tentativi ed errori. Per chi sta incontrando lo stesso problema. Per chiarire cosa ha menzionato gc.

Resque.after_fork = Proc.new { ActiveRecord::Base.establish_connection }

Il codice sopra deve essere inserito in:/lib/tasks/resque.rake

Ad esempio:

require 'resque/tasks'

task "resque:setup" => :environment do
  ENV['QUEUE'] = '*'

  Resque.after_fork do |job|
    ActiveRecord::Base.establish_connection
  end

end

desc "Alias for resque:work (To run workers on Heroku)"
task "jobs:work" => "resque:work"

Spero che questo aiuti qualcuno, tanto quanto ha fatto per me.