)]}'
{"nova/compute/manager.py":[{"author":{"_account_id":5441,"name":"Andrew Laski","email":"andrew@lascii.com","username":"alaski"},"change_message_id":"e30fa863b881507c9589894fdcac34c4b64fcc2e","unresolved":false,"context_lines":[{"line_number":1904,"context_line":"                    security_groups, block_device_mapping, node, limits,"},{"line_number":1905,"context_line":"                    filter_properties)"},{"line_number":1906,"context_line":"            LOG.info(_LI(\u0027Took %i seconds to build instance.\u0027),"},{"line_number":1907,"context_line":"                     int(time.time() - start_time), instance\u003dinstance)"},{"line_number":1908,"context_line":"            return build_results.ACTIVE"},{"line_number":1909,"context_line":"        except exception.RescheduledException as e:"},{"line_number":1910,"context_line":"            retry \u003d filter_properties.get(\u0027retry\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"9a1a9d01_afcc9b6a","line":1907,"updated":"2015-09-29 21:48:45.000000000","message":"This is a bit nitpicky but I would prefer if this wasn\u0027t case to an int and was formatted as \u0027%0.2f\u0027.  Same below.  Subsecond resolution may not matter for this but it seems nicer.","commit_id":"227e33601f8f65de9c1e2d86ca791070c181fe8c"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"6ab8d0e41e32ce1476a8a1295cdbfdccc0ca6b1a","unresolved":false,"context_lines":[{"line_number":1904,"context_line":"                    security_groups, block_device_mapping, node, limits,"},{"line_number":1905,"context_line":"                    filter_properties)"},{"line_number":1906,"context_line":"            LOG.info(_LI(\u0027Took %i seconds to build instance.\u0027),"},{"line_number":1907,"context_line":"                     int(time.time() - start_time), instance\u003dinstance)"},{"line_number":1908,"context_line":"            return build_results.ACTIVE"},{"line_number":1909,"context_line":"        except exception.RescheduledException as e:"},{"line_number":1910,"context_line":"            retry \u003d filter_properties.get(\u0027retry\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"9a1a9d01_969e7061","line":1907,"in_reply_to":"9a1a9d01_afcc9b6a","updated":"2015-09-30 15:04:39.000000000","message":"Done","commit_id":"227e33601f8f65de9c1e2d86ca791070c181fe8c"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"c5bc3006921a963733537a229ade5be458427d3d","unresolved":false,"context_lines":[{"line_number":1904,"context_line":"                    security_groups, block_device_mapping, node, limits,"},{"line_number":1905,"context_line":"                    filter_properties)"},{"line_number":1906,"context_line":"            LOG.info(_LI(\u0027Took %i seconds to build instance.\u0027),"},{"line_number":1907,"context_line":"                     int(time.time() - start_time), instance\u003dinstance)"},{"line_number":1908,"context_line":"            return build_results.ACTIVE"},{"line_number":1909,"context_line":"        except exception.RescheduledException as e:"},{"line_number":1910,"context_line":"            retry \u003d filter_properties.get(\u0027retry\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"9a1a9d01_a23d7bde","line":1907,"in_reply_to":"9a1a9d01_afcc9b6a","updated":"2015-09-30 12:39:52.000000000","message":"Yeah I\u0027d prefer to see a better granularity below the second but that sounds fishy, we can change that later if needed.","commit_id":"227e33601f8f65de9c1e2d86ca791070c181fe8c"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"a65b6130c581d18c1083acbba69282cba0915b18","unresolved":false,"context_lines":[{"line_number":1904,"context_line":"                        decoded_files, admin_password, requested_networks,"},{"line_number":1905,"context_line":"                        security_groups, block_device_mapping, node, limits,"},{"line_number":1906,"context_line":"                        filter_properties)"},{"line_number":1907,"context_line":"            LOG.info(_LI(\u0027Took %0.2f seconds to build instance.\u0027),"},{"line_number":1908,"context_line":"                     timer.elapsed(), instance\u003dinstance)"},{"line_number":1909,"context_line":"            return build_results.ACTIVE"},{"line_number":1910,"context_line":"        except exception.RescheduledException as e:"}],"source_content_type":"text/x-python","patch_set":5,"id":"9a1a9d01_a96392dc","line":1907,"updated":"2015-10-04 14:37:08.000000000","message":"Why is this an info message? I think that these message should be debug ones.","commit_id":"9bb4c07b2996aa9e3153e6d6f28e7aa600c64100"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"2780e06df1d9c88a391582b303661c4821ff5dac","unresolved":false,"context_lines":[{"line_number":1904,"context_line":"                        decoded_files, admin_password, requested_networks,"},{"line_number":1905,"context_line":"                        security_groups, block_device_mapping, node, limits,"},{"line_number":1906,"context_line":"                        filter_properties)"},{"line_number":1907,"context_line":"            LOG.info(_LI(\u0027Took %0.2f seconds to build instance.\u0027),"},{"line_number":1908,"context_line":"                     timer.elapsed(), instance\u003dinstance)"},{"line_number":1909,"context_line":"            return build_results.ACTIVE"},{"line_number":1910,"context_line":"        except exception.RescheduledException as e:"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a2fa921_630cd394","line":1907,"in_reply_to":"9a1a9d01_a96392dc","updated":"2015-10-06 17:07:21.000000000","message":"Because this is a unit of work and according to the logging guidelines that\u0027s INFO:\n\nhttp://specs.openstack.org/openstack/openstack-specs/specs/log-guidelines.html#definition-of-log-levels\n\nThat\u0027s why I changed the above \u0027starting instance\u0027 from INFO to DEBUG because it\u0027s not indicative of a unit of work - it\u0027s just for a developer reading the logs to know what\u0027s going on.","commit_id":"9bb4c07b2996aa9e3153e6d6f28e7aa600c64100"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"a65b6130c581d18c1083acbba69282cba0915b18","unresolved":false,"context_lines":[{"line_number":2008,"context_line":"                    network_info \u003d resources[\u0027network_info\u0027]"},{"line_number":2009,"context_line":"                    LOG.debug(\u0027Start spawning the instance on the hypervisor.\u0027,"},{"line_number":2010,"context_line":"                              instance\u003dinstance)"},{"line_number":2011,"context_line":"                    with timeutils.StopWatch() as timer:"},{"line_number":2012,"context_line":"                        self.driver.spawn(context, instance, image,"},{"line_number":2013,"context_line":"                                          injected_files, admin_password,"},{"line_number":2014,"context_line":"                                          network_info\u003dnetwork_info,"}],"source_content_type":"text/x-python","patch_set":5,"id":"9a1a9d01_e970aaa6","line":2011,"updated":"2015-10-04 14:37:08.000000000","message":"would it not be better for us to add a decorator to all of the virt driver methods?","commit_id":"9bb4c07b2996aa9e3153e6d6f28e7aa600c64100"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"2780e06df1d9c88a391582b303661c4821ff5dac","unresolved":false,"context_lines":[{"line_number":2008,"context_line":"                    network_info \u003d resources[\u0027network_info\u0027]"},{"line_number":2009,"context_line":"                    LOG.debug(\u0027Start spawning the instance on the hypervisor.\u0027,"},{"line_number":2010,"context_line":"                              instance\u003dinstance)"},{"line_number":2011,"context_line":"                    with timeutils.StopWatch() as timer:"},{"line_number":2012,"context_line":"                        self.driver.spawn(context, instance, image,"},{"line_number":2013,"context_line":"                                          injected_files, admin_password,"},{"line_number":2014,"context_line":"                                          network_info\u003dnetwork_info,"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a2fa921_c3092797","line":2011,"in_reply_to":"9a1a9d01_e970aaa6","updated":"2015-10-06 17:07:21.000000000","message":"This change is concerned mostly with the build resource flow to create an instance because that\u0027s what was timing out in the related bug in the large ops job.  I want to be incremental about these kinds of things because it does clutter up the code to instrument this in, so I think it\u0027d be way overboard to do this on all virt driver methods.","commit_id":"9bb4c07b2996aa9e3153e6d6f28e7aa600c64100"}],"nova/utils.py":[{"author":{"_account_id":6450,"name":"Hans Lindgren","email":"hanlind@kth.se","username":"hanlind"},"change_message_id":"ecd96e2f4d8b036f5b138b2023ab0beee97197c3","unresolved":false,"context_lines":[{"line_number":1541,"context_line":"        del _FILE_CACHE[filename]"},{"line_number":1542,"context_line":""},{"line_number":1543,"context_line":""},{"line_number":1544,"context_line":"class Timer(object):"},{"line_number":1545,"context_line":"    \"\"\"Context manager simulating a simple stop watch."},{"line_number":1546,"context_line":""},{"line_number":1547,"context_line":"    This context manager provides a simple way to time how long some operation"}],"source_content_type":"text/x-python","patch_set":4,"id":"9a1a9d01_14856ecd","line":1544,"updated":"2015-09-30 18:55:05.000000000","message":"oslo_utils.timeutils.StopWatch() has the same functionality","commit_id":"65496c93e124b56c990abefbd8ba4b5804fc68ff"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"38c9f8c8168ee99ca4190a180cbb2f18483b8c6a","unresolved":false,"context_lines":[{"line_number":1541,"context_line":"        del _FILE_CACHE[filename]"},{"line_number":1542,"context_line":""},{"line_number":1543,"context_line":""},{"line_number":1544,"context_line":"class Timer(object):"},{"line_number":1545,"context_line":"    \"\"\"Context manager simulating a simple stop watch."},{"line_number":1546,"context_line":""},{"line_number":1547,"context_line":"    This context manager provides a simple way to time how long some operation"}],"source_content_type":"text/x-python","patch_set":4,"id":"9a1a9d01_ad24700c","line":1544,"in_reply_to":"9a1a9d01_14856ecd","updated":"2015-09-30 22:15:24.000000000","message":"Yeah I\u0027m seeing that now:\n\nhttps://review.openstack.org/#/c/229659/2/doc/source/examples/timeutils.rst\n\nI didn\u0027t realize you could use it as a context manager like this, since that\u0027s not how it\u0027s used in Ironic which was the only other place I saw it used.","commit_id":"65496c93e124b56c990abefbd8ba4b5804fc68ff"}]}
