)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"8982274cc7f879735d0ab8c270503efd261ba578","unresolved":false,"context_lines":[{"line_number":18,"context_line":"drop_move_claim() was running in MoveClaim.abort() we were always"},{"line_number":19,"context_line":"doing it. This changes the test to use the actual exception we"},{"line_number":20,"context_line":"roll back for, now that we no longer do the rollback in the"},{"line_number":21,"context_line":"drop_mnove_claim() method itself."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"Related to blueprint migration-allocations"},{"line_number":24,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"7f515b1d_6af67392","line":21,"range":{"start_line":21,"start_character":5,"end_line":21,"end_character":8},"updated":"2017-09-22 17:09:09.000000000","message":"s/drop_mnove/drop_move/","commit_id":"21544b54d28c0a8a864aadf9c8fa39fd9c488903"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"8b7241018e9ded4c16cf2710041fff5dd3811202","unresolved":false,"context_lines":[{"line_number":12,"context_line":"intent here is to move it without changing any behavior first."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"Note that for one case, this was always deleting the claim on the"},{"line_number":15,"context_line":"other host after a failed evacuation. The test for this was asserting"},{"line_number":16,"context_line":"that using a TestingException, which is not exactly correct since"},{"line_number":17,"context_line":"we don\u0027t roll back allocations for unknown errors, although because"},{"line_number":18,"context_line":"drop_move_claim() was running in MoveClaim.abort() we were always"},{"line_number":19,"context_line":"doing it. This changes the test to use the actual exception we"},{"line_number":20,"context_line":"roll back for, now that we no longer do the rollback in the"},{"line_number":21,"context_line":"drop_move_claim() method itself."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"Related to blueprint migration-allocations"},{"line_number":24,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":9,"id":"7f515b1d_ea1d6a73","line":21,"range":{"start_line":15,"start_character":38,"end_line":21,"end_character":32},"updated":"2017-09-26 20:25:47.000000000","message":"This should be updated.","commit_id":"e5f3fdd9d86a1a3cd787ba35d19244f0056e87d8"}],"nova/compute/manager.py":[{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"86f3db85c912283ef0e1b645790a0a2fa2348fa3","unresolved":false,"context_lines":[{"line_number":3617,"context_line":"        # the source host and shared providers for a revert_resize operation.."},{"line_number":3618,"context_line":"        my_resources \u003d scheduler_utils.resources_from_flavor(instance, flavor)"},{"line_number":3619,"context_line":"        rt \u003d self._get_resource_tracker()"},{"line_number":3620,"context_line":"        cn_uuid \u003d rt.compute_nodes[nodename].uuid"},{"line_number":3621,"context_line":"        res \u003d self.reportclient.remove_provider_from_instance_allocation("},{"line_number":3622,"context_line":"            instance.uuid, cn_uuid, instance.user_id,"},{"line_number":3623,"context_line":"            instance.project_id, my_resources)"}],"source_content_type":"text/x-python","patch_set":3,"id":"7f515b1d_2f91b053","line":3620,"updated":"2017-09-22 14:57:16.000000000","message":"I\u0027m not really a fan of the compute manager using internal data from the resource tracker (the compute_nodes dict). Perhaps you might add a new RT.uuid_from_nodename() method that, given a nodename returns the compute node\u0027s UUID?","commit_id":"7b7168e75638f33eb63ca04f5d14e5feed71bcbe"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"8982274cc7f879735d0ab8c270503efd261ba578","unresolved":false,"context_lines":[{"line_number":3617,"context_line":"        # the source host and shared providers for a revert_resize operation.."},{"line_number":3618,"context_line":"        my_resources \u003d scheduler_utils.resources_from_flavor(instance, flavor)"},{"line_number":3619,"context_line":"        rt \u003d self._get_resource_tracker()"},{"line_number":3620,"context_line":"        cn_uuid \u003d rt.compute_nodes[nodename].uuid"},{"line_number":3621,"context_line":"        res \u003d self.reportclient.remove_provider_from_instance_allocation("},{"line_number":3622,"context_line":"            instance.uuid, cn_uuid, instance.user_id,"},{"line_number":3623,"context_line":"            instance.project_id, my_resources)"}],"source_content_type":"text/x-python","patch_set":4,"id":"7f515b1d_0a625f3f","line":3620,"range":{"start_line":3620,"start_character":8,"end_line":3620,"end_character":49},"updated":"2017-09-22 17:09:09.000000000","message":"I\u0027d mentioned on the prior revision that I\u0027d prefer not to have the compute manager directly using internal-to-the-RT data like the compute_nodes dict. Instead of the above, would you mind adding a simple RT.get_uuid_from_nodename() method to return the UUID of the associated compute node for a node?\n\nMy reasoning behind this is that with the nested resource providers series, that compute_nodes dict becomes a ProviderTree object so this code would need to change whereas if it was a method to get a UUID from a name, nothing about the above would need to change.","commit_id":"21544b54d28c0a8a864aadf9c8fa39fd9c488903"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"5c0377b9c9672021251004c20a540852c2660ad0","unresolved":false,"context_lines":[{"line_number":3611,"context_line":"                context, instance, \"resize.confirm.end\","},{"line_number":3612,"context_line":"                network_info\u003dnetwork_info)"},{"line_number":3613,"context_line":""},{"line_number":3614,"context_line":"    def _delete_allocation_after_move(self, instance, migration, flavor,"},{"line_number":3615,"context_line":"                                      nodename):"},{"line_number":3616,"context_line":"        # NOTE(jaypipes): This sucks, but due to the fact that confirm_resize()"},{"line_number":3617,"context_line":"        # only runs on the source host and revert_resize() runs on the"}],"source_content_type":"text/x-python","patch_set":6,"id":"7f515b1d_2906f7cf","line":3614,"range":{"start_line":3614,"start_character":54,"end_line":3614,"end_character":63},"updated":"2017-09-26 17:05:09.000000000","message":"we technically don\u0027t need to have that argument *now* since we don\u0027t use it yet but since I do understand why you add it here, I\u0027m fine with leaving it here.","commit_id":"1548bb5f930f46333749b850fd927c2d5fd1d376"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"5c0377b9c9672021251004c20a540852c2660ad0","unresolved":false,"context_lines":[{"line_number":3615,"context_line":"                                      nodename):"},{"line_number":3616,"context_line":"        # NOTE(jaypipes): This sucks, but due to the fact that confirm_resize()"},{"line_number":3617,"context_line":"        # only runs on the source host and revert_resize() runs on the"},{"line_number":3618,"context_line":"        # destination host, we need to do this here. Basically, what we\u0027re"},{"line_number":3619,"context_line":"        # doing here is grabbing the existing allocations for this instance"},{"line_number":3620,"context_line":"        # from the placement API, dropping the resources in the doubled-up"},{"line_number":3621,"context_line":"        # allocation set that refer to the source host UUID and calling PUT"}],"source_content_type":"text/x-python","patch_set":6,"id":"7f515b1d_a94b0729","line":3618,"range":{"start_line":3618,"start_character":28,"end_line":3618,"end_character":51},"updated":"2017-09-26 17:05:09.000000000","message":"well, the \"here\" is now different but just a nit ;)","commit_id":"1548bb5f930f46333749b850fd927c2d5fd1d376"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"8b7241018e9ded4c16cf2710041fff5dd3811202","unresolved":false,"context_lines":[{"line_number":2825,"context_line":"                self._notify_instance_rebuild_error(context, instance, e)"},{"line_number":2826,"context_line":"            except Exception as e:"},{"line_number":2827,"context_line":"                self._set_migration_status(migration, \u0027failed\u0027)"},{"line_number":2828,"context_line":"                rt.delete_allocation_for_evacuated_instance("},{"line_number":2829,"context_line":"                    instance, scheduled_node, node_type\u003d\u0027destination\u0027)"},{"line_number":2830,"context_line":"                self._notify_instance_rebuild_error(context, instance, e)"},{"line_number":2831,"context_line":"                raise"}],"source_content_type":"text/x-python","patch_set":9,"id":"7f515b1d_9d2522ae","line":2828,"updated":"2017-09-26 20:25:47.000000000","message":"We would only want to do this if we are evacuating. Rebuild to the same host shouldn\u0027t remove allocations if the rebuild failed. So I think only if recreate is True.","commit_id":"e5f3fdd9d86a1a3cd787ba35d19244f0056e87d8"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"8136b0fedc0f9190efb511733f93365a694794e4","unresolved":false,"context_lines":[{"line_number":2825,"context_line":"                self._notify_instance_rebuild_error(context, instance, e)"},{"line_number":2826,"context_line":"            except Exception as e:"},{"line_number":2827,"context_line":"                self._set_migration_status(migration, \u0027failed\u0027)"},{"line_number":2828,"context_line":"                if recreate or scheduled_node is not None:"},{"line_number":2829,"context_line":"                    rt.delete_allocation_for_evacuated_instance("},{"line_number":2830,"context_line":"                        instance, scheduled_node, node_type\u003d\u0027destination\u0027)"},{"line_number":2831,"context_line":"                self._notify_instance_rebuild_error(context, instance, e)"}],"source_content_type":"text/x-python","patch_set":10,"id":"7f515b1d_ab9078ee","line":2828,"updated":"2017-09-27 16:51:33.000000000","message":"OK, ++. After the conversation on IRC last night I see why this is correct. We don\u0027t want to delete allocations when it\u0027s a rebuild (recreate\u003dTrue). Only when it\u0027s an evacuate (i.e. a rebuild on a different destination host)","commit_id":"c00b02faa55b5a84ffd068151932aefaff973d94"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"61a1bf98997aac1eb2f39f17ef402fc9ad0ce133","unresolved":false,"context_lines":[{"line_number":2825,"context_line":"                self._notify_instance_rebuild_error(context, instance, e)"},{"line_number":2826,"context_line":"            except Exception as e:"},{"line_number":2827,"context_line":"                self._set_migration_status(migration, \u0027failed\u0027)"},{"line_number":2828,"context_line":"                if recreate or scheduled_node is not None:"},{"line_number":2829,"context_line":"                    rt.delete_allocation_for_evacuated_instance("},{"line_number":2830,"context_line":"                        instance, scheduled_node, node_type\u003d\u0027destination\u0027)"},{"line_number":2831,"context_line":"                self._notify_instance_rebuild_error(context, instance, e)"}],"source_content_type":"text/x-python","patch_set":10,"id":"7f515b1d_177434fd","line":2828,"range":{"start_line":2828,"start_character":16,"end_line":2828,"end_character":58},"updated":"2017-09-28 14:42:41.000000000","message":"Unrelated, but I\u0027m not sure why we even check scheduled_node in this conditional (I know it\u0027s copied from above). The scheduled_node is None or not depending on forced evacuate, but either way recreate is going to be True.\n\nCould be a separate logic cleanup.","commit_id":"c00b02faa55b5a84ffd068151932aefaff973d94"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"b4531b86bc1280ebc3fc0e19c33213fc69eccc50","unresolved":false,"context_lines":[{"line_number":2825,"context_line":"                self._notify_instance_rebuild_error(context, instance, e)"},{"line_number":2826,"context_line":"            except Exception as e:"},{"line_number":2827,"context_line":"                self._set_migration_status(migration, \u0027failed\u0027)"},{"line_number":2828,"context_line":"                if recreate or scheduled_node is not None:"},{"line_number":2829,"context_line":"                    rt.delete_allocation_for_evacuated_instance("},{"line_number":2830,"context_line":"                        instance, scheduled_node, node_type\u003d\u0027destination\u0027)"},{"line_number":2831,"context_line":"                self._notify_instance_rebuild_error(context, instance, e)"}],"source_content_type":"text/x-python","patch_set":10,"id":"7f515b1d_bcf66762","line":2828,"in_reply_to":"7f515b1d_ab9078ee","updated":"2017-09-28 14:08:28.000000000","message":"\u003e We don\u0027t want to delete allocations when it\u0027s a rebuild (recreate\u003dTrue).\n\nClose, but evacuate is recreate\u003dTrue.\n\nWe should really rename that to evacuate, but rpc...","commit_id":"c00b02faa55b5a84ffd068151932aefaff973d94"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"273ca0174d6efb99dfc3e063b2f0f860013b5008","unresolved":false,"context_lines":[{"line_number":2825,"context_line":"                self._notify_instance_rebuild_error(context, instance, e)"},{"line_number":2826,"context_line":"            except Exception as e:"},{"line_number":2827,"context_line":"                self._set_migration_status(migration, \u0027failed\u0027)"},{"line_number":2828,"context_line":"                if recreate or scheduled_node is not None:"},{"line_number":2829,"context_line":"                    rt.delete_allocation_for_evacuated_instance("},{"line_number":2830,"context_line":"                        instance, scheduled_node, node_type\u003d\u0027destination\u0027)"},{"line_number":2831,"context_line":"                self._notify_instance_rebuild_error(context, instance, e)"}],"source_content_type":"text/x-python","patch_set":10,"id":"7f515b1d_82f580ef","line":2828,"in_reply_to":"7f515b1d_bcf66762","updated":"2017-09-28 14:47:48.000000000","message":"Doh, yeah.","commit_id":"c00b02faa55b5a84ffd068151932aefaff973d94"}],"nova/compute/resource_tracker.py":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"9957e9c8d678db8bd18447362252705b692bc17b","unresolved":false,"context_lines":[{"line_number":481,"context_line":"        cn_uuid \u003d self.compute_nodes[nodename].uuid"},{"line_number":482,"context_line":"        operation \u003d \u0027Confirming\u0027"},{"line_number":483,"context_line":"        source_or_dest \u003d \u0027source\u0027"},{"line_number":484,"context_line":"        if prefix \u003d\u003d \u0027new_\u0027:"},{"line_number":485,"context_line":"            operation \u003d \u0027Reverting\u0027"},{"line_number":486,"context_line":"            source_or_dest \u003d \u0027destination\u0027"},{"line_number":487,"context_line":"        LOG.debug(\"%s resize on %s host. Removing resources claimed on \""},{"line_number":488,"context_line":"                  \"provider %s from allocation\","},{"line_number":489,"context_line":"                  operation, source_or_dest, cn_uuid, instance\u003dinstance)"},{"line_number":490,"context_line":"        res \u003d self.reportclient.remove_provider_from_instance_allocation("},{"line_number":491,"context_line":"            instance.uuid, cn_uuid, instance.user_id,"},{"line_number":492,"context_line":"            instance.project_id, my_resources)"}],"source_content_type":"text/x-python","patch_set":2,"id":"7f287b81_cfaae417","side":"PARENT","line":489,"range":{"start_line":484,"start_character":0,"end_line":489,"end_character":72},"updated":"2017-09-05 16:01:00.000000000","message":"Was it not possible or simply not helpful to keep this logging? Could we not add logs to before the two calls in \u0027nova.compute.manager:ComputeManager._delete_allocation_after_move\u0027","commit_id":"e5152a2ee383a3d92a7a5a0750ee4753ead55e35"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"60a17e2ffaff995e686c1ebf16be9ec74ea4cee5","unresolved":false,"context_lines":[{"line_number":481,"context_line":"        cn_uuid \u003d self.compute_nodes[nodename].uuid"},{"line_number":482,"context_line":"        operation \u003d \u0027Confirming\u0027"},{"line_number":483,"context_line":"        source_or_dest \u003d \u0027source\u0027"},{"line_number":484,"context_line":"        if prefix \u003d\u003d \u0027new_\u0027:"},{"line_number":485,"context_line":"            operation \u003d \u0027Reverting\u0027"},{"line_number":486,"context_line":"            source_or_dest \u003d \u0027destination\u0027"},{"line_number":487,"context_line":"        LOG.debug(\"%s resize on %s host. Removing resources claimed on \""},{"line_number":488,"context_line":"                  \"provider %s from allocation\","},{"line_number":489,"context_line":"                  operation, source_or_dest, cn_uuid, instance\u003dinstance)"},{"line_number":490,"context_line":"        res \u003d self.reportclient.remove_provider_from_instance_allocation("},{"line_number":491,"context_line":"            instance.uuid, cn_uuid, instance.user_id,"},{"line_number":492,"context_line":"            instance.project_id, my_resources)"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f5c4f37_67afd394","side":"PARENT","line":489,"range":{"start_line":484,"start_character":0,"end_line":489,"end_character":72},"in_reply_to":"7f287b81_cfaae417","updated":"2017-09-21 17:29:32.000000000","message":"I was trying not to bring the prefix bit into the new code. I guess I can add it back, but I\u0027m not sure it\u0027s super useful debug at this point.","commit_id":"e5152a2ee383a3d92a7a5a0750ee4753ead55e35"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"50aa0231e6b1faa10c6258d3c211ece7ca827d14","unresolved":false,"context_lines":[{"line_number":490,"context_line":"        if prefix \u003d\u003d \u0027new_\u0027:"},{"line_number":491,"context_line":"            operation \u003d \u0027Reverting\u0027"},{"line_number":492,"context_line":"            source_or_dest \u003d \u0027destination\u0027"},{"line_number":493,"context_line":"        LOG.debug(\"%s resize on %s host. Removing resources claimed on \""},{"line_number":494,"context_line":"                  \"provider %s from allocation\","},{"line_number":495,"context_line":"                  operation, source_or_dest, cn_uuid, instance\u003dinstance)"},{"line_number":496,"context_line":"        res \u003d self.reportclient.remove_provider_from_instance_allocation("},{"line_number":497,"context_line":"            instance.uuid, cn_uuid, instance.user_id,"},{"line_number":498,"context_line":"            instance.project_id, my_resources)"},{"line_number":499,"context_line":"        if not res:"},{"line_number":500,"context_line":"            LOG.error(\"Failed to save manipulated allocation when \""},{"line_number":501,"context_line":"                      \"%s resize on %s host %s.\","},{"line_number":502,"context_line":"                      operation.lower(), source_or_dest, cn_uuid,"},{"line_number":503,"context_line":"                      instance\u003dinstance)"},{"line_number":504,"context_line":""},{"line_number":505,"context_line":"    @utils.synchronized(COMPUTE_RESOURCE_SEMAPHORE)"},{"line_number":506,"context_line":"    def update_usage(self, context, instance, nodename):"}],"source_content_type":"text/x-python","patch_set":10,"id":"7f515b1d_22e48c3b","side":"PARENT","line":503,"range":{"start_line":493,"start_character":8,"end_line":503,"end_character":40},"updated":"2017-09-28 14:48:01.000000000","message":"Would have been nice to preserve these debug log messages in the compute manager.","commit_id":"86abab061f2d80ea8e090c93657498e725a296f5"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"48aa35c730fd7743e87e7f183455a78248162202","unresolved":false,"context_lines":[{"line_number":490,"context_line":"        if prefix \u003d\u003d \u0027new_\u0027:"},{"line_number":491,"context_line":"            operation \u003d \u0027Reverting\u0027"},{"line_number":492,"context_line":"            source_or_dest \u003d \u0027destination\u0027"},{"line_number":493,"context_line":"        LOG.debug(\"%s resize on %s host. Removing resources claimed on \""},{"line_number":494,"context_line":"                  \"provider %s from allocation\","},{"line_number":495,"context_line":"                  operation, source_or_dest, cn_uuid, instance\u003dinstance)"},{"line_number":496,"context_line":"        res \u003d self.reportclient.remove_provider_from_instance_allocation("},{"line_number":497,"context_line":"            instance.uuid, cn_uuid, instance.user_id,"},{"line_number":498,"context_line":"            instance.project_id, my_resources)"},{"line_number":499,"context_line":"        if not res:"},{"line_number":500,"context_line":"            LOG.error(\"Failed to save manipulated allocation when \""},{"line_number":501,"context_line":"                      \"%s resize on %s host %s.\","},{"line_number":502,"context_line":"                      operation.lower(), source_or_dest, cn_uuid,"},{"line_number":503,"context_line":"                      instance\u003dinstance)"},{"line_number":504,"context_line":""},{"line_number":505,"context_line":"    @utils.synchronized(COMPUTE_RESOURCE_SEMAPHORE)"},{"line_number":506,"context_line":"    def update_usage(self, context, instance, nodename):"}],"source_content_type":"text/x-python","patch_set":10,"id":"7f515b1d_82434013","side":"PARENT","line":503,"range":{"start_line":493,"start_character":8,"end_line":503,"end_character":40},"in_reply_to":"7f515b1d_22e48c3b","updated":"2017-09-28 14:50:18.000000000","message":"I pointed this out earlier on another patch set and in IRC, but later in the series we get a bunch more debug about what is going on and I didn\u0027t feel like passing a new arg into the new function just to make this work for the interim was useful.","commit_id":"86abab061f2d80ea8e090c93657498e725a296f5"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"8185d8d8a6d5f361390ba5d7629e38b3012d68ec","unresolved":false,"context_lines":[{"line_number":490,"context_line":"        if prefix \u003d\u003d \u0027new_\u0027:"},{"line_number":491,"context_line":"            operation \u003d \u0027Reverting\u0027"},{"line_number":492,"context_line":"            source_or_dest \u003d \u0027destination\u0027"},{"line_number":493,"context_line":"        LOG.debug(\"%s resize on %s host. Removing resources claimed on \""},{"line_number":494,"context_line":"                  \"provider %s from allocation\","},{"line_number":495,"context_line":"                  operation, source_or_dest, cn_uuid, instance\u003dinstance)"},{"line_number":496,"context_line":"        res \u003d self.reportclient.remove_provider_from_instance_allocation("},{"line_number":497,"context_line":"            instance.uuid, cn_uuid, instance.user_id,"},{"line_number":498,"context_line":"            instance.project_id, my_resources)"},{"line_number":499,"context_line":"        if not res:"},{"line_number":500,"context_line":"            LOG.error(\"Failed to save manipulated allocation when \""},{"line_number":501,"context_line":"                      \"%s resize on %s host %s.\","},{"line_number":502,"context_line":"                      operation.lower(), source_or_dest, cn_uuid,"},{"line_number":503,"context_line":"                      instance\u003dinstance)"},{"line_number":504,"context_line":""},{"line_number":505,"context_line":"    @utils.synchronized(COMPUTE_RESOURCE_SEMAPHORE)"},{"line_number":506,"context_line":"    def update_usage(self, context, instance, nodename):"}],"source_content_type":"text/x-python","patch_set":10,"id":"7f515b1d_4293085c","side":"PARENT","line":503,"range":{"start_line":493,"start_character":8,"end_line":503,"end_character":40},"in_reply_to":"7f515b1d_82434013","updated":"2017-09-28 14:56:34.000000000","message":"I assumed you wouldn\u0027t pass an arg to the new function, but just have the explicit debug call in confirm_resize and revert_resize methods, but if there is more debug logging to come later in the series, that\u0027s fine.","commit_id":"86abab061f2d80ea8e090c93657498e725a296f5"}],"nova/tests/functional/hooks/post_test_hook.sh":[{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"0a231d7735f511ad53034316c6f7b269cb68a755","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"7f287b81_84da0175","updated":"2017-08-30 13:14:06.000000000","message":"stray git add?","commit_id":"777a3defb74ee61e82851b0e5577aa0409b877e0"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"5cbe96821a3bdb302e8e8bd0361a705bcbb885b8","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"7f287b81_60dffa68","in_reply_to":"7f287b81_84da0175","updated":"2017-08-30 16:48:06.000000000","message":"No, must have been a rebase thing.. weird.","commit_id":"777a3defb74ee61e82851b0e5577aa0409b877e0"}],"nova/tests/functional/test_servers.py":[{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"5c0377b9c9672021251004c20a540852c2660ad0","unresolved":false,"context_lines":[{"line_number":1541,"context_line":"        self.assertFlavorMatchesAllocation(self.flavor3, usages)"},{"line_number":1542,"context_line":""},{"line_number":1543,"context_line":"        allocations \u003d self._get_allocations_by_server_uuid(server[\u0027id\u0027])"},{"line_number":1544,"context_line":"        self.assertEqual(1, len(allocations))"},{"line_number":1545,"context_line":"        allocation \u003d allocations[rp_uuid][\u0027resources\u0027]"},{"line_number":1546,"context_line":"        self.assertFlavorMatchesAllocation(self.flavor3, allocation)"},{"line_number":1547,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"7f515b1d_89cbab70","line":1544,"updated":"2017-09-26 17:05:09.000000000","message":"the test is happy so I\u0027m happy.","commit_id":"1548bb5f930f46333749b850fd927c2d5fd1d376"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"011b7b289f75a0d9c701eef97c1571ac28370391","unresolved":false,"context_lines":[{"line_number":1749,"context_line":"        self._delete_and_check_allocations("},{"line_number":1750,"context_line":"            server, source_rp_uuid, dest_rp_uuid)"},{"line_number":1751,"context_line":""},{"line_number":1752,"context_line":"    def test_evacuate_claim_on_dest_fails(self):"},{"line_number":1753,"context_line":"        \"\"\"Tests that the allocations on the destination node are cleaned up"},{"line_number":1754,"context_line":"        when the rebuild move claim fails due to insufficient resources."},{"line_number":1755,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":6,"id":"7f515b1d_2773bb4f","line":1752,"range":{"start_line":1752,"start_character":8,"end_line":1752,"end_character":41},"updated":"2017-09-26 19:39:13.000000000","message":"This was added here: https://review.openstack.org/#/c/499874/\n\nTo recreate a bug, fixed here: https://review.openstack.org/#/c/499878/","commit_id":"1548bb5f930f46333749b850fd927c2d5fd1d376"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"011b7b289f75a0d9c701eef97c1571ac28370391","unresolved":false,"context_lines":[{"line_number":1827,"context_line":"        source_allocation \u003d allocations[source_rp_uuid][\u0027resources\u0027]"},{"line_number":1828,"context_line":"        self.assertFlavorMatchesAllocation(self.flavor1, source_allocation)"},{"line_number":1829,"context_line":""},{"line_number":1830,"context_line":"    def test_evacuate_rebuild_on_dest_fails(self):"},{"line_number":1831,"context_line":"        \"\"\"Tests that the allocations on the destination node are cleaned up"},{"line_number":1832,"context_line":"        by the drop_move_claim in the ResourceTracker automatically when"},{"line_number":1833,"context_line":"        the claim is made but the actual rebuild via the driver fails."}],"source_content_type":"text/x-python","patch_set":6,"id":"7f515b1d_67c77347","line":1830,"range":{"start_line":1830,"start_character":8,"end_line":1830,"end_character":43},"updated":"2017-09-26 19:39:13.000000000","message":"This was added here:\n\nhttps://review.openstack.org/#/c/499877/\n\nSpecifically to show that if the claim was successful, but the rebuild in the virt driver failed for whatever reason, the MoveClaim.drop_move_claim will cleanup the allocations.\n\nThe change made below makes what this is testing different, and is now redundant with the test above.","commit_id":"1548bb5f930f46333749b850fd927c2d5fd1d376"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"075703507f329c5cc6e5538f1ef000ffd9f90a87","unresolved":false,"context_lines":[{"line_number":1852,"context_line":"            dest_usages \u003d self._get_provider_usages(dest_rp_uuid)"},{"line_number":1853,"context_line":"            self.assertFlavorMatchesAllocation(self.flavor1, dest_usages)"},{"line_number":1854,"context_line":"            # Raise the type of exception that will result in us"},{"line_number":1855,"context_line":"            # deleting the claim on the other host"},{"line_number":1856,"context_line":"            raise exception.ComputeResourcesUnavailable("},{"line_number":1857,"context_line":"                reason\u003d\u0027test_evacuate_rebuild_on_dest_fails\u0027)"},{"line_number":1858,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"7f515b1d_8bf3ca0a","line":1855,"updated":"2017-09-25 16:51:34.000000000","message":"++","commit_id":"1548bb5f930f46333749b850fd927c2d5fd1d376"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"0bc26d89242593a3c994a76695703fbb16f0e8e7","unresolved":false,"context_lines":[{"line_number":1852,"context_line":"            dest_usages \u003d self._get_provider_usages(dest_rp_uuid)"},{"line_number":1853,"context_line":"            self.assertFlavorMatchesAllocation(self.flavor1, dest_usages)"},{"line_number":1854,"context_line":"            # Raise the type of exception that will result in us"},{"line_number":1855,"context_line":"            # deleting the claim on the other host"},{"line_number":1856,"context_line":"            raise exception.ComputeResourcesUnavailable("},{"line_number":1857,"context_line":"                reason\u003d\u0027test_evacuate_rebuild_on_dest_fails\u0027)"},{"line_number":1858,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"7f515b1d_476477e4","line":1855,"in_reply_to":"7f515b1d_8bf3ca0a","updated":"2017-09-26 19:28:36.000000000","message":"This is not the point of this test. It\u0027s not to fail for the claim, it\u0027s that the actual rebuild in the driver fails, which is why TestingException was used. See the docstring above.\n\nYou\u0027ve essentially made this the same as test_evacuate_claim_on_dest_fails so it\u0027s redundant now.","commit_id":"1548bb5f930f46333749b850fd927c2d5fd1d376"}],"nova/tests/unit/compute/test_compute_mgr.py":[{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"8136b0fedc0f9190efb511733f93365a694794e4","unresolved":false,"context_lines":[{"line_number":3619,"context_line":"                              self._test_rebuild_ex, instance, ex)"},{"line_number":3620,"context_line":"            rt \u003d mrt.return_value"},{"line_number":3621,"context_line":"            self.assertFalse("},{"line_number":3622,"context_line":"                rt.delete_allocation_for_evacuated_instance.called)"},{"line_number":3623,"context_line":""},{"line_number":3624,"context_line":"    @mock.patch(\u0027nova.compute.utils.add_instance_fault_from_exc\u0027)"},{"line_number":3625,"context_line":"    @mock.patch.object(manager.ComputeManager,"}],"source_content_type":"text/x-python","patch_set":10,"id":"7f515b1d_2b6b68f1","line":3622,"updated":"2017-09-27 16:51:33.000000000","message":"ack. asserting that a same-host-rebuild/recreate doesn\u0027t attempt delete of allocations.","commit_id":"c00b02faa55b5a84ffd068151932aefaff973d94"}]}
