Hi Huiming,
Almost all emails are sent asynchronously via the job queue, so it
is important the background tasks are running for the emails to be
sent. They have a dedicated queue and worker, so will be sent
quickly once queued as long as the tasks are running. It seems that
maybe the background tasks stopped working in your case. You can
keep an eye on the queued and failed jobs on the admin pages, under
"Status and Statistics", and select Job Queue. There is also an
endpoint you can monitor to check they are running
/statistics/application_status ( e.g.
https://testing.sysmo-db.org/statistics/application_status ) the
number of delayed_jobs relates to the number of running workers, and
varies depending upon what features are enabled.
When testing the email on the configuration page there is an option
to just send immediately, just to check the settings, which doesn't
get queued. There is also an option to test it via the queue, but
I've just been testing this and doesn't seem to behave correctly and
results in failed job which we need to look into.
There is also the problem that whenever an email is sent, there is
nothing to guarantee how quickly it will be delivered as it gets
passed along with way and ends up in mail spools. 2 emails sent at
the same time may not arrive at the same speed. We recently had a
problem where emails seemed to be arriving slowly, but looking at
the mail headers I could see that they were being delayed along the
way.
regards,
Stuart