)]}'
{"nova/conductor/manager.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"885a78005575017984d092794ac07c6a2f6cce43","unresolved":false,"context_lines":[{"line_number":589,"context_line":"        # Older computes will not send a request_spec during reschedules, nor"},{"line_number":590,"context_line":"        # will the API send the request_spec if using cells v1, so we need"},{"line_number":591,"context_line":"        # to check and build our own if one is not provided."},{"line_number":592,"context_line":"        if request_spec is None:"},{"line_number":593,"context_line":"            legacy_request_spec \u003d scheduler_utils.build_request_spec("},{"line_number":594,"context_line":"                image, instances)"},{"line_number":595,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_9fb89676","side":"PARENT","line":592,"updated":"2019-09-23 15:11:19.000000000","message":"You can\u0027t remove this compat code because the compute RPC API could be technically pinned to an older version and we won\u0027t get a request spec on a reschedule. That\u0027s why bumping the major version would be required before you can drop this.","commit_id":"71086867fc746875fd89dfd94ca2ae4aca5ccdfa"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"fa74cfd3913cccc9079a56ddc31d2ef02c21ab2d","unresolved":false,"context_lines":[{"line_number":605,"context_line":"            legacy_request_spec \u003d request_spec.to_legacy_request_spec_dict()"},{"line_number":606,"context_line":""},{"line_number":607,"context_line":"        # \u0027host_lists\u0027 will be None in one of two cases: when running cellsv1,"},{"line_number":608,"context_line":"        # or during a reschedule from a pre-Queens compute. In all other cases,"},{"line_number":609,"context_line":"        # it will be a list of lists, though the lists may be empty if there"},{"line_number":610,"context_line":"        # are no more hosts left in a rescheduling situation."},{"line_number":611,"context_line":"        is_reschedule \u003d host_lists is not None"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_3f7c02b4","side":"PARENT","line":608,"range":{"start_line":608,"start_character":8,"end_line":608,"end_character":58},"updated":"2019-09-23 15:12:41.000000000","message":"Same issue with RPC API version pinning here. Until request_spec and host_lists are not optional you can\u0027t drop compat.","commit_id":"71086867fc746875fd89dfd94ca2ae4aca5ccdfa"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"db5ab5341f5f5e1f4cc8eee676281e20c78fea9f","unresolved":false,"context_lines":[{"line_number":498,"context_line":"        # be updated before this is destroyed."},{"line_number":499,"context_line":"        build_request.destroy()"},{"line_number":500,"context_line":""},{"line_number":501,"context_line":"    def _populate_instance_mapping(self, context, instance, host):"},{"line_number":502,"context_line":"        try:"},{"line_number":503,"context_line":"            inst_mapping \u003d objects.InstanceMapping.get_by_instance_uuid("},{"line_number":504,"context_line":"                    context, instance.uuid)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_c2cf15ae","line":501,"updated":"2019-09-23 15:25:44.000000000","message":"This whole method is only ever used in the cells v1 initial build (not reschedule) case and could also go when we drop that compat.","commit_id":"dec331fbecf87282c5eaeb9d599ca7b336f96fb3"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"db5ab5341f5f5e1f4cc8eee676281e20c78fea9f","unresolved":false,"context_lines":[{"line_number":632,"context_line":"                # either hit NoValidHost or MaxRetriesExceeded. Either way,"},{"line_number":633,"context_line":"                # the build request should already be gone and we probably"},{"line_number":634,"context_line":"                # can\u0027t reach the API DB from the cell conductor."},{"line_number":635,"context_line":"                if num_attempts \u003c\u003d 1:"},{"line_number":636,"context_line":"                    try:"},{"line_number":637,"context_line":"                        # If the BuildRequest stays around then instance"},{"line_number":638,"context_line":"                        # show/lists will pull from it rather than the errored"},{"line_number":639,"context_line":"                        # instance."},{"line_number":640,"context_line":"                        self._destroy_build_request(context, instance)"},{"line_number":641,"context_line":"                    except exception.BuildRequestNotFound:"},{"line_number":642,"context_line":"                        pass"},{"line_number":643,"context_line":"                self._cleanup_when_reschedule_fails("},{"line_number":644,"context_line":"                    context, instance, exc, legacy_request_spec,"},{"line_number":645,"context_line":"                    requested_networks)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_82d83d7f","line":642,"range":{"start_line":635,"start_character":16,"end_line":642,"end_character":28},"updated":"2019-09-23 15:25:44.000000000","message":"This is non-reschedule cells v1 compat code.","commit_id":"dec331fbecf87282c5eaeb9d599ca7b336f96fb3"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"db5ab5341f5f5e1f4cc8eee676281e20c78fea9f","unresolved":false,"context_lines":[{"line_number":739,"context_line":"            # This is populated in scheduler_utils.populate_retry"},{"line_number":740,"context_line":"            num_attempts \u003d local_filter_props.get(\u0027retry\u0027,"},{"line_number":741,"context_line":"                                                  {}).get(\u0027num_attempts\u0027, 1)"},{"line_number":742,"context_line":"            if num_attempts \u003c\u003d 1:"},{"line_number":743,"context_line":"                # If this is a reschedule the instance is already mapped to"},{"line_number":744,"context_line":"                # this cell and the BuildRequest is already deleted so ignore"},{"line_number":745,"context_line":"                # the logic below."},{"line_number":746,"context_line":"                inst_mapping \u003d self._populate_instance_mapping(context,"},{"line_number":747,"context_line":"                                                               instance,"},{"line_number":748,"context_line":"                                                               host)"},{"line_number":749,"context_line":"                try:"},{"line_number":750,"context_line":"                    self._destroy_build_request(context, instance)"},{"line_number":751,"context_line":"                except exception.BuildRequestNotFound:"},{"line_number":752,"context_line":"                    # This indicates an instance delete has been requested in"},{"line_number":753,"context_line":"                    # the API. Stop the build, cleanup the instance_mapping and"},{"line_number":754,"context_line":"                    # potentially the block_device_mappings"},{"line_number":755,"context_line":"                    # TODO(alaski): Handle block_device_mapping cleanup"},{"line_number":756,"context_line":"                    if inst_mapping:"},{"line_number":757,"context_line":"                        inst_mapping.destroy()"},{"line_number":758,"context_line":"                    return"},{"line_number":759,"context_line":"            else:"},{"line_number":760,"context_line":"                # NOTE(lyarwood): If this is a reschedule then recreate any"},{"line_number":761,"context_line":"                # attachments that were previously removed when cleaning up"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_42e24531","line":758,"range":{"start_line":742,"start_character":12,"end_line":758,"end_character":26},"updated":"2019-09-23 15:25:44.000000000","message":"Same.","commit_id":"dec331fbecf87282c5eaeb9d599ca7b336f96fb3"}]}
