Commit Graph

5882 Commits

Author SHA1 Message Date
Alexey Bezhan
1719f31909 Merge pull request #2284 from alphagov/add-count-pages-flag-to-service-notifications
Don't return pagination links for API Message log requests
2019-01-09 14:36:36 +00:00
Leo Hemsted
d4570281fa Merge pull request #2288 from alphagov/plat-adm-fix
Platform admin fix
2019-01-09 14:04:30 +00:00
Leo Hemsted
3e21f57481 fix platform admin stats row-order bug
now that we're reading from two tables (ft_notification_status and
notifications) for stats, we'll get a couple of rows for each
notification type. If a service doesn't have any rows in one of those
tables, the query will return a row with nulls for the notification
types and counts. Some services will have history but no stats from
today, others will have data from today but no history.

This commit acknowledges that any row might have nulls, not just the
first row.
2019-01-09 11:43:40 +00:00
Leo Hemsted
5d838415d3 fix filter to look at right table
a query for notifications was filtering on FtNotificationStatus - we
aren't joining to that table in the query, so sqlalchemy added a cross
join between ft_notification_status (3.7k rows) and Notifications (3.9m
rows), resulting in a 1.3 trillion row materialised table. This query
took 17 hours and pending.

Also, remove orders from querys other than the outer one, since we're
grouping anyway.
2019-01-09 11:26:08 +00:00
Rebecca Law
9c75e08e2c Merge pull request #2282 from alphagov/optimise-platform-admin-live-services
Optimise platform admin live services
2019-01-08 15:27:46 +00:00
Alexey Bezhan
47c403f6ab Don't return pagination links for API Message log requests
Flask-SQLAlchemy paginate function issues a separate query to get
the total count of rows for a given filter. This query (with
filters used by the API integration Message log page) is slow for
services with large number of notifications.

Since Message log page doesn't actually allow users to paginate
through the response (it only shows the last 50 messages) we can
use limit instead of paginate, which requires passing in another
flag from admin to the dao method.

`count` flag has been added to `paginate` in March 2018, however
there was no release of flask-sqlalchemy since then, so we need
to pull the dev version of the package from Github.
2019-01-08 13:22:27 +00:00
Rebecca Law
8fbe60bb90 Remove unused query 2019-01-07 15:37:26 +00:00
Rebecca Law
4522547753 Merge branch 'master' into optimise-platform-admin-live-services 2019-01-07 15:25:50 +00:00
Leo Hemsted
fe498f9a79 Merge pull request #2280 from alphagov/redis-pin
pin redis to 2.x
2019-01-07 11:30:34 +00:00
Leo Hemsted
40a17a0e93 pin redis to 2.x
while we sort out v3 compatibility
2019-01-07 11:14:25 +00:00
Rebecca Law
bd9a6352fd Optimise the query for getting the platform statistics for all services. The page should render for all time after this change.
This is one step closer to eliminating the need to read from NotificationHistory.
2019-01-04 16:45:39 +00:00
Leo Hemsted
63e16ea0ba Merge pull request #2276 from alphagov/utils-bump
bump utils
2019-01-04 16:37:09 +00:00
Leo Hemsted
2e53ba1e3e bump utils
brings in https://github.com/alphagov/notifications-utils/pull/563
2019-01-04 16:17:52 +00:00
Chris Hill-Scott
90a6ec5a15 Merge pull request #2275 from alphagov/trailing-new-line-before-markdown
Bump utils to 30.7.2
2019-01-04 11:28:17 +00:00
Leo Hemsted
ea3070d645 Merge pull request #2272 from alphagov/delivery-receipt-logging
log more info when we receive multiple delivery callbacks
2019-01-04 09:52:54 +00:00
Leo Hemsted
021625abb3 make sure log line works if notification still in created 2019-01-03 17:08:17 +00:00
Leo Hemsted
2355ee011f log more info when we receive multiple delivery callbacks for one notification
Previously, we logged a warning containing the notification reference
and new status. However it wasn't a great message - this new one
includes the notification id, the old status, the time difference and
more.

