I'm having issues importing a CSV using a rails runner command once my 
application code is deployed to Heroku.

The CSV gets started from the command line like this:

heroku run rails runner scripts/import_csv.rb < lesley_grades.csv

which then gets initialized here

CSVImporter.new.import!($stdin)

This is the code for the CVS import

  def import!(csv)
    p "Before database transaction"
    ActiveRecord::Base.transaction do
      p "I'm here before CSV.parse!!!!!"
      csv_reader = CSV.parse(csv, row_sep: "\r") do |row|
        p header_row?(row)
        p "Header row!?"
        set_record_class_and_columns(row) if header_row?(row)

        if columns_mapping_defined? && record_class_defined? && record_row?(row)
          import_row(row)
        end
      end
      if imports_failed?
        puts 'Aborting importing and rolling back...'
        show_errors
        raise ActiveRecord::Rollback
      end
    end
  end

Here is the log and the error message that gets printed after I control+c from 
the stall.

heroku run rails runner scripts/import_csv.rb < 
~/Desktop/utc_csv_export/lesley_grades.csv
    Running `rails runner scripts/import_csv.rb` attached to terminal... up, 
run.9179
LesleyGrade,lesley_id,last,first,active,site,cohort,section,sections_title,faculty,completed_term_cred,term,sec_start_date,sec_end_date,grade,stc_cred,active_program,most_recent_program,intent_filed,stc_term_gpa,sta_cum_gpa,start_term,prog_status,last_change_date,1654038,John,Doe,TRUE,"Baltimore,
 MD",2012,14/FA_ERLIT_6999_U15AA,Directed Independent Study,"McMackin Mary , 
Richardson 
Kathleen",2,14/FA,9/3/14,12/17/14,S,2,EME.2270.TCBAL.01,EME.2270.TCBAL.01, 
,3.3,3.148,12/SU,A,9/2/14** [NewRelic][03/31/15 18:30:10 +0000 
faf23bac-4be0-4098-82e5-612003c543e6 (3)] INFO : Starting the New Relic agent 
in "staging" environment.** [NewRelic][03/31/15 18:30:10 +0000 
faf23bac-4be0-4098-82e5-612003c543e6 (3)] INFO : To prevent agent startup add a 
NEWRELIC_AGENT_ENABLED=false environment variable or modify the "staging" 
section of your newrelic.yml.** [NewRelic][03/31/15 18:30:10 +0000 
faf23bac-4be0-4098-82e5-612003c543e6 (3)] INFO : Reading configuration from 
config/newrelic.yml** [NewRelic][03/31/15 18:30:10 +0000 
faf23bac-4be0-4098-82e5-612003c543e6 (3)] INFO : Environment: staging** 
[NewRelic][03/31/15 18:30:10 +0000 faf23bac-4be0-4098-82e5-612003c543e6 (3)] 
INFO : No known dispatcher detected.** [NewRelic][03/31/15 18:30:10 +0000 
faf23bac-4be0-4098-82e5-612003c543e6 (3)] INFO : Application: My Application 
(Staging)** [NewRelic][03/31/15 18:30:10 +0000 
faf23bac-4be0-4098-82e5-612003c543e6 (3)] INFO : Installing deferred Rack 
instrumentation** [NewRelic][03/31/15 18:30:10 +0000 
faf23bac-4be0-4098-82e5-612003c543e6 (3)] INFO : Installing Rack::Builder 
middleware instrumentation** [NewRelic][03/31/15 18:30:10 +0000 
faf23bac-4be0-4098-82e5-612003c543e6 (3)] INFO : Installing Net 
instrumentation** [NewRelic][03/31/15 18:30:10 +0000 
faf23bac-4be0-4098-82e5-612003c543e6 (3)] INFO : Installing Rails 3+ middleware 
instrumentation** [NewRelic][03/31/15 18:30:10 +0000 
faf23bac-4be0-4098-82e5-612003c543e6 (3)] INFO : Installing middleware-based 
Excon instrumentation** [NewRelic][03/31/15 18:30:10 +0000 
faf23bac-4be0-4098-82e5-612003c543e6 (3)] INFO : Installing ActiveRecord 4 
instrumentation** [NewRelic][03/31/15 18:30:10 +0000 
faf23bac-4be0-4098-82e5-612003c543e6 (3)] INFO : Installing Rails 4 Controller 
instrumentation** [NewRelic][03/31/15 18:30:10 +0000 
faf23bac-4be0-4098-82e5-612003c543e6 (3)] INFO : Installing Rails 4 Error 
instrumentation** [NewRelic][03/31/15 18:30:10 +0000 
faf23bac-4be0-4098-82e5-612003c543e6 (3)] INFO : Installing Rails 4 view 
instrumentation** [NewRelic][03/31/15 18:30:10 +0000 
faf23bac-4be0-4098-82e5-612003c543e6 (3)] INFO : Finished instrumentation** 
[NewRelic][03/31/15 18:30:11 +0000 faf23bac-4be0-4098-82e5-612003c543e6 (3)] 
INFO : Reporting to: 
https://rpm.newrelic.com/accounts/773165/applications/4986263"Before database 
transaction""I'm here before CSV.parse!!!!!"^C^C** [NewRelic][03/31/15 18:35:15 
+0000 faf23bac-4be0-4098-82e5-612003c543e6 (3)] INFO : Starting Agent 
shutdown/app/vendor/ruby-2.0.0/lib/ruby/2.0.0/csv.rb:1778:in `gets': Interrupt
    from /app/vendor/ruby-2.0.0/lib/ruby/2.0.0/csv.rb:1778:in `block in shift'
    from /app/vendor/ruby-2.0.0/lib/ruby/2.0.0/csv.rb:1776:in `loop'
    from /app/vendor/ruby-2.0.0/lib/ruby/2.0.0/csv.rb:1776:in `shift'
    from /app/vendor/ruby-2.0.0/lib/ruby/2.0.0/csv.rb:1718:in `each'
    from /app/vendor/ruby-2.0.0/lib/ruby/2.0.0/csv.rb:1296:in `parse'
    from /app/lib/import/csv_importer.rb:14:in `block in import!'
    from 
/app/vendor/bundle/ruby/2.0.0/gems/activerecord-4.1.1/lib/active_record/connection_adapters/abstract/database_statements.rb:211:in
 `block in transaction'
    from 
