繁体   English   中英

Rails 4.1.6邮件挂起

[英]Rails 4.1.6 Mailers Hanging

我刚刚使用ruby 2.1.2升级到Rails 4.1.6。 我的邮件收发器都没有工作,它们都在渲染模板之前或之中挂了下来。 如果我降级到4.1.5,则邮件收发器工作正常。 从控制台如果我使用control-c摆脱了困境,这是(重要部分)堆栈:

f = FooMailer.invite(FitnessClass.first, User.first, User.last)
FooMailer#invite: processed outbound mail in 94063.9ms
IRB::Abort: abort then interrupt!
from /Users/derrek/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/mail-2.6.1/lib/mail/field_list.rb:22:in `call'
from /Users/derrek/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/mail-2.6.1/lib/mail/field_list.rb:22:in `+'
from /Users/derrek/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/mail-2.6.1/lib/mail/field_list.rb:22:in `+'
from /Users/derrek/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/mail-2.6.1/lib/mail/field_list.rb:22:in `<<'
from /Users/derrek/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/mail-2.6.1/lib/mail/header.rb:178:in `[]='
from /Users/derrek/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/mail-2.6.1/lib/mail/message.rb:1309:in `[]='
from /Users/derrek/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/actionmailer-4.1.6/lib/action_mailer/base.rb:786:in `block in mail'
from /Users/derrek/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/actionmailer-4.1.6/lib/action_mailer/base.rb:786:in `each'
from /Users/derrek/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/actionmailer-4.1.6/lib/action_mailer/base.rb:786:in `mail'
from /Users/derrek/git/foo/foo/app/mailers/foo_mailer.rb:18:in `invite'

是的-这是Mail gem中的无限循环。 提交已修复此问题 ,在版本2.6.2中可以。 直到那时:

gem 'mail', github: "mikel/mail"

我发现问题出在Mail gem中。 如果我降级到2.5.4,一切都会恢复正常。 我没有确切跟踪发生了什么,但是在2.6.1版中,代码陷入了无限循环。 我想说的是,这项工作比一轮解决方案更重要,但是比卡住要好。

gem 'mail', '2.5.4'

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM