)]}'
{"nova/compute/resource_tracker.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"d6fb6281b60668899291b2cf129dfb6d3472b0c5","unresolved":false,"context_lines":[{"line_number":446,"context_line":"                        instance_type\u003dNone, prefix\u003d\u0027new_\u0027):"},{"line_number":447,"context_line":"        \"\"\"Remove usage for an incoming/outgoing migration."},{"line_number":448,"context_line":""},{"line_number":449,"context_line":"        :param nodename: Host on which to remove usage. If the migration"},{"line_number":450,"context_line":"                         succeeded, this is normally the source. If it failed,"},{"line_number":451,"context_line":"                         this is normally the destination."},{"line_number":452,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_8c3cb4bd","line":449,"range":{"start_line":449,"start_character":8,"end_line":449,"end_character":23},"updated":"2018-11-26 22:30:54.000000000","message":"How about documenting the other parameters. For confirm resize, the source node and old_flavor are passed in, but for revert the dest node is passed in and the new_flavor is the default. You don\u0027t need to document those here since those are caller-specific, but it does make a difference on what this method does.","commit_id":"adffd410d665f84d279d686e716bb699e9386594"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"6a5718bea882190e6cd31bebda88aed7b1dcb123","unresolved":false,"context_lines":[{"line_number":446,"context_line":"                        instance_type\u003dNone, prefix\u003d\u0027new_\u0027):"},{"line_number":447,"context_line":"        \"\"\"Remove usage for an incoming/outgoing migration."},{"line_number":448,"context_line":""},{"line_number":449,"context_line":"        :param nodename: Host on which to remove usage. If the migration"},{"line_number":450,"context_line":"                         succeeded, this is normally the source. If it failed,"},{"line_number":451,"context_line":"                         this is normally the destination."},{"line_number":452,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_02006bfe","line":449,"range":{"start_line":449,"start_character":8,"end_line":449,"end_character":23},"in_reply_to":"3f79a3b5_8c3cb4bd","updated":"2018-11-27 00:35:00.000000000","message":"\u003e How about documenting the other parameters.\n\n*eyeroll* if you want to be thorough and professional, fine ;)\n\n\u003e For confirm resize, the\n \u003e source node and old_flavor are passed in, but for revert the dest\n \u003e node is passed in and the new_flavor is the default. You don\u0027t need\n \u003e to document those here since those are caller-specific, but it does\n \u003e make a difference on what this method does.\n\nDone, thanks for spelling it out :)","commit_id":"adffd410d665f84d279d686e716bb699e9386594"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"d6fb6281b60668899291b2cf129dfb6d3472b0c5","unresolved":false,"context_lines":[{"line_number":447,"context_line":"        \"\"\"Remove usage for an incoming/outgoing migration."},{"line_number":448,"context_line":""},{"line_number":449,"context_line":"        :param nodename: Host on which to remove usage. If the migration"},{"line_number":450,"context_line":"                         succeeded, this is normally the source. If it failed,"},{"line_number":451,"context_line":"                         this is normally the destination."},{"line_number":452,"context_line":"        \"\"\""},{"line_number":453,"context_line":"        if instance[\u0027uuid\u0027] in self.tracked_migrations:"}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_2c480060","line":450,"range":{"start_line":450,"start_character":65,"end_line":450,"end_character":77},"updated":"2018-11-26 22:30:54.000000000","message":"In the case of resize revert, it\u0027s the destination but that doesn\u0027t mean it\u0027s a failure, the user just reverted the resize:\n\nhttps://github.com/openstack/nova/blob/c1de096098344c733565c244163fc3ebf8c35e68/nova/compute/manager.py#L3999\n\nSo maybe just say \"failed or was reverted\".","commit_id":"adffd410d665f84d279d686e716bb699e9386594"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"6a5718bea882190e6cd31bebda88aed7b1dcb123","unresolved":false,"context_lines":[{"line_number":447,"context_line":"        \"\"\"Remove usage for an incoming/outgoing migration."},{"line_number":448,"context_line":""},{"line_number":449,"context_line":"        :param nodename: Host on which to remove usage. If the migration"},{"line_number":450,"context_line":"                         succeeded, this is normally the source. If it failed,"},{"line_number":451,"context_line":"                         this is normally the destination."},{"line_number":452,"context_line":"        \"\"\""},{"line_number":453,"context_line":"        if instance[\u0027uuid\u0027] in self.tracked_migrations:"}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_2203270d","line":450,"range":{"start_line":450,"start_character":65,"end_line":450,"end_character":77},"in_reply_to":"3f79a3b5_2c480060","updated":"2018-11-27 00:35:00.000000000","message":"Done","commit_id":"adffd410d665f84d279d686e716bb699e9386594"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"d6fb6281b60668899291b2cf129dfb6d3472b0c5","unresolved":false,"context_lines":[{"line_number":450,"context_line":"                         succeeded, this is normally the source. If it failed,"},{"line_number":451,"context_line":"                         this is normally the destination."},{"line_number":452,"context_line":"        \"\"\""},{"line_number":453,"context_line":"        if instance[\u0027uuid\u0027] in self.tracked_migrations:"},{"line_number":454,"context_line":"            migration \u003d self.tracked_migrations.pop(instance[\u0027uuid\u0027])"},{"line_number":455,"context_line":""},{"line_number":456,"context_line":"            if not instance_type:"}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_6c5a781f","line":453,"range":{"start_line":453,"start_character":8,"end_line":453,"end_character":55},"updated":"2018-11-26 22:30:54.000000000","message":"I think for a resize revert, where the claim was made on the dest to start with:\n\nhttps://github.com/openstack/nova/blob/c1de096098344c733565c244163fc3ebf8c35e68/nova/compute/manager.py#L4182\n\nThen this would be true and we\u0027ll decrement usage using the new_flavor from the dest RT. That all makes sense to me.","commit_id":"adffd410d665f84d279d686e716bb699e9386594"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"d6fb6281b60668899291b2cf129dfb6d3472b0c5","unresolved":false,"context_lines":[{"line_number":472,"context_line":"        # as on the source node after a migration)."},{"line_number":473,"context_line":"        # NOTE(lbeliveau): On resize on the same node, the instance is"},{"line_number":474,"context_line":"        # included in both tracked_migrations and tracked_instances."},{"line_number":475,"context_line":"        elif (instance[\u0027uuid\u0027] in self.tracked_instances):"},{"line_number":476,"context_line":"            self.tracked_instances.remove(instance[\u0027uuid\u0027])"},{"line_number":477,"context_line":"            self._drop_pci_devices(instance, nodename, prefix)"},{"line_number":478,"context_line":"            # TODO(lbeliveau): Validate if numa needs the same treatment."}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_4c821c53","line":475,"updated":"2018-11-26 22:30:54.000000000","message":"For confirm_resize, we\u0027re on the source RT and I\u0027m not sure if the instance would be in tracked_migrations (it might be though, see RT._update_usage_from_migration). Anyway, I guess this has to cleanup the usage for the old_flavor on the instance because we don\u0027t actually destroy the instance in the DB, but the guest is gone from the source hypervisor via driver.confirm_migration.","commit_id":"adffd410d665f84d279d686e716bb699e9386594"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"138aa9e7bdb248b0b22211ee1dc7913309fbc7de","unresolved":false,"context_lines":[{"line_number":448,"context_line":""},{"line_number":449,"context_line":"        :param context: Security context."},{"line_number":450,"context_line":"        :param instance: The instance whose usage is to be removed."},{"line_number":451,"context_line":"        :param nodename: Host on which to remove usage. If the migration"},{"line_number":452,"context_line":"                         completed successfully, this is normally the source."},{"line_number":453,"context_line":"                         If it did not complete successfully (failed or"},{"line_number":454,"context_line":"                         reverted), this is normally the destination."}],"source_content_type":"text/x-python","patch_set":3,"id":"3f79a3b5_1320aaad","line":451,"range":{"start_line":451,"start_character":25,"end_line":451,"end_character":29},"updated":"2018-11-27 19:10:19.000000000","message":"nit: it\u0027s not really the host (as in the nova-compute service host), it\u0027s the compute node, which could be different (if this were ironic migrations - which aren\u0027t supported today - you\u0027d have 1:M host:node so it makes a difference).","commit_id":"3e32e76d83a15bc7bb43aa41c1fefc2ea15d7176"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"138aa9e7bdb248b0b22211ee1dc7913309fbc7de","unresolved":false,"context_lines":[{"line_number":452,"context_line":"                         completed successfully, this is normally the source."},{"line_number":453,"context_line":"                         If it did not complete successfully (failed or"},{"line_number":454,"context_line":"                         reverted), this is normally the destination."},{"line_number":455,"context_line":"        :param instance_type: The flavor that determines the usage to remove."},{"line_number":456,"context_line":"                              If the migration completed successfully, this is"},{"line_number":457,"context_line":"                              the old flavor to be removed from the source. If"},{"line_number":458,"context_line":"                              the migration did not complete successfully, this"},{"line_number":459,"context_line":"                              is the new flavor to be removed from the"},{"line_number":460,"context_line":"                              destination."},{"line_number":461,"context_line":"        :param prefix: Prefix to use when accessing migration context"},{"line_number":462,"context_line":"                       attributes. \u0027old_\u0027 or \u0027new_\u0027, with \u0027new_\u0027 being the"},{"line_number":463,"context_line":"                       default."}],"source_content_type":"text/x-python","patch_set":3,"id":"3f79a3b5_930d9a40","line":460,"range":{"start_line":455,"start_character":8,"end_line":460,"end_character":42},"updated":"2018-11-27 19:10:19.000000000","message":"The description here is a bit specific to resize, but it doesn\u0027t necessarily have to be (cold migration would use this as well but the flavor doesn\u0027t change). Anyway, it\u0027s a nit - this is fine.","commit_id":"3e32e76d83a15bc7bb43aa41c1fefc2ea15d7176"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"936066ae18fbfa85e6aa039637a393f1551bd077","unresolved":false,"context_lines":[{"line_number":452,"context_line":"                         completed successfully, this is normally the source."},{"line_number":453,"context_line":"                         If it did not complete successfully (failed or"},{"line_number":454,"context_line":"                         reverted), this is normally the destination."},{"line_number":455,"context_line":"        :param instance_type: The flavor that determines the usage to remove."},{"line_number":456,"context_line":"                              If the migration completed successfully, this is"},{"line_number":457,"context_line":"                              the old flavor to be removed from the source. If"},{"line_number":458,"context_line":"                              the migration did not complete successfully, this"},{"line_number":459,"context_line":"                              is the new flavor to be removed from the"},{"line_number":460,"context_line":"                              destination."},{"line_number":461,"context_line":"        :param prefix: Prefix to use when accessing migration context"},{"line_number":462,"context_line":"                       attributes. \u0027old_\u0027 or \u0027new_\u0027, with \u0027new_\u0027 being the"},{"line_number":463,"context_line":"                       default."}],"source_content_type":"text/x-python","patch_set":3,"id":"3f79a3b5_56ca7e17","line":460,"range":{"start_line":455,"start_character":8,"end_line":460,"end_character":42},"in_reply_to":"3f79a3b5_930d9a40","updated":"2018-11-28 14:39:59.000000000","message":"I dunno, if you read the above with both flavors being the same, it still works.","commit_id":"3e32e76d83a15bc7bb43aa41c1fefc2ea15d7176"}]}
