[core] stats: avoid crash in psutil (windows only)

https://github.com/giampaolo/psutil/issues/1763
This commit is contained in:
Fabien Castan 2020-10-13 16:04:04 +02:00
parent 7dc44a3441
commit 88099dd28c

View file

@ -202,14 +202,18 @@ class ProcStatistics:
for k, v in data.items(): for k, v in data.items():
self._addKV(k, v) self._addKV(k, v)
files = [f.path for f in proc.open_files()] ## Note: Do not collect stats about open files for now,
if self.lastIterIndexWithFiles != -1: # as there is bug in psutil-5.7.2 on Windows which crashes the application.
if set(files) != set(self.openFiles[self.lastIterIndexWithFiles]): # https://github.com/giampaolo/psutil/issues/1763
self.openFiles[self.iterIndex] = files #
self.lastIterIndexWithFiles = self.iterIndex # files = [f.path for f in proc.open_files()]
elif files: # if self.lastIterIndexWithFiles != -1:
self.openFiles[self.iterIndex] = files # if set(files) != set(self.openFiles[self.lastIterIndexWithFiles]):
self.lastIterIndexWithFiles = self.iterIndex # self.openFiles[self.iterIndex] = files
# self.lastIterIndexWithFiles = self.iterIndex
# elif files:
# self.openFiles[self.iterIndex] = files
# self.lastIterIndexWithFiles = self.iterIndex
self.iterIndex += 1 self.iterIndex += 1
def toDict(self): def toDict(self):