The previous backfill page pulled all the instances for a given model and date range (ouch) and then for each instance, told it to go create translation tasks (double-ouch). That's a ton of work and far exceeds the amount of time alotted for connections. This version reimplements that and pushed the work to celery tasks.
This tweaks the POST view so that it tries to create the object first. That will fail with an IntegrityError because there's a uniqueness constraint on (person_id, survey_id, flow_id). If it fails, then there's already a record like this and it fetches that and updates it. In this way, we use the db to eliminate the race condition between the "get" and "create" steps which is kicking up the IntegrityErrors we're seeing.
Pretty sure we can fix this just by wrapping it with a transaction, but I still can't see what's going on. So for now, I'm going to log errors so I can see what's going on.
This backs out the new WSGIHandler for stage/prod server environments. When I landed this, I stopped getting the HB errors that I implemented this to help track down. That's either a fluke or I messed something up. Backing this out to eliminate the latter possibility.