0: jdbc:hive2://analytics1003.eqiad.wmnet:100> select count(*) count, client, status from (select case when userAgent like 'WikipediaApp/%iOS%' then 'iOS' when userAgent like 'WikipediaApp/%Android%' then 'Android' else 'other' end client, concat_ws(',', errorCodes) status from ApiAction where year = 2018 and month = 4 and day >= 20 and (params['action'] = 'readinglists' or params['meta'] = 'readinglists' or params['list'] = 'readinglistentries'))x group by client, status order by count desc limit 100;
count client status
256063 iOS
113351 Android
109745 iOS readinglists-db-error-not-set-up
19911 Android readinglists-db-error-not-set-up
12895 Android readinglists-db-error-no-such-project
2928 iOS readinglists-db-error-no-such-project
2454 iOS notloggedin
1909 Android notloggedin
777 iOS readinglists-db-error-entry-limit
577 iOS readinglists-db-error-already-set-up
112 Android badtoken
85 Android readinglists-db-error-no-such-list
42 Android readinglists-too-old
41 Android readinglists-db-error-already-set-up
37 iOS badtoken
33 iOS readinglists-db-error-list-entry-deleted
33 other
21 other readinglists-db-error-not-set-up
14 Android readinglists-db-error-list-entry-deleted
13 Android readinglists-db-error-list-limit
8 Android maxbytes
7 other notloggedin
4 Android readinglists-db-error-no-such-list-entry
4 iOS readinglists-db-error-not-own-list
2 Android readinglists-db-error-list-deletedThat means ~30% of all iOS requests and ~15% of all Android requests fail because the backend has not been set up. Given that (AIUI) sync does not start until the user opts in, that seems like a logic error with those apps (or the backend, but that's less likely).
Also, there's plenty of invalid project name errors; would be nice to see where those are coming from.
None of that is too much of a problem, but it makes actual problems harder to find.