On Monday, March 13, 2023 at 11:32:23 PM UTC-7, Clint Olsen wrote: > We have an application that involves submitting hundreds to thousands of jobs > to a shared computing resource, and we're using asyncio to do so because it > is far less overhead than threading or multiprocessing for the bookkeeping > required to keep track of all these jobs. It makes extensive use of > asyncio.create_subprocess_exec(). This was developed mostly in Python 3.9.7.
Good news! I did end up finding the source of the problem. I kept looking for the use of global data as a potential source of bugs and didn't really find anything there. I did fix some potential signal handler problems. However I had this particular piece of code that I needed to follow my processes. watcher = asyncio.FastChildWatcher() watcher.attach_loop(asyncio.get_event_loop()) asyncio.set_child_watcher(watcher) Since async reuses the same event loop on successive calls, doing this again is bad. I just needed to ensure I only set this once. Thanks, -Clint -- https://mail.python.org/mailman/listinfo/python-list