)]}'
{".zuul.yaml":[{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"60ed85816c8c28971ace4a1f41dee5aaa905aa60","unresolved":true,"context_lines":[{"line_number":177,"context_line":"        s-account: false"},{"line_number":178,"context_line":"        s-container: false"},{"line_number":179,"context_line":"        s-object: false"},{"line_number":180,"context_line":"        s-proxy: false"},{"line_number":181,"context_line":"      devstack_local_conf:"},{"line_number":182,"context_line":"        post-config:"},{"line_number":183,"context_line":"          \"/$NEUTRON_CORE_PLUGIN_CONF\":"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"e28586f4_02caa512","line":180,"updated":"2023-09-01 12:13:11.000000000","message":"maybe it shouldn\u0027t be in the same change from here, but OK.","commit_id":"ef3423f361e1bd9d527886d79c8aa46271fa2183"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"a306540a8cf302968a264b020356691cfd4757e4","unresolved":false,"context_lines":[{"line_number":177,"context_line":"        s-account: false"},{"line_number":178,"context_line":"        s-container: false"},{"line_number":179,"context_line":"        s-object: false"},{"line_number":180,"context_line":"        s-proxy: false"},{"line_number":181,"context_line":"      devstack_local_conf:"},{"line_number":182,"context_line":"        post-config:"},{"line_number":183,"context_line":"          \"/$NEUTRON_CORE_PLUGIN_CONF\":"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"ff6f1f27_d1129ce7","line":180,"in_reply_to":"e28586f4_02caa512","updated":"2023-09-01 15:43:48.000000000","message":"Ack","commit_id":"ef3423f361e1bd9d527886d79c8aa46271fa2183"},{"author":{"_account_id":34860,"name":"Amit Uniyal","email":"auniyal@redhat.com","username":"auniyal"},"change_message_id":"475acf8fd28152b4d85f8692a63434254f653616","unresolved":false,"context_lines":[{"line_number":172,"context_line":"        c-api: false"},{"line_number":173,"context_line":"        c-bak: false"},{"line_number":174,"context_line":"        c-sch: false"},{"line_number":175,"context_line":"        c-vol: false"},{"line_number":176,"context_line":"        # we also do not need swift in this job so disable it for speed"},{"line_number":177,"context_line":"        s-account: false"},{"line_number":178,"context_line":"        s-container: false"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"820b38ad_f4430127","line":175,"updated":"2023-09-01 16:05:57.000000000","message":"++","commit_id":"1643c8ebfaaae81017e4e7ff3ae25a32a0474cf1"}],"/COMMIT_MSG":[{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"60ed85816c8c28971ace4a1f41dee5aaa905aa60","unresolved":true,"context_lines":[{"line_number":4,"context_line":"Commit:     Sean Mooney \u003cwork@seanmooney.info\u003e"},{"line_number":5,"context_line":"CommitDate: 2023-09-01 12:51:58 +0100"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"only attempt to clean up dangeling bdm if cinder is installed"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This change ensure we only try to clean up dangeling bdms if"},{"line_number":10,"context_line":"cinder is installed. It also modifies the nova-ovs-hybrid-plug"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"6998a964_534ad35d","line":7,"range":{"start_line":7,"start_character":25,"end_line":7,"end_character":34},"updated":"2023-09-01 12:13:11.000000000","message":"nit: dangling","commit_id":"ef3423f361e1bd9d527886d79c8aa46271fa2183"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"df7f271ed3d4baec0f65090ef8025c7f2c497549","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Sean Mooney \u003cwork@seanmooney.info\u003e"},{"line_number":5,"context_line":"CommitDate: 2023-09-01 12:51:58 +0100"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"only attempt to clean up dangeling bdm if cinder is installed"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This change ensure we only try to clean up dangeling bdms if"},{"line_number":10,"context_line":"cinder is installed. It also modifies the nova-ovs-hybrid-plug"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"ab0294f4_a8f10ca0","line":7,"range":{"start_line":7,"start_character":25,"end_line":7,"end_character":34},"in_reply_to":"6998a964_534ad35d","updated":"2023-09-01 12:50:56.000000000","message":"Done","commit_id":"ef3423f361e1bd9d527886d79c8aa46271fa2183"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"60ed85816c8c28971ace4a1f41dee5aaa905aa60","unresolved":true,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"only attempt to clean up dangeling bdm if cinder is installed"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This change ensure we only try to clean up dangeling bdms if"},{"line_number":10,"context_line":"cinder is installed. It also modifies the nova-ovs-hybrid-plug"},{"line_number":11,"context_line":"job to disable cinder and swift to ensure we test for this going"},{"line_number":12,"context_line":"forward."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"89c22ab5_3ddecb07","line":9,"range":{"start_line":9,"start_character":43,"end_line":9,"end_character":52},"updated":"2023-09-01 12:13:11.000000000","message":"dangling","commit_id":"ef3423f361e1bd9d527886d79c8aa46271fa2183"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"df7f271ed3d4baec0f65090ef8025c7f2c497549","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"only attempt to clean up dangeling bdm if cinder is installed"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This change ensure we only try to clean up dangeling bdms if"},{"line_number":10,"context_line":"cinder is installed. It also modifies the nova-ovs-hybrid-plug"},{"line_number":11,"context_line":"job to disable cinder and swift to ensure we test for this going"},{"line_number":12,"context_line":"forward."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"2d44b877_8ee471b6","line":9,"range":{"start_line":9,"start_character":43,"end_line":9,"end_character":52},"in_reply_to":"89c22ab5_3ddecb07","updated":"2023-09-01 12:50:56.000000000","message":"Done","commit_id":"ef3423f361e1bd9d527886d79c8aa46271fa2183"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"ba7570d864c800406435604b0a99eafd8eb551ab","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"3441f70c_0c60d755","updated":"2023-09-01 12:58:06.000000000","message":"I\u0027d be afraid if we were changing all the Cinder calls to use this helper method just before RC1, but no, it\u0027s just for the moment used by the needed method.\n\nLGTM.","commit_id":"481517881c7f81c988b4f0ebcaff83f56464a5e7"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"8ffab5abee34e06372fb5e51b3ca47b84e85b96f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"70e86ea2_d12c4753","updated":"2023-09-01 16:23:30.000000000","message":"Yep, looks good","commit_id":"1643c8ebfaaae81017e4e7ff3ae25a32a0474cf1"},{"author":{"_account_id":34860,"name":"Amit Uniyal","email":"auniyal@redhat.com","username":"auniyal"},"change_message_id":"475acf8fd28152b4d85f8692a63434254f653616","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"cd50aeb8_7c493b4d","updated":"2023-09-01 16:05:57.000000000","message":"lgtm, thanks Sean.","commit_id":"1643c8ebfaaae81017e4e7ff3ae25a32a0474cf1"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"2db8fc18544f269cd7cb33f3fbb587a53faa7831","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"ad00819e_a09daf88","updated":"2023-09-01 15:51:17.000000000","message":"seems good to me","commit_id":"1643c8ebfaaae81017e4e7ff3ae25a32a0474cf1"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"6fbb8d175704a2222fbc780fe6371b2bea6299da","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"95faaa24_db37853c","updated":"2023-09-01 16:57:11.000000000","message":"Previously approved, we just removed the job config tweak which was breaking to a separate patch. Thanks Amit!","commit_id":"2bd80da0ff9ff5284a02ca5daba7c472559894c9"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"682aa5b66c7fb0c02cb35f4bfb6329b935f30738","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"01a3db39_a319d24e","updated":"2023-09-01 17:04:15.000000000","message":"Previously approved, we just removed the job config tweak which was breaking to a separate patch. Thanks Amit!","commit_id":"68b2131d811c935af60eb6f563f4552d7287e3a8"}],"nova/compute/manager.py":[{"author":{"_account_id":34860,"name":"Amit Uniyal","email":"auniyal@redhat.com","username":"auniyal"},"change_message_id":"87331e3719ff670cb040997c74473abde48ebb1d","unresolved":true,"context_lines":[{"line_number":4185,"context_line":""},{"line_number":4186,"context_line":"        :param context: The nova request context."},{"line_number":4187,"context_line":"        :param instance: instance object."},{"line_number":4188,"context_line":"        :param instance: BlockDeviceMappingList list object."},{"line_number":4189,"context_line":"        \"\"\""},{"line_number":4190,"context_line":"        # if cidner is not deploy we never need to check for"},{"line_number":4191,"context_line":"        # attachments as there cannot be dangling bdms."}],"source_content_type":"text/x-python","patch_set":2,"id":"7f00dcca_e77d6b9c","line":4188,"range":{"start_line":4188,"start_character":15,"end_line":4188,"end_character":23},"updated":"2023-09-01 11:54:19.000000000","message":"I missed this earlier,\nplease update to \"bdms\"","commit_id":"ef7e78378ea5877b8219513c424cea41840ae208"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"4ccf5210cbee8e81b96d78ac719da91b96c260bc","unresolved":false,"context_lines":[{"line_number":4185,"context_line":""},{"line_number":4186,"context_line":"        :param context: The nova request context."},{"line_number":4187,"context_line":"        :param instance: instance object."},{"line_number":4188,"context_line":"        :param instance: BlockDeviceMappingList list object."},{"line_number":4189,"context_line":"        \"\"\""},{"line_number":4190,"context_line":"        # if cidner is not deploy we never need to check for"},{"line_number":4191,"context_line":"        # attachments as there cannot be dangling bdms."}],"source_content_type":"text/x-python","patch_set":2,"id":"31d83b78_0db82d3e","line":4188,"range":{"start_line":4188,"start_character":15,"end_line":4188,"end_character":23},"in_reply_to":"7f00dcca_e77d6b9c","updated":"2023-09-01 12:33:54.000000000","message":"Done","commit_id":"ef7e78378ea5877b8219513c424cea41840ae208"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"60ed85816c8c28971ace4a1f41dee5aaa905aa60","unresolved":true,"context_lines":[{"line_number":4187,"context_line":"        :param instance: instance object."},{"line_number":4188,"context_line":"        :param instance: BlockDeviceMappingList list object."},{"line_number":4189,"context_line":"        \"\"\""},{"line_number":4190,"context_line":"        # if cidner is not deployed we never need to check for"},{"line_number":4191,"context_line":"        # attachments as there cannot be dangling bdms."},{"line_number":4192,"context_line":"        if not cinder.has_cinder(context):"},{"line_number":4193,"context_line":"            LOG.debug("}],"source_content_type":"text/x-python","patch_set":3,"id":"bf38be50_9df96b6b","line":4190,"range":{"start_line":4190,"start_character":13,"end_line":4190,"end_character":19},"updated":"2023-09-01 12:13:11.000000000","message":"nit: cinder","commit_id":"ef3423f361e1bd9d527886d79c8aa46271fa2183"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"4d4ec0523f4bf77b02ca4c15e1b22b87dc1b8aa7","unresolved":false,"context_lines":[{"line_number":4187,"context_line":"        :param instance: instance object."},{"line_number":4188,"context_line":"        :param instance: BlockDeviceMappingList list object."},{"line_number":4189,"context_line":"        \"\"\""},{"line_number":4190,"context_line":"        # if cidner is not deployed we never need to check for"},{"line_number":4191,"context_line":"        # attachments as there cannot be dangling bdms."},{"line_number":4192,"context_line":"        if not cinder.has_cinder(context):"},{"line_number":4193,"context_line":"            LOG.debug("}],"source_content_type":"text/x-python","patch_set":3,"id":"29b5f36a_be60731d","line":4190,"range":{"start_line":4190,"start_character":13,"end_line":4190,"end_character":19},"in_reply_to":"bf38be50_9df96b6b","updated":"2023-09-01 12:49:31.000000000","message":"Done","commit_id":"ef3423f361e1bd9d527886d79c8aa46271fa2183"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"cc0f0c3fcf02e95822d08f6bb9db044e30cd2395","unresolved":true,"context_lines":[{"line_number":4193,"context_line":"            LOG.debug("},{"line_number":4194,"context_line":"                \"Cinder is not deployed, skipping deletion of \""},{"line_number":4195,"context_line":"                \"dangling volume attachments.\", instance\u003dinstance"},{"line_number":4196,"context_line":"            )"},{"line_number":4197,"context_line":"            return"},{"line_number":4198,"context_line":""},{"line_number":4199,"context_line":"        # attachments present in nova DB, ones nova knows about"}],"source_content_type":"text/x-python","patch_set":4,"id":"ea24b93f_bf5b9c99","line":4196,"updated":"2023-09-01 14:19:10.000000000","message":"This dangling paren makes me sad. It\u0027s just wasting vertical space. Can\u0027t we put that at the end of the above line? The LOG. line doesn\u0027t even need to break for this either, saving another.","commit_id":"481517881c7f81c988b4f0ebcaff83f56464a5e7"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"a306540a8cf302968a264b020356691cfd4757e4","unresolved":false,"context_lines":[{"line_number":4193,"context_line":"            LOG.debug("},{"line_number":4194,"context_line":"                \"Cinder is not deployed, skipping deletion of \""},{"line_number":4195,"context_line":"                \"dangling volume attachments.\", instance\u003dinstance"},{"line_number":4196,"context_line":"            )"},{"line_number":4197,"context_line":"            return"},{"line_number":4198,"context_line":""},{"line_number":4199,"context_line":"        # attachments present in nova DB, ones nova knows about"}],"source_content_type":"text/x-python","patch_set":4,"id":"f9345589_21718182","line":4196,"in_reply_to":"ea24b93f_bf5b9c99","updated":"2023-09-01 15:43:48.000000000","message":"Ack","commit_id":"481517881c7f81c988b4f0ebcaff83f56464a5e7"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"cc0f0c3fcf02e95822d08f6bb9db044e30cd2395","unresolved":true,"context_lines":[{"line_number":4195,"context_line":"                \"dangling volume attachments.\", instance\u003dinstance"},{"line_number":4196,"context_line":"            )"},{"line_number":4197,"context_line":"            return"},{"line_number":4198,"context_line":""},{"line_number":4199,"context_line":"        # attachments present in nova DB, ones nova knows about"},{"line_number":4200,"context_line":"        nova_attachments \u003d []"},{"line_number":4201,"context_line":"        bdms_to_delete \u003d []"}],"source_content_type":"text/x-python","patch_set":4,"id":"1eaa96c4_0bc96b4f","line":4198,"updated":"2023-09-01 14:19:10.000000000","message":"So this will log on every reboot for every instance for anyone without cinder. That seems bad to me, Can we move the log below the loop over BDMs and only log it if we found *any* volume BDMs? We can skip the stale attachment check based on whether or not we have a cinder, but we probably shouldn\u0027t log if this instance has no volume BDMs and there\u0027s no cinder.","commit_id":"481517881c7f81c988b4f0ebcaff83f56464a5e7"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"2db8fc18544f269cd7cb33f3fbb587a53faa7831","unresolved":false,"context_lines":[{"line_number":4195,"context_line":"                \"dangling volume attachments.\", instance\u003dinstance"},{"line_number":4196,"context_line":"            )"},{"line_number":4197,"context_line":"            return"},{"line_number":4198,"context_line":""},{"line_number":4199,"context_line":"        # attachments present in nova DB, ones nova knows about"},{"line_number":4200,"context_line":"        nova_attachments \u003d []"},{"line_number":4201,"context_line":"        bdms_to_delete \u003d []"}],"source_content_type":"text/x-python","patch_set":4,"id":"d951c648_4ef2c865","line":4198,"in_reply_to":"1eaa96c4_0bc96b4f","updated":"2023-09-01 15:51:17.000000000","message":"Done","commit_id":"481517881c7f81c988b4f0ebcaff83f56464a5e7"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"fe560a5a41db801a0ef2af273587aaf1aceb6aab","unresolved":true,"context_lines":[{"line_number":4217,"context_line":"                    bdms_to_delete.append(bdm)"},{"line_number":4218,"context_line":"                else:"},{"line_number":4219,"context_line":"                    nova_attachments.append(bdm.attachment_id)"},{"line_number":4220,"context_line":""},{"line_number":4221,"context_line":"        cinder_attachments \u003d [each[\u0027id\u0027] for each in cinder_attachments]"},{"line_number":4222,"context_line":""},{"line_number":4223,"context_line":"        if len(set(cinder_attachments) - set(nova_attachments)):"}],"source_content_type":"text/x-python","patch_set":6,"id":"59e3fe7d_8d846a1c","line":4220,"updated":"2023-09-01 15:46:36.000000000","message":"1) i tried adding \n\n```\nif len(bdms_to_delete) \u003d\u003d 0:\n            return\n```\n\nhere but then that prevent calling","commit_id":"1643c8ebfaaae81017e4e7ff3ae25a32a0474cf1"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"8ffab5abee34e06372fb5e51b3ca47b84e85b96f","unresolved":true,"context_lines":[{"line_number":4217,"context_line":"                    bdms_to_delete.append(bdm)"},{"line_number":4218,"context_line":"                else:"},{"line_number":4219,"context_line":"                    nova_attachments.append(bdm.attachment_id)"},{"line_number":4220,"context_line":""},{"line_number":4221,"context_line":"        cinder_attachments \u003d [each[\u0027id\u0027] for each in cinder_attachments]"},{"line_number":4222,"context_line":""},{"line_number":4223,"context_line":"        if len(set(cinder_attachments) - set(nova_attachments)):"}],"source_content_type":"text/x-python","patch_set":6,"id":"60ec766e_dd027351","line":4220,"in_reply_to":"59e3fe7d_8d846a1c","updated":"2023-09-01 16:23:30.000000000","message":"Yeah we don\u0027t want to do that after all, because of the loop below.","commit_id":"1643c8ebfaaae81017e4e7ff3ae25a32a0474cf1"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"fe560a5a41db801a0ef2af273587aaf1aceb6aab","unresolved":true,"context_lines":[{"line_number":4224,"context_line":"            LOG.info("},{"line_number":4225,"context_line":"                \"Removing stale volume attachments of instance from \""},{"line_number":4226,"context_line":"                \"Cinder\", instance\u003dinstance)"},{"line_number":4227,"context_line":"        for each_attach in set(cinder_attachments) - set(nova_attachments):"},{"line_number":4228,"context_line":"            # delete only cinder known attachments, from cinder DB."},{"line_number":4229,"context_line":"            LOG.debug("},{"line_number":4230,"context_line":"                f\"Removing attachment \u0027{each_attach}\u0027\", instance\u003dinstance)"}],"source_content_type":"text/x-python","patch_set":6,"id":"a4db5657_a19e20ab","line":4227,"updated":"2023-09-01 15:46:36.000000000","message":"2) thiis loop\n\nsince even if we dont have bdm to clean up we are also cleaning up  stale attachments.","commit_id":"1643c8ebfaaae81017e4e7ff3ae25a32a0474cf1"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"2db8fc18544f269cd7cb33f3fbb587a53faa7831","unresolved":true,"context_lines":[{"line_number":4224,"context_line":"            LOG.info("},{"line_number":4225,"context_line":"                \"Removing stale volume attachments of instance from \""},{"line_number":4226,"context_line":"                \"Cinder\", instance\u003dinstance)"},{"line_number":4227,"context_line":"        for each_attach in set(cinder_attachments) - set(nova_attachments):"},{"line_number":4228,"context_line":"            # delete only cinder known attachments, from cinder DB."},{"line_number":4229,"context_line":"            LOG.debug("},{"line_number":4230,"context_line":"                f\"Removing attachment \u0027{each_attach}\u0027\", instance\u003dinstance)"}],"source_content_type":"text/x-python","patch_set":6,"id":"9dd3ef71_da1bda45","line":4227,"in_reply_to":"a4db5657_a19e20ab","updated":"2023-09-01 15:51:17.000000000","message":"Ack","commit_id":"1643c8ebfaaae81017e4e7ff3ae25a32a0474cf1"}],"nova/tests/unit/compute/test_compute.py":[{"author":{"_account_id":34860,"name":"Amit Uniyal","email":"auniyal@redhat.com","username":"auniyal"},"change_message_id":"6f188eb8c912df5de03d843dfdf5494b2556aea0","unresolved":true,"context_lines":[{"line_number":3039,"context_line":"    @mock.patch.object(db, \u0027instance_update_and_get_original\u0027)"},{"line_number":3040,"context_line":"    @mock.patch.object(compute_manager.ComputeManager, \u0027_get_power_state\u0027)"},{"line_number":3041,"context_line":"    @mock.patch(\u0027nova.compute.utils.notify_about_instance_action\u0027)"},{"line_number":3042,"context_line":"    def _test_reboot(self, soft, mock_notify_action, mock_get_power,"},{"line_number":3043,"context_line":"                     mock_get_orig, mock_update, mock_notify_usage,"},{"line_number":3044,"context_line":"                     mock_get_blk, mock_get_bdms, mock_del_stale_bdms,"},{"line_number":3045,"context_line":"                     test_delete\u003dFalse, test_unrescue\u003dFalse,"}],"source_content_type":"text/x-python","patch_set":3,"id":"ee1d9b86_6adfdcca","line":3042,"updated":"2023-09-01 12:07:51.000000000","message":"should we add a mock here if cinder down for some other reason\n```\nif cinder_fail:\n     mock_del_stale_bdms.side_effect \u003d cinder_exception.EndpointNotFound(\"err\")\n     or just Exception(\"err\")\n\n\nnew_test_reboot_fail_cinder():\n    _test_reboot(cinder_fail\u003dTrue)\n```","commit_id":"ef3423f361e1bd9d527886d79c8aa46271fa2183"},{"author":{"_account_id":34860,"name":"Amit Uniyal","email":"auniyal@redhat.com","username":"auniyal"},"change_message_id":"abae564b7fc7327b255b08461323a26e156b83dc","unresolved":true,"context_lines":[{"line_number":3039,"context_line":"    @mock.patch.object(db, \u0027instance_update_and_get_original\u0027)"},{"line_number":3040,"context_line":"    @mock.patch.object(compute_manager.ComputeManager, \u0027_get_power_state\u0027)"},{"line_number":3041,"context_line":"    @mock.patch(\u0027nova.compute.utils.notify_about_instance_action\u0027)"},{"line_number":3042,"context_line":"    def _test_reboot(self, soft, mock_notify_action, mock_get_power,"},{"line_number":3043,"context_line":"                     mock_get_orig, mock_update, mock_notify_usage,"},{"line_number":3044,"context_line":"                     mock_get_blk, mock_get_bdms, mock_del_stale_bdms,"},{"line_number":3045,"context_line":"                     test_delete\u003dFalse, test_unrescue\u003dFalse,"}],"source_content_type":"text/x-python","patch_set":3,"id":"e70f8c23_749a4f30","line":3042,"in_reply_to":"bf5ddc3f_c86f5e41","updated":"2023-09-01 14:37:53.000000000","message":"Ack","commit_id":"ef3423f361e1bd9d527886d79c8aa46271fa2183"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"a306540a8cf302968a264b020356691cfd4757e4","unresolved":false,"context_lines":[{"line_number":3039,"context_line":"    @mock.patch.object(db, \u0027instance_update_and_get_original\u0027)"},{"line_number":3040,"context_line":"    @mock.patch.object(compute_manager.ComputeManager, \u0027_get_power_state\u0027)"},{"line_number":3041,"context_line":"    @mock.patch(\u0027nova.compute.utils.notify_about_instance_action\u0027)"},{"line_number":3042,"context_line":"    def _test_reboot(self, soft, mock_notify_action, mock_get_power,"},{"line_number":3043,"context_line":"                     mock_get_orig, mock_update, mock_notify_usage,"},{"line_number":3044,"context_line":"                     mock_get_blk, mock_get_bdms, mock_del_stale_bdms,"},{"line_number":3045,"context_line":"                     test_delete\u003dFalse, test_unrescue\u003dFalse,"}],"source_content_type":"text/x-python","patch_set":3,"id":"37114d36_84607452","line":3042,"in_reply_to":"e70f8c23_749a4f30","updated":"2023-09-01 15:43:48.000000000","message":"Ack","commit_id":"ef3423f361e1bd9d527886d79c8aa46271fa2183"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"4ccf5210cbee8e81b96d78ac719da91b96c260bc","unresolved":true,"context_lines":[{"line_number":3039,"context_line":"    @mock.patch.object(db, \u0027instance_update_and_get_original\u0027)"},{"line_number":3040,"context_line":"    @mock.patch.object(compute_manager.ComputeManager, \u0027_get_power_state\u0027)"},{"line_number":3041,"context_line":"    @mock.patch(\u0027nova.compute.utils.notify_about_instance_action\u0027)"},{"line_number":3042,"context_line":"    def _test_reboot(self, soft, mock_notify_action, mock_get_power,"},{"line_number":3043,"context_line":"                     mock_get_orig, mock_update, mock_notify_usage,"},{"line_number":3044,"context_line":"                     mock_get_blk, mock_get_bdms, mock_del_stale_bdms,"},{"line_number":3045,"context_line":"                     test_delete\u003dFalse, test_unrescue\u003dFalse,"}],"source_content_type":"text/x-python","patch_set":3,"id":"bf5ddc3f_c86f5e41","line":3042,"in_reply_to":"ee1d9b86_6adfdcca","updated":"2023-09-01 12:33:54.000000000","message":"reboot should not fail if cidner is not present.\n\ni am not partcarlly happy with how _delete_dangling_bdms is mocked here\nbug i quickly didnt not see a way to make it work so i dont think making this chagne would be correct.\n\n\nideally we woudl remove the mock of _delete_dangling_bdms and use the cidner fixutre or otherwise make this work more cleanly.\n\n\nwhat ill do instead is add a test case that asserts if cidner is not deployed calling _delete_dangling_bdms does not raise and does not modify the bdms.\n\nunit test should not be looking very deaply into function other then the one they are testing.","commit_id":"ef3423f361e1bd9d527886d79c8aa46271fa2183"},{"author":{"_account_id":34860,"name":"Amit Uniyal","email":"auniyal@redhat.com","username":"auniyal"},"change_message_id":"475acf8fd28152b4d85f8692a63434254f653616","unresolved":false,"context_lines":[{"line_number":1520,"context_line":""},{"line_number":1521,"context_line":"        expected \u003d bdms.obj_to_primitive()"},{"line_number":1522,"context_line":"        self.compute._delete_dangling_bdms(self.context, instance, bdms)"},{"line_number":1523,"context_line":"        self.assertEqual(expected, bdms.obj_to_primitive())"},{"line_number":1524,"context_line":""},{"line_number":1525,"context_line":"    @mock.patch.object("},{"line_number":1526,"context_line":"            cinder.API, \u0027attachment_get_all\u0027,"}],"source_content_type":"text/x-python","patch_set":6,"id":"aaf44680_5d9604f6","line":1523,"updated":"2023-09-01 16:05:57.000000000","message":"bdms.obj_to_primitive() returns a dict format of bdms object \n\nthe reason of this check is, if there was any cinder error/fail, bdms shouldn\u0027t have updated.","commit_id":"1643c8ebfaaae81017e4e7ff3ae25a32a0474cf1"}],"nova/volume/cinder.py":[{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"60ed85816c8c28971ace4a1f41dee5aaa905aa60","unresolved":true,"context_lines":[{"line_number":75,"context_line":"            cinderclient(context)"},{"line_number":76,"context_line":"            _CINDER_AVAILABLE \u003d True"},{"line_number":77,"context_line":"        except keystone_exception.EndpointNotFound:"},{"line_number":78,"context_line":"            _CINDER_AVAILABLE \u003d False"},{"line_number":79,"context_line":"    return _CINDER_AVAILABLE"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"ba38535e_025eddd5","line":78,"updated":"2023-09-01 12:13:11.000000000","message":"we could also have a cinder_client.ClientException exception so IMHO we should support it.","commit_id":"ef3423f361e1bd9d527886d79c8aa46271fa2183"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"4d4ec0523f4bf77b02ca4c15e1b22b87dc1b8aa7","unresolved":false,"context_lines":[{"line_number":75,"context_line":"            cinderclient(context)"},{"line_number":76,"context_line":"            _CINDER_AVAILABLE \u003d True"},{"line_number":77,"context_line":"        except keystone_exception.EndpointNotFound:"},{"line_number":78,"context_line":"            _CINDER_AVAILABLE \u003d False"},{"line_number":79,"context_line":"    return _CINDER_AVAILABLE"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"6b93874e_3a53c0ab","line":78,"in_reply_to":"ba38535e_025eddd5","updated":"2023-09-01 12:49:31.000000000","message":"Done although in that case we want to return True not False so that future calls to cinder can attempet to connect in case it was just a tempory network blip","commit_id":"ef3423f361e1bd9d527886d79c8aa46271fa2183"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"ba7570d864c800406435604b0a99eafd8eb551ab","unresolved":false,"context_lines":[{"line_number":81,"context_line":"            # cinder is available we just can\u0027t connect to it because of"},{"line_number":82,"context_line":"            # a configuration issue or something else we should therefore"},{"line_number":83,"context_line":"            # treat this as a transient error and return True"},{"line_number":84,"context_line":"            _CINDER_AVAILABLE \u003d True"},{"line_number":85,"context_line":"    return _CINDER_AVAILABLE"},{"line_number":86,"context_line":""},{"line_number":87,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"d85d0fc1_29a96731","line":84,"updated":"2023-09-01 12:58:06.000000000","message":"ok with this.","commit_id":"481517881c7f81c988b4f0ebcaff83f56464a5e7"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"09935f22d6edf258e65ab3fe6f8c6ef520482f99","unresolved":true,"context_lines":[{"line_number":69,"context_line":""},{"line_number":70,"context_line":"    :param context: The nova request context."},{"line_number":71,"context_line":"    \"\"\""},{"line_number":72,"context_line":"    global _CINDER_AVAILABLE"},{"line_number":73,"context_line":"    if _CINDER_AVAILABLE is None:"},{"line_number":74,"context_line":"        try:"},{"line_number":75,"context_line":"            cinderclient(context)"}],"source_content_type":"text/x-python","patch_set":5,"id":"794a8445_d328365f","line":72,"updated":"2023-09-01 14:34:55.000000000","message":"Um, isn\u0027t this too broad? One user shows up with no cinder in their catalog and we disable it for everyone forever?","commit_id":"dd9a7c4f6df879757afa62e986bfa46502f9dfaf"}]}
