Skip to content

Email Metrics Reminders not being sent #6799

@bmurphy-dev

Description

@bmurphy-dev

Description

In the new communication wizard you can set a number of days you'd like a follow-up reminder to review the Email Analytics on a communication. This process works as expected and you can see the results of that in SQL on the EmailMetricsReminderOffsetDays and DueAt columns by running this query:

SELECT TOP 100
      c.Id,
      c.Name,
      c.SendDateTime,
      c.EmailMetricsReminderOffsetDays,
      c.EmailMetricsReminderSentDateTime,
      DATEADD(DAY, c.EmailMetricsReminderOffsetDays, c.SendDateTime) AS DueAt,
      GETDATE() AS CurrentTime,
      p.Email AS SenderEmail
  FROM Communication c
  LEFT JOIN PersonAlias sp ON c.SenderPersonAliasId = sp.Id
  LEFT JOIN Person p ON sp.PersonId = p.Id
 WHERE c.EmailMetricsReminderOffsetDays IS NOT NULL
 ORDER BY c.Id DESC;

But notably the EmailMetricsReminderSentDateTime is blank.

This appears to be due to the Send Communications job missing a route during one of the migrations in v18 to move pointers from the legacy New Communication page to the New "Next-gen" New Communication page.
Note: No exceptions are thrown for this error, only logged on the job itself.
https://github.com/SparkDevNetwork/Rock/blob/develop/Rock/Jobs/SendCommunications.cs#L303-L311

The page the job is looking for based on the referenced guid no longer has a proper route, see:

SELECT p.Id, p.InternalName, p.Guid,
       pr.Id AS RouteId, pr.Route, pr.IsGlobal
  FROM Page p
  LEFT JOIN PageRoute pr ON pr.PageId = p.Id
 WHERE p.Guid = '2A22D08D-73A8-4AAF-AC7E-220E8B2E7857';

It looks like the issue happened during a v18 migration rollup here: https://github.com/SparkDevNetwork/Rock/blob/develop/Rock.Migrations/Migrations/Version%2018.0/Version%2018.0/202508261730486_Rollup_20250826.cs#L764-L824

The job appears to still be referencing this 11 yr old system guid which now has a missing route: https://github.com/SparkDevNetwork/Rock/blob/develop/Rock/SystemGuid/Page.cs#L1412
Instead of this new 8mo old system guid for the new communication obsidian page and route:
https://github.com/SparkDevNetwork/Rock/blob/develop/Rock/SystemGuid/Page.cs#L1417

Image

The behavior has been noted in the community chat but cannot be replicated on the demo servers as no email transports are wired up for testing.
Notably: This seems to have not been addressed in both v19 or current Develop (v20) branches.

Actual Behavior

The Email Analytics reminder emails are not sent.

Expected Behavior

The Email Analytics reminder emails should be sent and the link should route to the correct page, not legacy.

Steps to Reproduce

  1. Create a New Communication with the "Next-Gen" Obsidian wizard (not Legacy).
  2. At the end of the wizard process, pick a number of days to send reminder email for analytics:
Image Image 3. Note the logged errors in the Send Communication jobs about the email analytics reminders Image

Issue Confirmation

  • Perform a search on the Github Issues to see if your bug is already reported.
  • Reproduced the problem on a fresh install or on the demo site.

Rock Version

v18+

Client Culture Setting

en-US

Metadata

Metadata

Labels

Fixed in v18.3Fixed in v19.0Status: ConfirmedIt's clear what the subject of the issue is about, and what the resolution should be.Type: BugConfirmed bugs or reports that are very likely to be bugs.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions