Email to subscribers stopped working after last update

(Yonatan Golan) #1

We are a medium size community and are using Discourse very happily.
2 days ago (16-Nov-2015) I updated to the latest version and I think that since then email notifications to subscribers of categories stopped working for everyone.
Digest emails still work properly and test emails do too.
What can be done? Where should I look? Which information can I add to help understand the issue?

(Jeff Atwood) #2

Can you repro this @techapj? This is the third time I have seen someone mention it so something might be up with watching categories.



I also have the same issue with the email notifications not being sent to subscribers or original posters when they get a reply, along with the translations issue from last beta build (v1.5.0.beta5 +17).

I get an error 500 while trying to preview the email (it works when the language is set to english, but error 500 in french):

In logs the only issue there is is that:

If that can help this is what I can see in sidekiq:

Maybe everything is related to translations ?

(Sam Saffron) #4

Possibly, @eviltrout has been working on some changes here, @Yonatan_Golan is there anything in sitename/logs or in sitename/sidekiq ?


Here is also a more precise list of errors:

(Jeff Atwood) #6

Makes sense, @gerhard this is kind of a traumatic change for our users (at least in non-English locales) so I hope it was worth it…

(Sam Saffron) #7

Something feels buggy somewhere to me… @riking added the fallback logic a while back. Somehow it regressed.

(Yonatan Golan) #8

We are using the site in Hebrew.

In site/logs I get an error about 2-3 times a minute:
"Job exception: translation missing: he.time.formats.short_no_year"
In the details of the error (attached), the user notifications are mentioned.Job exception error.txt (7.6 KB)
I can’t see earlier errors or when it started since all the last 1000 errors are these.

In site/sidekiq there seem to be many fails since Nov 16 (About 50% out of the processed). I don’t know exactly what to look for in there. Do you want the link to look at it yourselves or direct me what to look for?

Also, yesterday I again updated to the latest version (there were just a few commits), and since then I get on the dashboard an error about translations - “translation missing: he.dashboard.failing_emails_warning”.
Could problems with translation cause email failures? Or does it just mean that I don’t receive the warning about the failed emails?
(I should note that we don’t update the translations on transifex regularly enough).

Let me know what other information would be helpful.
Thanks a lot for your support!

(Yonatan Golan) #9

Ok, I read @heptoilabas 's posts again so I understood what to get from sidekiq:

(Gerhard Schlager) #10

I’m quite sure this used to work. Actually, I fixed the exact same issue a few months back.

Anyway, I’ll look into it tonight unless someone else beats me to it.

(Sam Saffron) #11

This could be related to @eviltrout local override work… if it gets tricky you can skip it … its a work in progress.

(Yonatan Golan) #12

What do you suggest I do in the meanwhile? Can I downgrade without loosing data from the past week?

(Robin Ward) #13

I’m working on it now. I should have a fix ready soon!

(Robin Ward) #14

I figured it out. It’s complicated to explain how I made this mistake, but monkey patching something in Rails and declaring a class look exactly the same. I thought some code @riking wrote was a class definition when it was actually a patch. So I missed some fallback logic. Confusingly it worked in most cases despite missing much of the logic!

It’s fixed in this commit, should be in tests-passed shortly:

edit: Since it was important I also back-ported the fix to beta. If you update via admin you should get it there too.

(Yonatan Golan) #15

You guys are absolutely awesome! :slight_smile:
Thanks a lot for your great support and of course for Discourse itself

(Kane York) #16

That’s because all the missing logic was covering failure cases :joy: