)]}'
{"monasca_agent/collector/checks_d/libvirt.py":[{"author":{"_account_id":8126,"name":"Bradley Klein","email":"bradley.klein@charter.com","username":"bklei"},"change_message_id":"8c9ab56bbf54b417b915d61fd3b0e0fdc461e477","unresolved":false,"context_lines":[{"line_number":132,"context_line":"                metric_cache \u003d yaml.safe_load(cache_yaml)"},{"line_number":133,"context_line":"        except IOError:"},{"line_number":134,"context_line":"            # The file may not exist yet."},{"line_number":135,"context_line":"            pass"},{"line_number":136,"context_line":""},{"line_number":137,"context_line":"        return metric_cache"},{"line_number":138,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"ba15a1d1_8870f8dd","side":"PARENT","line":135,"updated":"2015-09-22 17:20:34.000000000","message":"Should we set metric_cache \u003d { } here, in case the dict comparison doesn\u0027t catch all errors?  Just thinking of ways to make this as bullet-proof as possilble...","commit_id":"41b4f75be5ab515494b71b014f9b32204905b15c"},{"author":{"_account_id":2419,"name":"Roland Hochmuth","email":"roland.hochmuth@hpe.com","username":"roland-hochmuth-s"},"change_message_id":"9805f98ed4d3599f2d04eaab0d4f0e18b59401ed","unresolved":false,"context_lines":[{"line_number":102,"context_line":"        return id_cache"},{"line_number":103,"context_line":""},{"line_number":104,"context_line":"    def _load_instance_cache(self):"},{"line_number":105,"context_line":"        \"\"\"Load the cache of instance names to Nova data."},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"           If the cache does not yet exist or is damaged, (re-)build it."},{"line_number":108,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":1,"id":"ba15a1d1_169f4904","line":105,"updated":"2015-09-22 04:22:13.000000000","message":"Load the cache map of","commit_id":"338ab8bc0d8681b44a4cb2b0cb846300854b5e6f"},{"author":{"_account_id":2419,"name":"Roland Hochmuth","email":"roland.hochmuth@hpe.com","username":"roland-hochmuth-s"},"change_message_id":"9805f98ed4d3599f2d04eaab0d4f0e18b59401ed","unresolved":false,"context_lines":[{"line_number":132,"context_line":"            with open(self.metric_cache_file, \u0027r\u0027) as cache_yaml:"},{"line_number":133,"context_line":"                metric_cache \u003d yaml.safe_load(cache_yaml)"},{"line_number":134,"context_line":"            # Detect a corrupt cache: if it\u0027s not a dict, start over"},{"line_number":135,"context_line":"            if metric_cache.__class__.__name__ !\u003d \u0027dict\u0027:"},{"line_number":136,"context_line":"                self.log.warning(\"Corrupt metrics cache detected, rebuilding.\")"},{"line_number":137,"context_line":"                metric_cache \u003d {}"},{"line_number":138,"context_line":"        except IOError:"}],"source_content_type":"text/x-python","patch_set":1,"id":"ba15a1d1_96aa7918","line":135,"updated":"2015-09-22 04:22:13.000000000","message":"Could we make this a little more readable by defining a method  corrupt_cache or is_cache_corrupt, rather than a comment and a somewhat obscure statement that type checks for dict.","commit_id":"338ab8bc0d8681b44a4cb2b0cb846300854b5e6f"}]}
