0
Fork 0
mirror of https://github.com/TryGhost/Ghost.git synced 2025-01-20 22:42:53 -05:00
ghost/test/api-acceptance/admin
Kevin Ansfield 76c1b60a4d
Added schema+migration for email_{batches,recipients} tables (#12192)
no issue

We want to store a list of recipients for each bulk email so that we have a consistent set of data that background processing/sending jobs can work from without worrying about moving large data sets around or member data changing mid-send.

- `email_batches` table acts as a join table with status for email<->email_recipient
  - stores a provider-specific ID that we get back when submitting a batch for sending to the bulk email provider
  - `status` allows for batch-specific status updates and picking up where we left off when submitting batches if needed
  - explicitly tying a list of email recipients to a batch allows for partial retries
- `email_recipients` table acts as a join table for email<->member
  - `member_id` does not have a foreign key constraint because members can be deleted but does have an index so that we can efficiently query which emails a member has received
  - stores static copies of the member info present at the time of sending an email for consistency in background jobs and auditing/historical data
2020-09-14 12:21:58 +01:00
..
actions_spec.js Moved config from server to shared (#11850) 2020-05-27 18:47:53 +01:00
config_spec.js Moved config from server to shared (#11850) 2020-05-27 18:47:53 +01:00
db_spec.js Added schema+migration for email_{batches,recipients} tables (#12192) 2020-09-14 12:21:58 +01:00
email_preview_spec.js 🐛 Removed [http://url/] output in member email preview text 2020-08-12 20:14:06 +01:00
emails_spec.js Moved config from server to shared (#11850) 2020-05-27 18:47:53 +01:00
images_spec.js Moved config from server to shared (#11850) 2020-05-27 18:47:53 +01:00
integrations_spec.js Added Location header to API's POST request responses (#12186) 2020-09-14 22:33:37 +12:00
invites_spec.js Added Location header to API's POST request responses (#12186) 2020-09-14 22:33:37 +12:00
key_authentication_spec.js Moved config from server to shared (#11850) 2020-05-27 18:47:53 +01:00
labels_spec.js Added Location header to API's POST request responses (#12186) 2020-09-14 22:33:37 +12:00
mail_spec.js Moved config from server to shared (#11850) 2020-05-27 18:47:53 +01:00
members_spec.js Added Location header to API's POST request responses (#12186) 2020-09-14 22:33:37 +12:00
notifications_spec.js Added Location header to API's POST request responses (#12186) 2020-09-14 22:33:37 +12:00
oembed_spec.js Fixed oembed test 2020-07-22 19:49:30 +01:00
pages_spec.js Added Location header to API's POST request responses (#12186) 2020-09-14 22:33:37 +12:00
posts_spec.js Added Location header to API's POST request responses (#12186) 2020-09-14 22:33:37 +12:00
roles_spec.js Moved config from server to shared (#11850) 2020-05-27 18:47:53 +01:00
settings_spec.js Added migration to add settings.{group,flags} columns (#11951) 2020-06-24 11:58:15 +01:00
slugs_spec.js Moved config from server to shared (#11850) 2020-05-27 18:47:53 +01:00
tags_spec.js Added Location header to API's POST request responses (#12186) 2020-09-14 22:33:37 +12:00
themes_spec.js Change theme uploads to move & delete at end 2020-06-08 16:12:17 +01:00
users_spec.js Improved tests for "include=posts.count" query parameter 2020-08-31 17:30:21 +12:00
utils.js Added label to known filter params for members 2020-05-21 18:44:52 +01:00
webhooks_spec.js Added Location header to API's POST request responses (#12186) 2020-09-14 22:33:37 +12:00