|
|
@@ -1040,6 +1040,8 @@ class WebServer: |
|
|
|
stdoutTask = asyncio.create_task(process_stdout()) |
|
|
|
stderrTask = asyncio.create_task(process_stderr()) |
|
|
|
await asyncio.wait({stdoutTask, stderrTask}, timeout = self.config['web']['search']['maxTime']) |
|
|
|
# The stream readers may quit before the process is done even on a successful grep. Wait a tiny bit longer for the process to exit. |
|
|
|
await asyncio.wait({asyncio.create_task(proc.wait())}, timeout = 0.1) |
|
|
|
if proc.returncode is None: |
|
|
|
# Process hasn't finished yet after maxTime. Murder it and wait for it to die. |
|
|
|
self.logger.warning(f'Request {id(request)} grep took more than the time limit') |
|
|
|