title: Upgrading to Rails 3.2.2: How to solve the 'undefined method for Syck::DomainType' error related to the Delayed Job gem?
body: <p>I am running Ruby on Rails 3.2.2 from 3.1.0. I have the issue</p>
  
  <pre><code>undefined method send_register_email\' for #&lt;Syck::DomainType:0x0000012d2346b8&gt;\n/&lt;ABSOLUTE_PATH&gt;/.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/performable_mailer.rb:6:in perform ...
  </code></pre>
  
  <p>with the DelayedJob gem that many other people have tried to solve: someone made successfully that, others no. I am in the latter category, also if I tried all solutions I've found on the Web.</p>
  
  <p>At this time, in my Gemfile I have:</p>
  
  <pre><code>gem 'rails', '3.2.2'
  gem "rake"
  ...
  gem 'delayed_job_active_record'
  ...
  </code></pre>
  
  <p>Before upgrading Rails, in my Gemfile I had:</p>
  
  <pre><code>gem 'rails', '~&gt; 3.1.0'
  gem "rake"
  ...
  # I also used the following statement by running Rails 3.2.2 but it didn't work.
  gem 'delayed_job'
  ...
  </code></pre>
  
  <p>In order to send e-mail messages, in my controllers I use code link the following:</p>
  
  <pre><code>::Users::Mailer.delay.send_register_email(@user)
  </code></pre>
  
  <p>In my <code>APPLICATION_ROOT/app/mailers/users/mailer.rb</code> file I have:</p>
  
  <pre><code>class Users::Mailer &lt; ActionMailer::Base
    ...
  
    def send_register_email(user)
      ...
    end
  end
  </code></pre>
  
  <p>Before updating to Rails 3.2.2 all was working as well. Now I get the error mentioned above, in the introduction text. <strong>How can I try to solve the Delayed Job issue?</strong></p>
  
  <hr>
  
  <p>I noted that in the database table related to the <code>delayed_job_active_record</code> gem should be a column named 'queue' (see the "Gory Details" section in the <a href="https://github.com/collectiveidea/delayed_job" rel="nofollow">official documentation</a> for more information). However, since I was using <code>gem 'delayed_job'</code> it was present in that database table. <em>Can be that the problem?</em></p>
  
  <hr>
  
  <p>Another thing I noted is the following (but I think that isn't the problem, for now):</p>
  
  <pre><code>$ rake jobs:work
  DEPRECATION WARNING: You have Rails 2.3-style plugins in vendor/plugins! Support for these plugins will be removed in Rails 4.0. Move them out and bundle them in your Gemfile, or fold them in to your app as lib/myplugin/* and config/initializers/myplugin.rb. See the release notes for more on this: http://weblog.rubyonrails.org/2012/01/04/rails-3-2-0-rc2-has-been-released. (called from &lt;top (required)&gt; at /&lt;ABSOLUTE_PATH&gt;/Rakefile:7)
  DEPRECATION WARNING: You have Rails 2.3-style plugins in vendor/plugins! Support for these plugins will be removed in Rails 4.0. Move them out and bundle them in your Gemfile, or fold them in to your app as lib/myplugin/* and config/initializers/myplugin.rb. See the release notes for more on this: http://weblog.rubyonrails.org/2012/01/04/rails-3-2-0-rc2-has-been-released. (called from &lt;top (required)&gt; at /&lt;ABSOLUTE_PATH&gt;/Rakefile:7)
  [Worker(host:&lt;MY_USER&gt;.local pid:76826)] Starting job worker
  </code></pre>
  
  <hr>
  
  <hr>
  
  <hr>
  
  <p>The following is what is present in the DelayedJob <code>last_error</code> database table column:</p>
  
  <pre><code>{undefined method `send_register_email' for #&lt;Syck::DomainType:0x0000010228a840&gt;
  /&lt;ABSOLUTE_PATH&gt;/.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/performable_mailer.rb:6:in `perform'
  /&lt;ABSOLUTE_PATH&gt;/.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/backend/base.rb:94:in `block in invoke_job'
  /&lt;ABSOLUTE_PATH&gt;/.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:60:in `call'
  /&lt;ABSOLUTE_PATH&gt;/.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:60:in `block in initialize'
  /&lt;ABSOLUTE_PATH&gt;/.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:65:in `call'
  /&lt;ABSOLUTE_PATH&gt;/.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:65:in `execute'
  /&lt;ABSOLUTE_PATH&gt;/.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:38:in `run_callbacks'
  /&lt;ABSOLUTE_PATH&gt;/.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/backend/base.rb:91:in `invoke_job'
  /&lt;ABSOLUTE_PATH&gt;/.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/worker.rb:162:in `block (2 levels) in run'
  /&lt;ABSOLUTE_PATH&gt;/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/timeout.rb:58:in `timeout'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/worker.rb:162:in `block in run'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/benchmark.rb:310:in `realtime'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/worker.rb:161:in `run'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/worker.rb:218:in `block in reserve_and_run_one_job'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:60:in `call'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:60:in `block in initialize'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:65:in `call'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:65:in `execute'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:38:in `run_callbacks'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/worker.rb:218:in `reserve_and_run_one_job'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/worker.rb:146:in `block in work_off'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/worker.rb:145:in `times'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/worker.rb:145:in `work_off'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/worker.rb:117:in `block (4 levels) in start'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/benchmark.rb:310:in `realtime'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/worker.rb:116:in `block (3 levels) in start'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:60:in `call'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:60:in `block in initialize'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:65:in `call'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:65:in `execute'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:38:in `run_callbacks'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/worker.rb:113:in `block (2 levels) in start'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/worker.rb:112:in `loop'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/worker.rb:112:in `block in start'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/plugins/clear_locks.rb:7:in `call'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/plugins/clear_locks.rb:7:in `block (2 levels) in &lt;class:ClearLocks&gt;'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:78:in `call'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:78:in `block (2 levels) in add'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:60:in `call'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:60:in `block in initialize'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:78:in `call'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:78:in `block in add'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:65:in `call'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:65:in `execute'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/lifecycle.rb:38:in `run_callbacks'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/worker.rb:111:in `start'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290/gems/delayed_job-3.0.1/lib/delayed/tasks.rb:9:in `block (2 levels) in &lt;top (required)&gt;'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2.2/lib/rake/task.rb:205:in `call'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2.2/lib/rake/task.rb:205:in `block in execute'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2.2/lib/rake/task.rb:200:in `each'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2.2/lib/rake/task.rb:200:in `execute'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2.2/lib/rake/task.rb:158:in `block in invoke_with_call_chain'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2.2/lib/rake/task.rb:151:in `invoke_with_call_chain'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2.2/lib/rake/task.rb:144:in `invoke'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2.2/lib/rake/application.rb:116:in `invoke_task'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2.2/lib/rake/application.rb:94:in `block (2 levels) in top_level'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2.2/lib/rake/application.rb:94:in `each'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2.2/lib/rake/application.rb:94:in `block in top_level'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2.2/lib/rake/application.rb:133:in `standard_exception_handling'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2.2/lib/rake/application.rb:88:in `top_level'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2.2/lib/rake/application.rb:66:in `block in run'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2.2/lib/rake/application.rb:133:in `standard_exception_handling'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2.2/lib/rake/application.rb:63:in `run'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2.2/bin/rake:33:in `&lt;top (required)&gt;'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290/bin/rake:19:in `load'
  /&lt;ABSOLUTE_PATH&gt;//.rvm/gems/ruby-1.9.2-p290/bin/rake:19:in `&lt;main&gt;'
  </code></pre>