Report this

What is the reason for this report?

running rake tasks involving DB using cron returns wrong nil values

Posted on August 24, 2015

I have been searching for this for a couple of hours now:

I have a crontab file:

PATH=/usr/sbin:/usr/bin:/sbin:/bin
# Begin Whenever generated tasks for: bandmanage_backend_export_handler
* * * * * /bin/bash -l -c 'cd /home/froy001/apps/bandmanage_backend_export_handler/releases/20150824081934 && RAILS_ENV=production bundle exec rake bandmanage:request_user_message_export --silent >> log/cron_log.log 2>&1'

56 * * * * /bin/bash -l -c 'cd /home/froy001/apps/bandmanage_backend_export_handler/releases/20150824081934 && RAILS_ENV=production bundle exec rake bandmanage:get_requested_exports --silent >> log/cron_log.log 2>&1'

# End Whenever generated tasks for: bandmanage_backend_export_handler

and a rake task:


namespace :bandmanage do

  desc "request an export from SAMI"
  task request_user_message_export: :environment do
    puts "requesting message export"
    MessageExportService.new.message_export_request_hourly
    puts ".....DONE requesting message exports"
  end


  desc "request the exported result from SAMI a test for us to see"
  task request_user_message_export_test: :environment do
    puts "requesting message export"
    MessageExportService.new.message_export_request_test
    puts ".....DONE requesting message exports"
  end

  desc "request the exported result from SAMI"
  task get_requested_exports: :environment do
    puts "getting message export"
    MessageExportService.new.periodic_export_request_query
    puts ".....DONE getting message exports"
  end


end

When I run /bin/bash -l -c 'cd /home/froy001/apps/bandmanage_backend_export_handler/releases/20150824081934 && RAILS_ENV=production bundle exec rake bandmanage:request_user_message_export --silent >> log/cron_log.log 2>&1' from the command line It runs great.

When it is run by cron I get an error saying that a call to my DB requesting all registered users returns nil. And the job aborts.

I can’t figure out why. Please help!!

The developer cloud

Scale up as you grow — whether you're running one virtual machine or ten thousand.

Start building today

From GPU-powered inference and Kubernetes to managed databases and storage, get everything you need to build, scale, and deploy intelligent applications.