Clean up old, incomplete jobs

We have a few old jobs which don’t have a `processing_started` date.
This means that they always sort to the top of the jobs list in admin,
no matter how old they are. We think this is due to an old bug where
jobs would not be updated if a deploy was in progress.

This commit backfills the `processing_started` data for these jobs,
which will be roughly accurate. Complete accuracy is not the goal;
having these jobs not sort to the top of the list is.

This will affect 5 jobs across 3 services on production:
```sql
select service_id, job_status, created_at, updated_at, processing_started, processing_finished, notification_count, notifications_sent, notifications_delivered, notifications_failed from jobs where processing_started is null and job_status = 'in progress';
```

```
service_id              | job_status  |         created_at         |         updated_at         | processing_started | processing_finished | notification_count | notifications_sent | notifications_delivered | notifications_failed
--------------------------------------+-------------+----------------------------+----------------------------+--------------------+---------------------+--------------------+--------------------+-------------------------+----------------------
d47e5a1b-a04b-4398-8935-c8a266ce1d44 | in progress | 2017-09-29 13:49:41.512356 | 2017-10-01 02:01:05.281162 |                    |                     |              10615 |                  0 |                       0 |                    0
128b91b6-2996-4107-bb65-51b7c24a728d | in progress | 2017-09-29 09:25:39.802623 | 2017-09-29 16:01:02.154291 |                    |                     |              10240 |                  0 |                       0 |                    0
128b91b6-2996-4107-bb65-51b7c24a728d | in progress | 2017-09-29 09:31:52.455919 | 2017-09-29 16:01:01.990054 |                    |                     |               9930 |                  0 |                       0 |                    0
128b91b6-2996-4107-bb65-51b7c24a728d | in progress | 2017-08-22 08:15:39.125999 | 2017-08-22 16:01:07.758805 |                    |                     |               6967 |                  0 |                       0 |                    0
95316ff0-e555-462d-a6e7-95d26fbfd091 | in progress | 2016-05-27 14:44:18.114564 | 2016-06-13 00:18:14.542795 |                    |                     |               2742 |               2238 |                     525 |                 1713
(5 rows)
```
This commit is contained in:
Chris Hill-Scott
2018-07-09 11:23:42 +01:00
parent 6705f9d209
commit d5469a9772

View File

@@ -0,0 +1,30 @@
"""empty message
Revision ID: 0202_fix_old_incomplete_jobs
Revises: 0201_another_letter_org
Create Date: 2017-06-29 12:44:16.815039
"""
# revision identifiers, used by Alembic.
revision = '0202_fix_old_incomplete_jobs'
down_revision = '0201_another_letter_org'
from alembic import op
def upgrade():
op.execute("""
UPDATE
jobs
SET
processing_started = created_at
WHERE
processing_started IS NULL
AND
job_status = 'in progress'
""")
def downgrade():
pass