自上次更新(3.4.0.beta4-dev)以来,电子邮件严重问题

自几天前上次更新 discourse 以来,回复邮件似乎不再起作用,收不到邮件,因此也无法更新主题,并且已观看分类的邮件发送功能也出现故障,65 封邮件只发送了 5 封。

有其他人最近遇到邮件问题吗?

2 个赞

是的,不幸的是,我在 3.4.0.beta4-dev 版本上也遇到了同样的问题。我尝试了重新评估 app.yml 文件、检查邮件 DNS 设置等所有方法。具有讽刺意味的是,我能够通过 Discourse docker 容器中的 wasm 使用 smtp 从终端发送邮件。我认为这可能源于某个配置错误。这对所有无法收到帖子、新闻通讯、密码重置电子邮件的注册用户来说是一个大问题。自新更新以来,550 ERR 消息一直存在。现在我祈祷回滚到 v3.4.0.beta2 能解决这个 bug。

1 个赞

很高兴不是只有我遇到这个问题,希望有开发者能尽快修复此问题。我不知道如何回滚。

已安装
3.4.0.beta4-dev
58f75ed205

同时还进行了 PostgreSQL 数据库从 13 到 15 的更新。

不知道 postgres 更新是否弄乱了 GUI 的设置配置,因为我注意到添加 POP3 服务器信息进行轮询并未对 app.yml discourse 配置文件进行任何更改……非常奇怪。回滚有点棘手,因为它需要你进入 git 标签并从版本重新构建整个应用程序。使用 chatGPT 可以帮助解决此问题。

回滚版本后是否解决了?

我希望开发团队能尽快处理此事并创建一个前向修复。

我在 Docker 中尝试了 git checkout v3.4.0.beta2,但多次回滚失败,即使指定了 app.yml 文件。所以我会看看 Discourse 是否有联系人可以尽快修复这个 550 错误 bug for beta5。

您在哪里看到此错误?我的电子邮件遇到了大问题,但不确定在哪里可以看到 550 err,谢谢。

我在 GUI 的电子邮件日志中没有看到任何错误,只是收不到回复,并且已发送的电子邮件只发送给了几个人,而本应发送给大约 65 个人。

我在 /logs 中看到这个:

image

请不要@提及团队成员。

如果您是Discourse的付费客户,可以通过联系team@discourse.org获得优先支持,否则将尽力而为。

报告问题时,请说明您正在使用的邮件提供商,也许是Discourse常用的邮件提供商出现了回归。我不知道。

3 个赞

非常抱歉,我没有意识到这一点,我不会再这样做了。感谢您指出有关提及的问题。

我使用 Brevo,但根据我看到的情况,有些邮件确实发出去了,我认为这与 Brevo 无关。

回复是通过 Gmail 发送的,但那一直都有效。

也许另一位回复者可以告诉我们他使用的是什么。他有同样的问题。

它在服务器日志和报告下。可以发送测试电子邮件,并在“跳过”选项卡中返回 550 邮件错误。还没有收到任何开发人员的消息。我认为 PostgreSQL 15 更新后,设置可能不会传输到数据库以执行,如果 app.yml 需要通信的话。

我能够成功发送测试电子邮件,没有错误。该测试电子邮件通过 Brevo 发送。

对我来说,问题在于“已关注”类别电子邮件仅发送给少数用户。丢失的电子邮件未显示为已跳过。大部分用户根本没有收到电子邮件。

第二个问题是回复电子邮件从未进入系统。

这些问题仅在最近升级后才开始出现。

我使用的是 Ubuntu 22.04,它最近也进行了容器升级,但在更新 discourse 之前我没有注意到邮件问题,当然 discourse 更新也升级了 Postgres。

你运行的是什么操作系统,Phil?

生产日志中经常出现此问题:

Email can not be processed: Email::Receiver::EmptyEmailError

tail -1000 production.log-20250202 | grep ‘Email::Receiver::EmptyEmailError’ | wc -l
291

我看到了这个主题,但不明白解决方案,有人能给我解释一下吗?比如收件箱在哪里?如果我为我的账户点击两次“消息”,可以看到我的收件箱,并且可以删除那些消息,但数量不多。那么,我的意思是,我如何查看所有收到的回复邮件,哪个收件箱等等。

点击错误时,您是否看到更多详细信息?这很可能是一封格式奇怪/错误的电子邮件,我们一直在重新安排处理它的作业。

1 个赞

我刚刚发布了一个应该创建 65 封电子邮件的主题,但已发送的只有 5 封,没有跳过等。没有错误也没有警告。

昨天 /logs 中有一个错误和一个警告,不知道它们是否与我的电子邮件问题有关:

Message (552 copies reported)

Job exception: Net::ReadTimeout

Backtrace

