)]}'
{"nova/compute/manager.py":[{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"fe7180d6e97820ba2d991ce121d8cbb366a847ac","unresolved":false,"context_lines":[{"line_number":497,"context_line":"                with self.resource_tracker.resource_claim(context, instance,"},{"line_number":498,"context_line":"                        limits):"},{"line_number":499,"context_line":""},{"line_number":500,"context_line":"                    # NOTE(ethuleau): The ressource tracker validated the "},{"line_number":501,"context_line":"                    # compute resources and update the instance \u0027host\u0027 field in"},{"line_number":502,"context_line":"                    # db. Update the local instance variable."},{"line_number":503,"context_line":"                    instance[\u0027host\u0027] \u003d self.host"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAALn%2F%2F3eI%3D","line":500,"updated":"2012-10-31 16:55:45.000000000","message":"trailing whitespace!\n\nmisspelled \u0027resource\u0027","commit_id":"0a83c2a4bd75081eaa775f86c10bb7f69c06b504"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"fe7180d6e97820ba2d991ce121d8cbb366a847ac","unresolved":false,"context_lines":[{"line_number":498,"context_line":"                        limits):"},{"line_number":499,"context_line":""},{"line_number":500,"context_line":"                    # NOTE(ethuleau): The ressource tracker validated the "},{"line_number":501,"context_line":"                    # compute resources and update the instance \u0027host\u0027 field in"},{"line_number":502,"context_line":"                    # db. Update the local instance variable."},{"line_number":503,"context_line":"                    instance[\u0027host\u0027] \u003d self.host"},{"line_number":504,"context_line":"                    network_info \u003d self._allocate_network(context, instance,"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAALn%2F%2F3eA%3D","line":501,"updated":"2012-10-31 16:55:45.000000000","message":"update -\u003e updated","commit_id":"0a83c2a4bd75081eaa775f86c10bb7f69c06b504"},{"author":{"_account_id":1030,"name":"Chris Behrens","email":"cbehrens@codestud.com","username":"cbehrens"},"change_message_id":"5df11d1ef6df687e1beffe545ae74c95a5e7e2ee","unresolved":false,"context_lines":[{"line_number":1676,"context_line":"            try:"},{"line_number":1677,"context_line":"                if not instance[\u0027host\u0027]:"},{"line_number":1678,"context_line":"                    self._set_instance_error_state(context, instance[\u0027uuid\u0027])"},{"line_number":1679,"context_line":"                    msg \u003d _(\u0027destination not defined!\u0027)"},{"line_number":1680,"context_line":"                    raise exception.MigrationError(msg)"},{"line_number":1681,"context_line":""},{"line_number":1682,"context_line":"                same_host \u003d instance[\u0027host\u0027] \u003d\u003d self.host"}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAMH%2F%2F0FU%3D","line":1679,"updated":"2012-11-21 18:38:35.000000000","message":"instance[\u0027host\u0027] is the source, not the destination... could use a better error message here like \u0027Instance has no source host\u0027.","commit_id":"6868bcaa9e2ef4306f44d5bfb04e189c095ef7e6"}],"nova/compute/resource_tracker.py":[{"author":{"_account_id":1030,"name":"Chris Behrens","email":"cbehrens@codestud.com","username":"cbehrens"},"change_message_id":"a05b556ded2bb36050dab87191b036b422729312","unresolved":false,"context_lines":[{"line_number":116,"context_line":"                instance_ref[\u0027uuid\u0027], values)"},{"line_number":117,"context_line":"        notifications.send_update(context, old_ref, new_ref)"},{"line_number":118,"context_line":"        instance_ref[\u0027host\u0027] \u003d self.host"},{"line_number":119,"context_line":"        instance_ref[\u0027launched_on\u0027] \u003d self.host"},{"line_number":120,"context_line":""},{"line_number":121,"context_line":"    def abort_instance_claim(self, instance):"},{"line_number":122,"context_line":"        \"\"\"Remove usage from the given instance\"\"\""}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAALn%2F%2Fv3w%3D","line":119,"updated":"2012-11-08 17:15:56.000000000","message":"I sort of like the code the way it was before... using a fresh copy of the instance to pass to notifications.  But I see the need to update the original instance_ref with \u0027host\u0027.","commit_id":"1a3e029dfcf0bc3aca6a1ae93d210775008470c2"},{"author":{"_account_id":1030,"name":"Chris Behrens","email":"cbehrens@codestud.com","username":"cbehrens"},"change_message_id":"ae4f1f319f4c4cd202c958550e5f2750b0e3930f","unresolved":false,"context_lines":[{"line_number":116,"context_line":"                instance_ref[\u0027uuid\u0027], values)"},{"line_number":117,"context_line":"        notifications.send_update(context, old_ref, new_ref)"},{"line_number":118,"context_line":"        instance_ref[\u0027host\u0027] \u003d self.host"},{"line_number":119,"context_line":"        instance_ref[\u0027launched_on\u0027] \u003d self.host"},{"line_number":120,"context_line":""},{"line_number":121,"context_line":"    def abort_instance_claim(self, instance):"},{"line_number":122,"context_line":"        \"\"\"Remove usage from the given instance\"\"\""}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAALn%2F%2Fv3M%3D","line":119,"in_reply_to":"AAAALn%2F%2Fv3w%3D","updated":"2012-11-08 17:16:41.000000000","message":"Whoops... nevermind, you kept that.  I misread :)","commit_id":"1a3e029dfcf0bc3aca6a1ae93d210775008470c2"},{"author":{"_account_id":1561,"name":"Russell Bryant","email":"rbryant@redhat.com","username":"russellb"},"change_message_id":"f6fd1cb1e266e0a7ee1747744da3281878f7d991","unresolved":false,"context_lines":[{"line_number":116,"context_line":"                instance_ref[\u0027uuid\u0027], values)"},{"line_number":117,"context_line":"        notifications.send_update(context, old_ref, new_ref)"},{"line_number":118,"context_line":"        instance_ref[\u0027host\u0027] \u003d self.host"},{"line_number":119,"context_line":"        instance_ref[\u0027launched_on\u0027] \u003d self.host"},{"line_number":120,"context_line":""},{"line_number":121,"context_line":"    def abort_instance_claim(self, instance):"},{"line_number":122,"context_line":"        \"\"\"Remove usage from the given instance\"\"\""}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAMH%2F%2F2fo%3D","line":119,"updated":"2012-11-20 01:16:23.000000000","message":"The updated data was originally being returned here.  I would change the approach to fixing this to propagate the return value further up the stack and overwrite references to instance with this new one.","commit_id":"6868bcaa9e2ef4306f44d5bfb04e189c095ef7e6"},{"author":{"_account_id":1561,"name":"Russell Bryant","email":"rbryant@redhat.com","username":"russellb"},"change_message_id":"be24fd560dcb60218d06cee15774000ae110d65e","unresolved":false,"context_lines":[{"line_number":116,"context_line":"                instance_ref[\u0027uuid\u0027], values)"},{"line_number":117,"context_line":"        notifications.send_update(context, old_ref, new_ref)"},{"line_number":118,"context_line":"        instance_ref[\u0027host\u0027] \u003d self.host"},{"line_number":119,"context_line":"        instance_ref[\u0027launched_on\u0027] \u003d self.host"},{"line_number":120,"context_line":""},{"line_number":121,"context_line":"    def abort_instance_claim(self, instance):"},{"line_number":122,"context_line":"        \"\"\"Remove usage from the given instance\"\"\""}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAMH%2F%2F0IQ%3D","line":119,"in_reply_to":"AAAAMH%2F%2F2fo%3D","updated":"2012-11-21 17:45:40.000000000","message":"After talking on IRC, it\u0027s not very straight forward to do this because of how instance_claim is used.\n\n    with rt.instance_claim(...):\n        ...\n\nSo ... I guess I\u0027m fine with how it is.  I don\u0027t have a better idea right now.","commit_id":"6868bcaa9e2ef4306f44d5bfb04e189c095ef7e6"}],"nova/tests/compute/test_compute.py":[{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"6366050ec58afcf6719dc92b76fbc65bbc0ddfdd","unresolved":false,"context_lines":[{"line_number":1760,"context_line":"        self.compute.run_instance(self.context, instance\u003dinstance)"},{"line_number":1761,"context_line":""},{"line_number":1762,"context_line":"        instance \u003d db.instance_update(self.context, instance[\u0027uuid\u0027],"},{"line_number":1763,"context_line":"                                      {\u0027host\u0027: \u0027foo\u0027})"},{"line_number":1764,"context_line":"        db.instance_update(self.context, instance[\"uuid\"],"},{"line_number":1765,"context_line":"                           {\"task_state\": task_states.RESIZE_PREP})"},{"line_number":1766,"context_line":"        self.compute.prep_resize(self.context, instance\u003dinstance,"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAALn%2F%2FxQ4%3D","line":1763,"updated":"2012-11-07 15:05:43.000000000","message":"Is this change relevant?","commit_id":"5134c26db552cfa1c8fa8936aea02bd8c48a6199"},{"author":{"_account_id":55,"name":"Édouard Thuleau","email":"ethuleau@juniper.net","username":"ethuleau"},"change_message_id":"164c0f63e508831d15a94321477bacbe9be23656","unresolved":false,"context_lines":[{"line_number":1760,"context_line":"        self.compute.run_instance(self.context, instance\u003dinstance)"},{"line_number":1761,"context_line":""},{"line_number":1762,"context_line":"        instance \u003d db.instance_update(self.context, instance[\u0027uuid\u0027],"},{"line_number":1763,"context_line":"                                      {\u0027host\u0027: \u0027foo\u0027})"},{"line_number":1764,"context_line":"        db.instance_update(self.context, instance[\"uuid\"],"},{"line_number":1765,"context_line":"                           {\"task_state\": task_states.RESIZE_PREP})"},{"line_number":1766,"context_line":"        self.compute.prep_resize(self.context, instance\u003dinstance,"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAALn%2F%2FwRA%3D","line":1763,"in_reply_to":"AAAALn%2F%2FxNo%3D","updated":"2012-11-08 09:28:52.000000000","message":"Ok, I didn\u0027t understand what you meant.\nYes, I need to add these changes because the tests no longer pass without them (http://logs.openstack.org/15119/2/check/gate-nova-python26/8150/).\nBefore my changes, the test was wrong but it succeeds because the \u0027host\u0027 field wasn\u0027t updated.\n\nPerhaps, we can open a new bug to check all Nova code if it uses the new instance values after it updated it ?","commit_id":"5134c26db552cfa1c8fa8936aea02bd8c48a6199"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"cf81efb56fb6b9caf97abbe9c071ad51868b2ef0","unresolved":false,"context_lines":[{"line_number":1760,"context_line":"        self.compute.run_instance(self.context, instance\u003dinstance)"},{"line_number":1761,"context_line":""},{"line_number":1762,"context_line":"        instance \u003d db.instance_update(self.context, instance[\u0027uuid\u0027],"},{"line_number":1763,"context_line":"                                      {\u0027host\u0027: \u0027foo\u0027})"},{"line_number":1764,"context_line":"        db.instance_update(self.context, instance[\"uuid\"],"},{"line_number":1765,"context_line":"                           {\"task_state\": task_states.RESIZE_PREP})"},{"line_number":1766,"context_line":"        self.compute.prep_resize(self.context, instance\u003dinstance,"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAALn%2F%2FxNo%3D","line":1763,"in_reply_to":"AAAALn%2F%2FxPI%3D","updated":"2012-11-07 15:48:02.000000000","message":"What I mean is, is this change related to the change you\u0027re making in resource_tracker.py? In other words, does the test no longer pass without this change after the modification you made to resource_tracker.py?\n\nIf so, then maybe some comments in the commit message are warranted. If not, then I think these should be a different patch.","commit_id":"5134c26db552cfa1c8fa8936aea02bd8c48a6199"},{"author":{"_account_id":55,"name":"Édouard Thuleau","email":"ethuleau@juniper.net","username":"ethuleau"},"change_message_id":"25fb906dee58cd74e82595cb653aaaf2cacadf2c","unresolved":false,"context_lines":[{"line_number":1760,"context_line":"        self.compute.run_instance(self.context, instance\u003dinstance)"},{"line_number":1761,"context_line":""},{"line_number":1762,"context_line":"        instance \u003d db.instance_update(self.context, instance[\u0027uuid\u0027],"},{"line_number":1763,"context_line":"                                      {\u0027host\u0027: \u0027foo\u0027})"},{"line_number":1764,"context_line":"        db.instance_update(self.context, instance[\"uuid\"],"},{"line_number":1765,"context_line":"                           {\"task_state\": task_states.RESIZE_PREP})"},{"line_number":1766,"context_line":"        self.compute.prep_resize(self.context, instance\u003dinstance,"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAALn%2F%2FxPI%3D","line":1763,"in_reply_to":"AAAALn%2F%2FxQ4%3D","updated":"2012-11-07 15:40:47.000000000","message":"Yes, it is. The test changes the instance \u0027host\u0027 field before makes \u0027prep_resize\u0027 to be sure this field is different from the host which execute it. Because, the \u0027prep_resize\u0027 function fails if the values are equal and if \u0027allow_resize_to_same_host\u0027 is set to false (false is the default value).\n\nPerhaps, it\u0027ll be better to rename the modify instance variable ?","commit_id":"5134c26db552cfa1c8fa8936aea02bd8c48a6199"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"6366050ec58afcf6719dc92b76fbc65bbc0ddfdd","unresolved":false,"context_lines":[{"line_number":1811,"context_line":"        test_notifier.NOTIFICATIONS \u003d []"},{"line_number":1812,"context_line":""},{"line_number":1813,"context_line":"        instance \u003d db.instance_update(self.context, instance[\u0027uuid\u0027],"},{"line_number":1814,"context_line":"                                      {\u0027host\u0027: \u0027foo\u0027})"},{"line_number":1815,"context_line":"        instance_type \u003d instance_types.get_default_instance_type()"},{"line_number":1816,"context_line":"        self.compute.prep_resize(self.context, instance\u003dinstance,"},{"line_number":1817,"context_line":"                instance_type\u003dinstance_type, image\u003d{})"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAALn%2F%2FxQ0%3D","line":1814,"updated":"2012-11-07 15:05:43.000000000","message":"Ditto","commit_id":"5134c26db552cfa1c8fa8936aea02bd8c48a6199"},{"author":{"_account_id":55,"name":"Édouard Thuleau","email":"ethuleau@juniper.net","username":"ethuleau"},"change_message_id":"25fb906dee58cd74e82595cb653aaaf2cacadf2c","unresolved":false,"context_lines":[{"line_number":1811,"context_line":"        test_notifier.NOTIFICATIONS \u003d []"},{"line_number":1812,"context_line":""},{"line_number":1813,"context_line":"        instance \u003d db.instance_update(self.context, instance[\u0027uuid\u0027],"},{"line_number":1814,"context_line":"                                      {\u0027host\u0027: \u0027foo\u0027})"},{"line_number":1815,"context_line":"        instance_type \u003d instance_types.get_default_instance_type()"},{"line_number":1816,"context_line":"        self.compute.prep_resize(self.context, instance\u003dinstance,"},{"line_number":1817,"context_line":"                instance_type\u003dinstance_type, image\u003d{})"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAALn%2F%2FxO8%3D","line":1814,"in_reply_to":"AAAALn%2F%2FxQ0%3D","updated":"2012-11-07 15:40:47.000000000","message":"Ditto","commit_id":"5134c26db552cfa1c8fa8936aea02bd8c48a6199"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"6366050ec58afcf6719dc92b76fbc65bbc0ddfdd","unresolved":false,"context_lines":[{"line_number":1880,"context_line":""},{"line_number":1881,"context_line":"        self.compute.run_instance(self.context, instance\u003dinstance)"},{"line_number":1882,"context_line":"        instance \u003d db.instance_update(self.context, instance[\u0027uuid\u0027],"},{"line_number":1883,"context_line":"                                      {\u0027host\u0027: \u0027foo\u0027})"},{"line_number":1884,"context_line":"        self.compute.prep_resize(self.context, instance\u003dinstance,"},{"line_number":1885,"context_line":"                                 instance_type\u003dinstance_type, image\u003d{},"},{"line_number":1886,"context_line":"                                 reservations\u003dreservations)"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAALn%2F%2FxQw%3D","line":1883,"updated":"2012-11-07 15:05:43.000000000","message":"Here too.","commit_id":"5134c26db552cfa1c8fa8936aea02bd8c48a6199"},{"author":{"_account_id":55,"name":"Édouard Thuleau","email":"ethuleau@juniper.net","username":"ethuleau"},"change_message_id":"25fb906dee58cd74e82595cb653aaaf2cacadf2c","unresolved":false,"context_lines":[{"line_number":1880,"context_line":""},{"line_number":1881,"context_line":"        self.compute.run_instance(self.context, instance\u003dinstance)"},{"line_number":1882,"context_line":"        instance \u003d db.instance_update(self.context, instance[\u0027uuid\u0027],"},{"line_number":1883,"context_line":"                                      {\u0027host\u0027: \u0027foo\u0027})"},{"line_number":1884,"context_line":"        self.compute.prep_resize(self.context, instance\u003dinstance,"},{"line_number":1885,"context_line":"                                 instance_type\u003dinstance_type, image\u003d{},"},{"line_number":1886,"context_line":"                                 reservations\u003dreservations)"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAALn%2F%2FxO4%3D","line":1883,"in_reply_to":"AAAALn%2F%2FxQw%3D","updated":"2012-11-07 15:40:47.000000000","message":"Ditto","commit_id":"5134c26db552cfa1c8fa8936aea02bd8c48a6199"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"6366050ec58afcf6719dc92b76fbc65bbc0ddfdd","unresolved":false,"context_lines":[{"line_number":1907,"context_line":""},{"line_number":1908,"context_line":"        self.compute.run_instance(self.context, instance\u003dinstance)"},{"line_number":1909,"context_line":"        instance \u003d db.instance_update(self.context, instance[\u0027uuid\u0027],"},{"line_number":1910,"context_line":"                                      {\u0027host\u0027: \u0027foo\u0027})"},{"line_number":1911,"context_line":"        self.compute.prep_resize(self.context, instance\u003dinstance,"},{"line_number":1912,"context_line":"                instance_type\u003dinstance_type, image\u003d{})"},{"line_number":1913,"context_line":"        migration_ref \u003d db.migration_get_by_instance_and_status("}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAALn%2F%2FxQs%3D","line":1910,"updated":"2012-11-07 15:05:43.000000000","message":"...and here","commit_id":"5134c26db552cfa1c8fa8936aea02bd8c48a6199"},{"author":{"_account_id":55,"name":"Édouard Thuleau","email":"ethuleau@juniper.net","username":"ethuleau"},"change_message_id":"25fb906dee58cd74e82595cb653aaaf2cacadf2c","unresolved":false,"context_lines":[{"line_number":1907,"context_line":""},{"line_number":1908,"context_line":"        self.compute.run_instance(self.context, instance\u003dinstance)"},{"line_number":1909,"context_line":"        instance \u003d db.instance_update(self.context, instance[\u0027uuid\u0027],"},{"line_number":1910,"context_line":"                                      {\u0027host\u0027: \u0027foo\u0027})"},{"line_number":1911,"context_line":"        self.compute.prep_resize(self.context, instance\u003dinstance,"},{"line_number":1912,"context_line":"                instance_type\u003dinstance_type, image\u003d{})"},{"line_number":1913,"context_line":"        migration_ref \u003d db.migration_get_by_instance_and_status("}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAALn%2F%2FxO0%3D","line":1910,"in_reply_to":"AAAALn%2F%2FxQs%3D","updated":"2012-11-07 15:40:47.000000000","message":"Ditto","commit_id":"5134c26db552cfa1c8fa8936aea02bd8c48a6199"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"6366050ec58afcf6719dc92b76fbc65bbc0ddfdd","unresolved":false,"context_lines":[{"line_number":2041,"context_line":""},{"line_number":2042,"context_line":"        self.compute.run_instance(self.context, instance\u003dinst_ref)"},{"line_number":2043,"context_line":"        inst_ref \u003d db.instance_update(self.context, inst_ref[\u0027uuid\u0027],"},{"line_number":2044,"context_line":"                                      {\u0027host\u0027: \u0027foo\u0027})"},{"line_number":2045,"context_line":"        self.compute.prep_resize(self.context, instance\u003dinst_ref,"},{"line_number":2046,"context_line":"                                 instance_type\u003dinstance_type,"},{"line_number":2047,"context_line":"                                 image\u003d{}, reservations\u003dreservations)"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAALn%2F%2FxQo%3D","line":2044,"updated":"2012-11-07 15:05:43.000000000","message":"...and here","commit_id":"5134c26db552cfa1c8fa8936aea02bd8c48a6199"},{"author":{"_account_id":55,"name":"Édouard Thuleau","email":"ethuleau@juniper.net","username":"ethuleau"},"change_message_id":"25fb906dee58cd74e82595cb653aaaf2cacadf2c","unresolved":false,"context_lines":[{"line_number":2041,"context_line":""},{"line_number":2042,"context_line":"        self.compute.run_instance(self.context, instance\u003dinst_ref)"},{"line_number":2043,"context_line":"        inst_ref \u003d db.instance_update(self.context, inst_ref[\u0027uuid\u0027],"},{"line_number":2044,"context_line":"                                      {\u0027host\u0027: \u0027foo\u0027})"},{"line_number":2045,"context_line":"        self.compute.prep_resize(self.context, instance\u003dinst_ref,"},{"line_number":2046,"context_line":"                                 instance_type\u003dinstance_type,"},{"line_number":2047,"context_line":"                                 image\u003d{}, reservations\u003dreservations)"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAALn%2F%2FxOw%3D","line":2044,"in_reply_to":"AAAALn%2F%2FxQo%3D","updated":"2012-11-07 15:40:47.000000000","message":"Ditto","commit_id":"5134c26db552cfa1c8fa8936aea02bd8c48a6199"}]}
