54 lines
1.7 KiB
Org Mode
54 lines
1.7 KiB
Org Mode
|
:PROPERTIES:
|
||
|
:ID: 5cead401-0557-42a9-a5d2-d32f3e2bdfad
|
||
|
:END:
|
||
|
#+title: 2022-05-31
|
||
|
* [[id:d06d3ab4-c2d0-47c3-aae1-4395567fc3d2][Normalizing tags]] in production
|
||
|
:PROPERTIES:
|
||
|
:header-args:sql: :engine postgresql :cmdline "-U postgres postgres" :dir /docker:postgres: :exports both :cache yes :eval no-export
|
||
|
:END:
|
||
|
|
||
|
#+CAPTION: Find the next set of least affected accounts
|
||
|
#+begin_src sql
|
||
|
SELECT COUNT(*)
|
||
|
FROM accounts
|
||
|
WHERE NOT normalized
|
||
|
#+end_src
|
||
|
|
||
|
#+RESULTS[ba37582203de3bc2f2032b77542766039971dbcd]:
|
||
|
| count |
|
||
|
|-------|
|
||
|
| 315 |
|
||
|
|
||
|
#+CAPTION: Find the next set of least affected accounts
|
||
|
#+NAME: 10-top-accounts
|
||
|
#+begin_src sql :results silent
|
||
|
SELECT account_id
|
||
|
FROM accounts
|
||
|
WHERE NOT normalized ORDER BY total
|
||
|
#+end_src
|
||
|
|
||
|
#+begin_src emacs-lisp :var accounts=10-top-accounts :results file :eval no-export
|
||
|
(let ((filename "~/git/normalize_account_tags/production/10-top-accounts"))
|
||
|
(with-temp-file filename
|
||
|
(insert (s-join "\n" (-map #'car accounts))))
|
||
|
filename)
|
||
|
#+end_src
|
||
|
|
||
|
#+RESULTS:
|
||
|
[[file:~/git/normalize_account_tags/production/10-top-accounts]]
|
||
|
* Updating subscriber-sync creation logic
|
||
|
[[id:1ff6586e-2dba-41a2-a887-753cc5ac27c9][Recipient Service]] will be configured to read data from AppDB rather than
|
||
|
DynamoDB. Subscriber sync will not know the subscriber's recipient record may
|
||
|
not already exist, and has no way of looking up the recipient record to check.
|
||
|
|
||
|
** On Creation
|
||
|
- Create recipient record if none exists for the subscriber's normalized email address
|
||
|
- Associate the subscriber with the recipient record
|
||
|
|
||
|
** On Update
|
||
|
- If the normalized email address has changed, look up the old and new recipient
|
||
|
records and update their subscriber associations
|
||
|
|
||
|
** On Delete
|
||
|
- Look up the recipient record and update the subscriber association
|