This separates out logs for callbacks for notifications we don't know
(error level) and duplicates (info level).
2019-01-03 17:08:16 +00:00
Pea (Malgorzata Tyczynska)
d5130d8579 Merge pull request #2273 from alphagov/cautious_prepping_for_pytest4
Preparation for pytest 4 by sorting our use of fixtures in conftest
2019-01-03 11:12:52 +00:00
Pea Tyczynska
eea324a19d Add flag on create_service to decide whether we should also check if service exists 2019-01-03 10:57:29 +00:00
Pea Tyczynska
f79c0b03e7 Sample job uses create_template instead of sample template 2019-01-03 10:52:14 +00:00
Pea Tyczynska
cde30de100 Use create_template instead of sample_template in sample_notification 2019-01-03 10:52:14 +00:00
Pea Tyczynska
154257027f Nothing in conftest uses sample_service now :) 2019-01-03 10:52:14 +00:00
Pea Tyczynska
d367daaf6e Some more conftest fixtures use create_service instead of sample_service 2019-01-03 10:52:14 +00:00
Pea Tyczynska
a3310c2da6 sample_job uses create_service instead of sample_service 2019-01-03 10:52:14 +00:00
Pea Tyczynska
0bcf13d85c sample_api_key uses create_service instead of sample_service 2019-01-03 10:52:14 +00:00
Pea Tyczynska
e8ce669b72 Use create_service instead of sample_service when creating sample_email_template for tests 2019-01-03 10:52:14 +00:00
Pea Tyczynska
95115e7ae6 Use create_service instead of sample_service when creating service permission for tests 2019-01-03 10:52:14 +00:00
Pea Tyczynska
3306b9fc97 use conditional in create_service to establish user 2019-01-03 10:52:14 +00:00
Pea Tyczynska
923703120b Check if test service exists before it gets created 2019-01-03 10:52:14 +00:00
Pea Tyczynska
c12594949f Refactor service_factory 2019-01-03 10:49:38 +00:00
Leo Hemsted
016421a6b2 Merge pull request #2274 from alphagov/multi-worker-exit-script
fix multi worker exit script
2019-01-02 15:50:23 +00:00
Chris Hill-Scott
98e501c4c4 Bump utils to 30.7.2 2019-01-02 15:45:06 +00:00
Leo Hemsted
80454579ee fix multi worker exit script
previously the script would:

try and SIGTERM each celery process every second for the 9 second
timeout, and then SIGKILL every second after, with no upper bound.

This commit changes this to:
* SIGTERM each process once.
* Wait nine seconds (checking if the pid files are still present each
  second)
* SIGKILL any remaining processes once.
* exit
2019-01-02 15:15:46 +00:00
Pea (Malgorzata Tyczynska)
60a384e687 Merge pull request #2269 from alphagov/choose_postage_on_template
Choose postage on template
2019-01-02 14:16:38 +00:00
Rebecca Law
39963d9784 Created a query to get the notification status counts per notification type and service for all service for a given date range.
The query follows the same pattern as the other queries, getting the statistics from the fact_notification_status table for dates older than today and union that with today.
Tests required.
2018-12-31 16:08:08 +00:00
Rebecca Law
6c9fbcb4a0 Merge pull request #2271 from alphagov/fix-delete-query-for-bst
Added the limit to the query for the services with data retention.
2018-12-27 15:16:03 +00:00
Rebecca Law
941e14f71a Added the limit to the query for the services with data retention.
Also did a bit of refactoring.
2018-12-27 14:00:53 +00:00
Pea Tyczynska
fb1ca9b20d Test postage setting on happy path for create and update template 2018-12-24 12:24:17 +00:00
Pea Tyczynska
686c58acee Test post letter request sets notification postage correctly 2018-12-24 11:27:29 +00:00
Pea Tyczynska
4929a6ac08 Include postage in checking if template changed 2018-12-21 16:37:52 +00:00
Pea Tyczynska
1b30e86707 Update v2 template schema to include postage 2018-12-21 16:37:52 +00:00
Pea Tyczynska
e6524af89c Choose postage when persisting a notification 2018-12-21 16:37:52 +00:00
Pea Tyczynska
19f7678b05 Don't allow to set postage per template if no service permission 2018-12-21 16:37:52 +00:00
Rebecca Law
39d6222e5a Merge pull request #2268 from alphagov/fix-delete-query-for-bst
Commit the deletes every 10,000 rows.
2018-12-21 14:16:45 +00:00
Rebecca Law
8e832a1178 Adding a log message 2018-12-21 14:09:29 +00:00
Rebecca Law
62a8076161 Commit the deletes every 10,000 rows. 2018-12-21 13:57:35 +00:00
Katie Smith
3ec50c4fac Merge pull request #2267 from alphagov/update-delete-notifications-query
Update delete notifications query
2018-12-21 10:02:58 +00:00
Katie Smith
af27caa99a Merge pull request #2266 from alphagov/log-message-fix
Fix log messages when emails and letters don't get deleted
2018-12-21 10:02:49 +00:00
Rebecca Law
67cffc22b6 Oops it missed the limit 2018-12-20 17:03:46 +00:00
Rebecca Law
d8a0a3f5ab Added a test to make sure the loop exits. 2018-12-20 17:02:49 +00:00