roam/daily/2021-11-08.org
2021-12-03 15:52:19 -05:00

65 lines
2.7 KiB
Org Mode

:PROPERTIES:
:ID: 305b4103-a9a8-492a-8431-c203f57d2bd0
:END:
#+title: 2021-11-08
* Planning future backend work
Meeting with Scott and Eric.
#+caption: Last week
| Number clicked column to account backup | 4h |
| CSLead Tickets | EOW |
| Tagbox upgrades | EOW |
| Remove outbound tag sanitization | EOW |
| Analytics search testing | ??? |
| OpenAPI newline pattern validation | Tomorrow |
| Start on Search Service | Next week |
#+caption: This week
| CSLead Tickets | Today |
| Analytics View | This week (Eric) |
| Search | This week (Correl) |
| Verifications | Tech Initiatives sync |
* [[id:1463cf0a-e2b2-490c-b1b3-40249b483ca8][Bulk Job]] ACP discussion
- Could deleting duplicate subscribers across lists belong in the Control Panel?
- Why would we want to pause a job?
- More likely to be an internal issue, pausing processing to relieve system
pressure
- Differences between customer-initiated jobs and internally (PSE/ASE) initiated
jobs
- Any future plans for bulk actions in the CP?
- Deleting duplicate subscribers across lists csreq?
- Nothing prioritized right now.
* Searching any/all tags with quotation marks
https://jira.aweber.io/browse/CCPANEL-10726
The [[id:d9cb2b55-3b0e-4ab3-8369-f71ebc3cd882][search]] code is escaping the characters, but string literals appear to handle
escaping differently between different versions of [[id:af84ed59-96a4-4f9c-b34c-b79178ad20cb][PostgreSQL]]. Versions 9.1 and
above default the =standard_conforming_strings= setting to =on=, which permits
escaping. The [[id:dd113e53-6144-4cb2-a4aa-da3dc2e3e6ea][AppDB]] PostgreSQL version in staging and production are on 9.0.23,
and have the setting turned to =off=.
Because of how search is currently built, in order to support searching on
multiple values, these values are being encoded as [[https://www.postgresql.org/docs/9.1/arrays.html#ARRAYS-IO][string array literals]]. The
additional escaping needed for this format are running afoul of PostgreSQL's
string handling:
With standard conforming strings on
#+begin_example
postgres=# select '{"foo","bar","\"baz"}'::text[];
text
-------------------
{foo,bar,"\"baz"}
(1 row)
#+end_example
With standard conforming strings off
#+begin_example
app-txn=> select '{"foo","bar","\"baz"}'::text[];
WARNING: nonstandard use of escape in a string literal
LINE 1: select '{"foo","bar","\"baz"}'::text[];
^
HINT: Use the escape string syntax for escapes, e.g., E'\r\n'.
ERROR: malformed array literal: "{"foo","bar",""baz"}"
LINE 1: select '{"foo","bar","\"baz"}'::text[];
^
#+end_example