Closed 0xl3x1 closed 6 years ago
Actually, upon looking into the code further I'm unsure why this happens. It might not be due to exception handling after all. Hmm.
OK, I think this is happening when the analyse_contract sub-process times out and .terminate()
is called. The Python docs say:
Note that descendant processes of the process will not be terminated – they will simply become orphaned.
So, I think the Souffle descendant processes become orphaned.
Exception handling in the bulk_analyser doesn't clean up or wait for Souffle subprocesses.