/app/vendor/bundle/ruby/2.0.0/gems/activerecord-4.1.1/lib/active_record/connection_adapters/abstract/database_statements.rb:219:in
 `within_new_transaction'
    from 
/app/vendor/bundle/ruby/2.0.0/gems/activerecord-4.1.1/lib/active_record/connection_adapters/abstract/database_statements.rb:211:in
 `transaction'
    from 
/app/vendor/bundle/ruby/2.0.0/gems/activerecord-4.1.1/lib/active_record/transactions.rb:208:in
 `transaction'
    from /app/lib/import/csv_importer.rb:12:in `import!'
    from scripts/import_csv.rb:3:in `<top (required)>'
    from 
/app/vendor/bundle/ruby/2.0.0/gems/railties-4.1.1/lib/rails/commands/runner.rb:60:in
 `load'
    from 
/app/vendor/bundle/ruby/2.0.0/gems/railties-4.1.1/lib/rails/commands/runner.rb:60:in
 `<top (required)>'
    from 
/app/vendor/bundle/ruby/2.0.0/gems/railties-4.1.1/lib/rails/commands/commands_tasks.rb:128:in
 `require'
    from 
/app/vendor/bundle/ruby/2.0.0/gems/railties-4.1.1/lib/rails/commands/commands_tasks.rb:128:in
 `require_command!'
    from 
/app/vendor/bundle/ruby/2.0.0/gems/railties-4.1.1/lib/rails/commands/commands_tasks.rb:95:in
 `runner'
    from 
/app/vendor/bundle/ruby/2.0.0/gems/railties-4.1.1/lib/rails/commands/commands_tasks.rb:40:in
 `run_command!'
    from 
/app/vendor/bundle/ruby/2.0.0/gems/railties-4.1.1/lib/rails/commands.rb:17:in 
`<top (required)>'
    from /app/bin/rails:4:in `require'
    from /app/bin/rails:4:in `<main>'

As you can see from the console I can't get passed this line(14):

csv_reader = CSV.parse(csv, row_sep: "\r")

Is this a Dyno's issue or even a New Relic issue? So far I'm running this 
on a free heroku instance, and I only uploaded 2 rows just to test it, and 
it still doesn't work.

Anyone have any clues? Thanks!

-- 
-- 
You received this message because you are subscribed to the Google
Groups "Heroku" group.

To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/heroku?hl=en_US?hl=en

--- 
You received this message because you are subscribed to the Google Groups 
"Heroku Community" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to