experimentally not spawning new threads for each task; maybe that's the issue with database concurrency