collectiveidea / delayed_job

Database based asynchronous priority queue system -- Extracted from Shopify
http://groups.google.com/group/delayed_job
MIT License
4.82k stars 956 forks source link

Strange bug while sending email #205

Closed arrowcircle closed 13 years ago

arrowcircle commented 13 years ago

Hi! i have a strange bug with delayed_job. When i try to send email without DJ - all works ok, when i "delay" mailer method - it dont send email with error. Other delayed mailer methods work fine, just one get error:

{undefined method ascii_only?' for #<Email:0xc671db0> /opt/ruby/lib/ruby/gems/1.9.1/gems/activemodel-3.0.3/lib/active_model/attribute_methods.rb:364:inmethod_missing'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/activerecord-3.0.3/lib/active_record/attribute_methods.rb:46:in method_missing'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/mail-2.2.11/lib/mail/encodings.rb:183:inencode_non_usascii'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/mail-2.2.11/lib/mail/encodings.rb:178:in address_encode'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/mail-2.2.11/lib/mail/encodings.rb:175:inblock in address_encode'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/activerecord-3.0.3/lib/active_record/associations/association_collection.rb:430:in block in method_missing'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/activerecord-3.0.3/lib/active_record/associations/association_proxy.rb:216:inblock in method_missing'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/activerecord-3.0.3/lib/active_record/associations/association_proxy.rb:216:in map'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/activerecord-3.0.3/lib/active_record/associations/association_proxy.rb:216:inmethod_missing'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/activerecord-3.0.3/lib/active_record/associations/association_collection.rb:430:in method_missing'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/mail-2.2.11/lib/mail/encodings.rb:175:inaddress_encode'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/mail-2.2.11/lib/mail/fields/common/common_address.rb:20:in encode_if_needed'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/mail-2.2.11/lib/mail/fields/common/common_address.rb:9:inparse'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/mail-2.2.11/lib/mail/fields/to_field.rb:42:in initialize'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/mail-2.2.11/lib/mail/field.rb:158:innew'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/mail-2.2.11/lib/mail/field.rb:158:in new_field'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/mail-2.2.11/lib/mail/field.rb:145:increate_field'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/mail-2.2.11/lib/mail/field.rb:78:in initialize'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/mail-2.2.11/lib/mail/header.rb:159:innew'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/mail-2.2.11/lib/mail/header.rb:159:in []='\n/opt/ruby/lib/ruby/gems/1.9.1/gems/mail-2.2.11/lib/mail/message.rb:1220:in[]='\n/opt/ruby/lib/ruby/gems/1.9.1/gems/actionmailer-3.0.3/lib/action_mailer/base.rb:645:in block in mail'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/actionmailer-3.0.3/lib/action_mailer/base.rb:645:ineach'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/actionmailer-3.0.3/lib/action_mailer/base.rb:645:in mail'\n/projects/smartspace/app/mailers/notice_mailer.rb:68:innew_site_message'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/actionpack-3.0.3/lib/abstract_controller/base.rb:151:in process_action'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/actionpack-3.0.3/lib/abstract_controller/base.rb:120:inprocess'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/actionpack-3.0.3/lib/abstract_controller/rendering.rb:40:in process'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/actionmailer-3.0.3/lib/action_mailer/old_api.rb:75:inprocess'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/actionmailer-3.0.3/lib/action_mailer/base.rb:446:in process'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/actionmailer-3.0.3/lib/action_mailer/base.rb:441:ininitialize'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/actionmailer-3.0.3/lib/action_mailer/base.rb:425:in new'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/actionmailer-3.0.3/lib/action_mailer/base.rb:425:inmethod_missing'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/delayed_job-2.1.3/lib/delayed/performable_mailer.rb:6:in perform'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/delayed_job-2.1.3/lib/delayed/backend/base.rb:87:ininvoke_job'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/delayed_job-2.1.3/lib/delayed/worker.rb:120:in block (2 levels) in run'\n/opt/ruby/lib/ruby/1.9.1/timeout.rb:57:intimeout'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/delayed_job-2.1.3/lib/delayed/worker.rb:120:in block in run'\n/opt/ruby/lib/ruby/1.9.1/benchmark.rb:309:inrealtime'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/delayed_job-2.1.3/lib/delayed/worker.rb:119:in run'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/delayed_job-2.1.3/lib/delayed/worker.rb:177:inreserve_and_run_one_job'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/delayed_job-2.1.3/lib/delayed/worker.rb:104:in block in work_off'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/delayed_job-2.1.3/lib/delayed/worker.rb:103:intimes'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/delayed_job-2.1.3/lib/delayed/worker.rb:103:in work_off'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/delayed_job-2.1.3/lib/delayed/worker.rb:78:inblock (2 levels) in start'\n/opt/ruby/lib/ruby/1.9.1/benchmark.rb:309:in realtime'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/delayed_job-2.1.3/lib/delayed/worker.rb:77:inblock in start'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/delayed_job-2.1.3/lib/delayed/worker.rb:74:in loop'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/delayed_job-2.1.3/lib/delayed/worker.rb:74:instart'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/delayed_job-2.1.3/lib/delayed/command.rb:100:in run'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/delayed_job-2.1.3/lib/delayed/command.rb:79:inblock in run_process'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/daemons-1.1.0/lib/daemons/application.rb:250:in call'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/daemons-1.1.0/lib/daemons/application.rb:250:inblock in start_proc'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/daemons-1.1.0/lib/daemons/daemonize.rb:199:in call'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/daemons-1.1.0/lib/daemons/daemonize.rb:199:incall_as_daemon'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/daemons-1.1.0/lib/daemons/application.rb:254:in start_proc'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/daemons-1.1.0/lib/daemons/application.rb:294:instart'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/daemons-1.1.0/lib/daemons/controller.rb:70:in run'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/daemons-1.1.0/lib/daemons.rb:193:inblock in run_proc'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/daemons-1.1.0/lib/daemons/cmdline.rb:112:in call'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/daemons-1.1.0/lib/daemons/cmdline.rb:112:incatch_exceptions'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/daemons-1.1.0/lib/daemons.rb:192:in run_proc'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/delayed_job-2.1.3/lib/delayed/command.rb:78:inrun_process'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/delayed_job-2.1.3/lib/delayed/command.rb:72:in block in daemonize'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/delayed_job-2.1.3/lib/delayed/command.rb:70:intimes'\n/opt/ruby/lib/ruby/gems/1.9.1/gems/delayed_job-2.1.3/lib/delayed/command.rb:70:in daemonize'\nscript/delayed_job:5:in

'

gaffneyc commented 13 years ago

Looks like it's an issue inside your code and not DJ.