/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/net-protocol-0.2.2/lib/net/protocol.rb:229:in `rbuf_fill'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/net-protocol-0.2.2/lib/net/protocol.rb:199:in `readuntil'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/net-protocol-0.2.2/lib/net/protocol.rb:377:in `each_message_chunk'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/net-pop-0.1.2/lib/net/pop.rb:958:in `block in retr'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/net-pop-0.1.2/lib/net/pop.rb:1016:in `critical'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/net-pop-0.1.2/lib/net/pop.rb:956:in `retr'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/net-pop-0.1.2/lib/net/pop.rb:810:in `pop'
/var/www/discourse/app/jobs/scheduled/poll_mailbox.rb:47:in `block (2 levels) in poll_pop3'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/net-pop-0.1.2/lib/net/pop.rb:669:in `each'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/net-pop-0.1.2/lib/net/pop.rb:669:in `each_mail'
/var/www/discourse/app/jobs/scheduled/poll_mailbox.rb:46:in `block in poll_pop3'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/net-pop-0.1.2/lib/net/pop.rb:531:in `start'
/var/www/discourse/app/jobs/scheduled/poll_mailbox.rb:45:in `poll_pop3'
/var/www/discourse/app/jobs/scheduled/poll_mailbox.rb:14:in `execute'
/var/www/discourse/app/jobs/base.rb:316:in `block (2 levels) in perform'
/var/www/discourse/vendor/bundle/ruby/6.1.0/gems/rails_multisite-6.1.0/lib/rails_multisite/connection_management/null_instance.rb:49:in `with_connection'
/var/www/discourse/vendor/bundle/ruby/6.1.0/gems/rails_multisite-6.1.0/lib/rails_multisite/connection_management.rb:21:in `with_connection'
/var/www/discourse/app/jobs/base.rb:303:in `block in perform'
/var/www/discourse/app/jobs/base.rb:299:in `each'
/var/www/discourse/app/jobs/base.rb:299:in `perform'
/var/www/discourse/app/jobs/base.rb:379:in `perform'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/mini_scheduler-0.18.0/lib/mini_scheduler/manager.rb:137:in `process_queue'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/mini_scheduler-0.18.0/lib/mini_scheduler/manager.rb:77:in `worker_loop'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/mini_scheduler-0.18.0/lib/mini_scheduler/manager.rb:63:in `block (2 levels) in ensure_worker_threads'


Message (694 copies reported)

Email can not be processed: Email::Receiver::EmptyEmailError


Backtrace

/var/www/discourse/vendor/bundle/ruby/7.2.2.1/gems/activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:130:in `block in warn'
/var/www/discourse/vendor/bundle/ruby/7.2.2.1/gems/activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:231:in `block in dispatch'
/var/www/discourse/vendor/bundle/ruby/7.2.2.1/gems/activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:231:in `each'
/var/www/discourse/vendor/bundle/ruby/7.2.2.1/gems/activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:231:in `dispatch'
/var/www/discourse/vendor/bundle/ruby/7.2.2.1/gems/activesupport-7.2.2.1/lib/active_support/broadcast_logger.rb:130:in `warn'
/var/www/discourse/lib/email/processor.rb:183:in `log_email_process_failure'
/var/www/discourse/lib/email/processor.rb:29:in `rescue in process!'
/var/www/discourse/lib/email/processor.rb:16:in `process!'
/var/www/discourse/lib/email/processor.rb:13:in `process!'
/var/www/discourse/app/jobs/scheduled/poll_mailbox.rb:29:in `process_popmail'
/var/www/discourse/app/jobs/scheduled/poll_mailbox.rb:49:in `block (2 levels) in poll_pop3'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/net-pop-0.1.2/lib/net/pop.rb:669:in `each'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/net-pop-0.1.2/lib/net/pop.rb:669:in `each_mail'
/var/www/discourse/app/jobs/scheduled/poll_mailbox.rb:46:in `block in poll_pop3'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/net-pop-0.1.2/lib/net/pop.rb:531:in `start'
/var/www/discourse/app/jobs/scheduled/poll_mailbox.rb:45:in `poll_pop3'
/var/www/discourse/app/jobs/scheduled/poll_mailbox.rb:14:in `execute'
/var/www/discourse/app/jobs/base.rb:316:in `block (2 levels) in perform'
/var/www/discourse/vendor/bundle/ruby/6.1.0/gems/rails_multisite-6.1.0/lib/rails_multisite/connection_management/null_instance.rb:49:in `with_connection'
/var/www/discourse/vendor/bundle/ruby/6.1.0/gems/rails_multisite-6.1.0/lib/rails_multisite/connection_management.rb:21:in `with_connection'
/var/www/discourse/app/jobs/base.rb:303:in `block in perform'
/var/www/discourse/app/jobs/base.rb:299:in `each'
/var/www/discourse/app/jobs/base.rb:299:in `perform'
/var/www/discourse/app/jobs/base.rb:379:in `perform'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/mini_scheduler-0.18.0/lib/mini_scheduler/manager.rb:137:in `process_queue'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/mini_scheduler-0.18.0/lib/mini_scheduler/manager.rb:77:in `worker_loop'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/mini_scheduler-0.18.0/lib/mini_scheduler/manager.rb:63:in `block (2 levels) in ensure_worker_threads'

您怎么知道应该创建 65 封电子邮件?

1 个赞

我知道谁设置了“已关注”类别,这是一个“已关注”类别,并且没有用户静音通知。它绝对应该发送 65 封电子邮件,就像更新前一直那样。

我将在今天晚些时候更新到新版本,看看是否有任何区别,从 3.4.0.beta4-dev 到新版本。

我还会重启虚拟机,我假设这将正常重启数据库,顺便说一句,我在更新到 3.4.0.beta4-dev 时按照文档正确安装了它。

除了我已经提到的内容,比如 Ubuntu22.04 操作系统更新到 containerd,我不认为这会是一个问题,但我上周晚些时候做的唯一其他更改是安装了 CakeDay 插件。

1 个赞