sepinf-inc / IPED

IPED Digital Forensic Tool. It is an open source software that can be used to process and analyze digital evidence, often seized at crime scenes by law enforcement or in a corporate investigation by private examiners.
Other
924 stars 217 forks source link

'#1942 send error 2 client if caused by startServer(), shutdown server process #1944

Closed lfcnassif closed 10 months ago

lfcnassif commented 10 months ago

Fix #1942.

@hauck-jvsh, I'm still going to do tests, but I would appreciate your review, thanks.

hauck-jvsh commented 10 months ago

Sure, I will take a look at this today.

lfcnassif commented 10 months ago

I finished my changes and tests, this looks fine.

lfcnassif commented 10 months ago

Just an observation for others: audios that might theoretically cause crashes in python transcription processes were skipped intentionally, to avoid infinite loops on client side trying to transcribe the audio on different nodes. But as I think this is very unlikely to happen (corrupted audios often fail or trigger a timeout in the wav conversion step), and since we have this current situation of python processes crashing because of kernel or driver updates, I pushed commit 653dca1 to retry audios if python crashes, so clients won't skip audios silently. If some client hits some infinite loop with some corrupted audio, it won't be a silent issue, the client will complain and we can take a closer look at his audio to try to handle it properly.

lfcnassif commented 10 months ago

@hauck-jvsh tested this on a Kubernetes test environment and it worked, so I'm merging. Thank you @hauck-jvsh!