Sfoglia il codice sorgente

Fix search errors due to stream readers exiting before grep is finished

master
JustAnotherArchivist 3 anni fa
parent
commit
65c4df27d2
1 ha cambiato i file con 2 aggiunte e 0 eliminazioni
  1. +2
    -0
      irclog.py

+ 2
- 0
irclog.py Vedi File

@@ -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')


Caricamento…
Annulla
Salva