)]}'
{"nova/compute/api.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"10be4c32275c466f9236993444f589d40c554289","unresolved":false,"context_lines":[{"line_number":134,"context_line":"                # weird"},{"line_number":135,"context_line":"                if vm_state \u003d\u003d vm_states.BUILDING:"},{"line_number":136,"context_line":"                    try:"},{"line_number":137,"context_line":"                        objects.BuildRequest.get_by_instance_uuid("},{"line_number":138,"context_line":"                            instance.uuid)"},{"line_number":139,"context_line":"                        LOG.error(_LE(\u0027Found unexpected build request for \u0027"},{"line_number":140,"context_line":"                                      \u0027instance that is building.\u0027),"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a461143_73ad24e8","line":137,"updated":"2017-02-01 04:16:18.000000000","message":"needs the context arg","commit_id":"e93354c3c6ff7bf72048beb317eab9576775fdca"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"b716d383cb7fe03acec0329f0e8e61a4e307ff78","unresolved":false,"context_lines":[{"line_number":1722,"context_line":"            return False"},{"line_number":1723,"context_line":""},{"line_number":1724,"context_line":"        if deleted:"},{"line_number":1725,"context_line":"            # If we\u0027ve reached this block the successful deletion of the"},{"line_number":1726,"context_line":"            # buildrequest indicates that the build process should be halted by"},{"line_number":1727,"context_line":"            # the conductor."},{"line_number":1728,"context_line":""},{"line_number":1729,"context_line":"            # Since conductor has halted the build process no cleanup of the"},{"line_number":1730,"context_line":"            # instance is necessary, but quotas must still be decremented."},{"line_number":1731,"context_line":"            project_id, user_id \u003d quotas_obj.ids_from_instance("},{"line_number":1732,"context_line":"                context, instance)"},{"line_number":1733,"context_line":"            # This is confusing but actually decrements quota."}],"source_content_type":"text/x-python","patch_set":2,"id":"3a461143_53758861","line":1730,"range":{"start_line":1725,"start_character":12,"end_line":1730,"end_character":35},"updated":"2017-02-01 04:30:08.000000000","message":"I was just reading this comment and I don\u0027t see how \"conductor halts the build process.\" That is, I don\u0027t see how successful deletion of the BuildRequest stops the conductor from doing anything further.\n\nBecause from what I can tell, mriedem is right that if the instance hasn\u0027t been scheduled yet and a delete comes in, it could delete the BuildRequest before conductor creates the instance record in the cell, so there\u0027s a window where the instance will be not found, but then pop up again once conductor creates the instance record.","commit_id":"5b0609b7831e7db9abce508089db0849bd35d96b"}],"nova/conductor/manager.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"de17992e5b1e40b842a908876255a84e49bdd40b","unresolved":false,"context_lines":[{"line_number":906,"context_line":"                    context, instance.uuid)"},{"line_number":907,"context_line":"                with obj_target_cell(instance, cell):"},{"line_number":908,"context_line":"                    instance.create()"},{"line_number":909,"context_line":"            except exception.BuildRequestNotFound:"},{"line_number":910,"context_line":"                # the build request is gone, so I guess we\u0027re done?"},{"line_number":911,"context_line":"                LOG.info(_LI(\u0027While scheduling instance, the build request \u0027"},{"line_number":912,"context_line":"                             \u0027was already deleted.\u0027), instance\u003dinstance)"},{"line_number":913,"context_line":""},{"line_number":914,"context_line":"            # send a state update notification for the initial create to"},{"line_number":915,"context_line":"            # show it going from non-existent to BUILDING"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a461143_00a39650","line":912,"range":{"start_line":909,"start_character":12,"end_line":912,"end_character":72},"updated":"2017-02-01 14:28:16.000000000","message":"While trying to recreate the failure, I probably shouldn\u0027t actually handle this since it might actually fix the bug...","commit_id":"5b0609b7831e7db9abce508089db0849bd35d96b"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"2cf1f9793268501385c5409117149c1b884f58b8","unresolved":false,"context_lines":[{"line_number":906,"context_line":"                    context, instance.uuid)"},{"line_number":907,"context_line":"                with obj_target_cell(instance, cell):"},{"line_number":908,"context_line":"                    instance.create()"},{"line_number":909,"context_line":"            except exception.BuildRequestNotFound:"},{"line_number":910,"context_line":"                # the build request is gone, so I guess we\u0027re done?"},{"line_number":911,"context_line":"                LOG.info(_LI(\u0027While scheduling instance, the build request \u0027"},{"line_number":912,"context_line":"                             \u0027was already deleted.\u0027), instance\u003dinstance)"},{"line_number":913,"context_line":""},{"line_number":914,"context_line":"            # send a state update notification for the initial create to"},{"line_number":915,"context_line":"            # show it going from non-existent to BUILDING"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a461143_3bac4335","line":912,"range":{"start_line":909,"start_character":12,"end_line":912,"end_character":72},"in_reply_to":"3a461143_00a39650","updated":"2017-02-01 14:52:40.000000000","message":"I got a hit on this:\n\nhttp://logs.openstack.org/44/427544/2/check/gate-tempest-dsvm-neutron-multinode-full-ubuntu-xenial-nv/f50a5ee/logs/screen-n-cond.txt#_2017-02-01_04_49_11_702\n\nSo the build request is deleted before we create the instance, but we are able to create the instance here because the build request is stale, as it\u0027s coming from the API and we never refresh it from the DB before this point.","commit_id":"5b0609b7831e7db9abce508089db0849bd35d96b"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"36791b5c52fda7d3306945ffaa144cf6490c7527","unresolved":false,"context_lines":[{"line_number":916,"context_line":"            notifications.send_update_with_states(context, instance, None,"},{"line_number":917,"context_line":"                    vm_states.BUILDING, None, None, service\u003d\"conductor\")"},{"line_number":918,"context_line":""},{"line_number":919,"context_line":"            objects.InstanceAction.action_start("},{"line_number":920,"context_line":"                context, instance.uuid, instance_actions.CREATE,"},{"line_number":921,"context_line":"                want_result\u003dFalse)"},{"line_number":922,"context_line":""},{"line_number":923,"context_line":"            with obj_target_cell(instance, cell):"},{"line_number":924,"context_line":"                instance_bdms \u003d self._create_block_device_mapping("}],"source_content_type":"text/x-python","patch_set":2,"id":"3a461143_3b7363e9","line":921,"range":{"start_line":919,"start_character":12,"end_line":921,"end_character":34},"updated":"2017-02-01 14:54:00.000000000","message":"This blows up if the instance wasn\u0027t created:\n\nhttp://logs.openstack.org/44/427544/2/check/gate-tempest-dsvm-neutron-multinode-full-ubuntu-xenial-nv/f50a5ee/logs/screen-n-cond.txt#_2017-02-01_04_49_11_702","commit_id":"5b0609b7831e7db9abce508089db0849bd35d96b"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"c27a9d0479ae1c2f2c250cc706a276c0b45a4096","unresolved":false,"context_lines":[{"line_number":969,"context_line":"                            bdm.destroy()"},{"line_number":970,"context_line":"                        except exception.ObjectActionError:"},{"line_number":971,"context_line":"                            pass"},{"line_number":972,"context_line":"                return"},{"line_number":973,"context_line":""},{"line_number":974,"context_line":"            # NOTE(danms): Compute RPC expects security group names or ids"},{"line_number":975,"context_line":"            # not objects, so convert this to a list of names until we can"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a461143_a64bba5e","line":972,"updated":"2017-02-01 14:57:16.000000000","message":"Should this return? We\u0027re in a for loop right?","commit_id":"5b0609b7831e7db9abce508089db0849bd35d96b"}]}
