Changeset: 95e8ee42ef91 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB/rev/95e8ee42ef91 Modified Files: testing/Mtest.py.in Branch: Aug2024 Log Message:
Fix a few more timeout issues. diffs (67 lines): diff --git a/testing/Mtest.py.in b/testing/Mtest.py.in --- a/testing/Mtest.py.in +++ b/testing/Mtest.py.in @@ -1544,7 +1544,10 @@ def coredumpctl(pid): stdout=process.PIPE, stderr=process.PIPE, text=True) as p: - out, err = p.communicate() + try: + out, err = p.communicate(timeout=60) + except process.TimeoutExpired: + p.kill() os.unlink(name) s = [] for l in out.split('\n'): @@ -1694,7 +1697,7 @@ def GetBitsAndModsAndThreads(env) : qErr = proc.stderr.read(timeout=5) try: proc.wait(timeout=5) - except TimeoutExpired: + except process.TimeoutExpired: proc.kill() proc.wait() finally: @@ -2478,13 +2481,19 @@ def stacktrace(proc, outfile): with process.Popen([cdb, '-pv', '-p', str(proc.pid), '-y', f'{sym}cache*;srv*http://msdl.microsoft.com/download/symbols', '-lines', '-c', '~*kP;!locks;q'], stdout=process.PIPE, text=True) as p: - out, err = p.communicate() + try: + out, err = p.communicate(timeout=60) + except process.TimeoutExpired: + p.kill() else: out = '' elif platform.system() == 'Darwin': try: with process.Popen(['lldb', '--attach-pid', str(proc.pid), '--batch', '--one-line', 'bt all'], stdout=process.PIPE, text=True) as p: - out, err = p.communicate() + try: + out, err = p.communicate(timeout=60) + except process.TimeoutExpired: + p.kill() except KeyboardInterrupt: raise except: @@ -2495,7 +2504,7 @@ def stacktrace(proc, outfile): text=True) as p: try: out, err = p.communicate(timeout=60) - except TimeoutExpired: + except process.TimeoutExpired: # gdb sometimes hangs when trying to get the stack # trace: kill it mercilessly if it does p.kill() @@ -2574,9 +2583,9 @@ class ServerClass: self.proc.terminate() try: self.proc.wait(timeout=30) - except TimeoutExpired: + except process.TimeoutExpired: self.proc.kill() - self.wait() + self.proc.wait() self.code = returnCode(self.proc, self.errfile) if self.pollfile is None: self.outfile.write(self.proc.stdout.read()) _______________________________________________ checkin-list mailing list -- checkin-list@monetdb.org To unsubscribe send an email to checkin-list-le...@monetdb.org