Risk of missing data?
I've just installed this and was looking at how it recalculates. I might have this wrong, but it seems that it truncates the main synopsis table, then does a big copy of data into it.
It made me think that if civiMail is busy doing a mailing which takes it over an hour and includes a token to a synopsis field, then there will be a time window during which the values don't exist for the contact civimail is processing.
I think it would safer to use a transaction for the empty-and-re-fill operation. That way the worst that happens is CiviMail gets a slightly out of date version.
The only problem I see with this is that we'd have to move away from TRUNCATE (because it exits a transaction), so we'd have to use
DELETE FROM $synopsisTable instead which may be a bit slower.