tooltime/tooltime — Issue #10: Parser Bug: bRPSA
Author: mportiz08
Created: 2012-02-20 23:35:38+00:00
State: open

I've tested all of the data files with our uploader, and it only fails with one set of them:

bRPSA promoter TESS Hits 1.csv
bRPSA promoter TESS Job Parameters.csv
bRPSA promoter TESS Sequences.csv

Looks like it's probably just a special case in one of the .csv files.

Here's the stack trace when I tried to upload it for reference:

[UPLOADER] Uploader started...

[UPLOADER] parsing data set...
[UPLOADER]	bRPSA promoter TESS Hits 1.csv
[UPLOADER]	bRPSA promoter TESS Job Parameters.csv
[UPLOADER]	bRPSA promoter TESS Sequences.csv
(0.1ms) begin transaction
Comparison Exists (0.2ms) SELECT 1 FROM "comparisons" WHERE ("comparisons"."state" = 'MAC-T Undifferentiated/Differentiated' AND "comparisons"."species" = 'bovine' AND "comparisons"."cell_type" IS NULL) LIMIT 1
(0.1ms) rollback transaction
Comparison Load (0.2ms) SELECT "comparisons".* FROM "comparisons" WHERE "comparisons"."state" = 'MAC-T Undifferentiated/Differentiated' AND "comparisons"."species" = 'bovine' LIMIT 1
(0.0ms) begin transaction
Experiment Exists (0.2ms) SELECT 1 FROM "experiments" WHERE "experiments"."label" = 'Laura Strand-May 2011' LIMIT 1
(0.1ms) rollback transaction
(0.1ms) begin transaction
(0.5ms) UPDATE "delayed_jobs" SET "last_error" = '{undefined method `last'' for nil:NilClass
/Users/marcus/dev/code/ruby/tooltime-mportiz08/app/models/parsers/csv_parser.rb:12:in `get_val''
/Users/marcus/dev/code/ruby/tooltime-mportiz08/app/models/parsers/gene_parser.rb:49:in `block in import''
/Users/marcus/dev/code/ruby/tooltime-mportiz08/app/models/parsers/gene_parser.rb:49:in `each''
/Users/marcus/dev/code/ruby/tooltime-mportiz08/app/models/parsers/gene_parser.rb:49:in `import''
/Users/marcus/dev/code/ruby/tooltime-mportiz08/app/models/importer.rb:13:in `import!''
/Users/marcus/dev/code/ruby/tooltime-mportiz08/app/models/uploader.rb:31:in `block in parse_data''
/Users/marcus/dev/code/ruby/tooltime-mportiz08/app/models/uploader.rb:26:in `each''
/Users/marcus/dev/code/ruby/tooltime-mportiz08/app/models/uploader.rb:26:in `each_slice''
/Users/marcus/dev/code/ruby/tooltime-mportiz08/app/models/uploader.rb:26:in `parse_data''
/Users/marcus/dev/code/ruby/tooltime-mportiz08/app/models/uploader.rb:14:in `perform''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/backend/base.rb:94:in `block in invoke_job''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:60:in `call''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:60:in `block in initialize''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:65:in `call''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:65:in `execute''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:38:in `run_callbacks''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/backend/base.rb:91:in `invoke_job''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/worker.rb:162:in `block (2 levels) in run''
/Users/marcus/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/1.9.1/timeout.rb:57:in `timeout''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/worker.rb:162:in `block in run''
/Users/marcus/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/1.9.1/benchmark.rb:309:in `realtime''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/worker.rb:161:in `run''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/worker.rb:218:in `block in reserve_and_run_one_job''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:60:in `call''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:60:in `block in initialize''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:65:in `call''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:65:in `execute''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:38:in `run_callbacks''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/worker.rb:218:in `reserve_and_run_one_job''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/worker.rb:146:in `block in work_off''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/worker.rb:145:in `times''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/worker.rb:145:in `work_off''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/worker.rb:117:in `block (4 levels) in start''
/Users/marcus/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/1.9.1/benchmark.rb:309:in `realtime''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/worker.rb:116:in `block (3 levels) in start''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:60:in `call''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:60:in `block in initialize''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:65:in `call''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:65:in `execute''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:38:in `run_callbacks''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/worker.rb:113:in `block (2 levels) in start''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/worker.rb:112:in `loop''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/worker.rb:112:in `block in start''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/plugins/clear_locks.rb:7:in `call''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/plugins/clear_locks.rb:7:in `block (2 levels) in ''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:78:in `call''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:78:in `block (2 levels) in add''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:60:in `call''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:60:in `block in initialize''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:78:in `call''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:78:in `block in add''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:65:in `call''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:65:in `execute''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:38:in `run_callbacks''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/worker.rb:111:in `start''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/delayed_job-3.0.1/lib/delayed/tasks.rb:9:in `block (2 levels) in ''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/rake-0.9.2.2/lib/rake/task.rb:205:in `call''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/rake-0.9.2.2/lib/rake/task.rb:205:in `block in execute''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/rake-0.9.2.2/lib/rake/task.rb:200:in `each''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/rake-0.9.2.2/lib/rake/task.rb:200:in `execute''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/rake-0.9.2.2/lib/rake/task.rb:158:in `block in invoke_with_call_chain''
/Users/marcus/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/rake-0.9.2.2/lib/rake/task.rb:151:in `invoke_with_call_chain''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/rake-0.9.2.2/lib/rake/task.rb:144:in `invoke''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/rake-0.9.2.2/lib/rake/application.rb:116:in `invoke_task''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/rake-0.9.2.2/lib/rake/application.rb:94:in `block (2 levels) in top_level''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/rake-0.9.2.2/lib/rake/application.rb:94:in `each''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/rake-0.9.2.2/lib/rake/application.rb:94:in `block in top_level''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/rake-0.9.2.2/lib/rake/application.rb:133:in `standard_exception_handling''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/rake-0.9.2.2/lib/rake/application.rb:88:in `top_level''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/rake-0.9.2.2/lib/rake/application.rb:66:in `block in run''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/rake-0.9.2.2/lib/rake/application.rb:133:in `standard_exception_handling''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/rake-0.9.2.2/lib/rake/application.rb:63:in `run''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/gems/rake-0.9.2.2/bin/rake:33:in `''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/bin/rake:19:in `load''
/Users/marcus/.rvm/gems/ruby-1.9.2-p180/bin/rake:19:in `

''', "attempts" = 1, "run_at" = '2012-02-20 23:27:29.402131', "updated_at" = '2012-02-20 23:27:23.404595' WHERE "delayed_jobs"."id" = 52