Code review comment for lp:~kbielefe/bzr/551391-log-memory-usage

Revision history for this message
John A Meinel (jameinel) wrote :

I failed to catch this, but PQM did.

try:
except:
finally:

Doesn't work in python 2.4, (I think it is python 2.5).

Also, if something early raises an exception, there is no 'dump_file' for finally use.

So it should be:

fd, name = ...
dump_file = ...
try:
  try:
  except:
    return
finally:
  dump_file.close()

16 +def _dump_memory_usage(err_file):
17 + try:
18 + fd, name = tempfile.mkstemp(prefix="bzr_memdump", suffix=".json")
19 + dump_file = os.fdopen(fd, 'w')
20 + from meliae import scanner
21 + scanner.dump_all_objects(dump_file)
22 + err_file.write("Memory dumped to %s\n" % name)
23 + except ImportError:
24 + err_file.write("Dumping memory requires meliae module.\n")
25 + log_exception_quietly()
26 + except:
27 + err_file.write("Exception while dumping memory.\n")
28 + log_exception_quietly()
29 + finally:
30 + dump_file.close()

review: Needs Fixing

« Back to merge proposal