)]}'
{"kuryr_kubernetes/cni/binding/sriov.py":[{"author":{"_account_id":27032,"name":"Maysa de Macedo Souza","email":"maysa.macedo95@gmail.com","username":"maysa"},"change_message_id":"612f676d88e5c89add979a3cf7978ece88946e47","unresolved":false,"context_lines":[{"line_number":68,"context_line":"        physnet \u003d vif.physnet"},{"line_number":69,"context_line":"        resource_name \u003d self._get_resource_by_physnet(physnet)"},{"line_number":70,"context_line":"        driver \u003d self._get_driver_by_res(resource_name)"},{"line_number":71,"context_line":"        if not os.path.exists(\u0027/sys/bus/pci/drivers/{}\u0027.format(driver)):"},{"line_number":72,"context_line":"            raise exceptions.CNIBindingFailure("},{"line_number":73,"context_line":"                \"Module {} is not loaded\".format(driver),"},{"line_number":74,"context_line":"                apply_healthcheck\u003dFalse)"},{"line_number":75,"context_line":"        resource \u003d self._make_resource(resource_name)"},{"line_number":76,"context_line":"        LOG.debug(\"Vif %s will correspond to pci device belonging to \""},{"line_number":77,"context_line":"                  \"resource %s\", vif, resource)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_1f03b413","line":74,"range":{"start_line":71,"start_character":0,"end_line":74,"end_character":40},"updated":"2020-01-30 16:29:39.000000000","message":"As this CNIBindingFailure exception is only raised here, seems it\u0027s used as a way to avoid the CNI restart and break the current execution of this method. I guess there is no need for the apply_healthcheck flag if we simply only log when catching the exception. Unless you plan to use in the future for also affecting the health check.","commit_id":"0e184f6358eb491fb0396577769e07cdb3e811f7"},{"author":{"_account_id":27032,"name":"Maysa de Macedo Souza","email":"maysa.macedo95@gmail.com","username":"maysa"},"change_message_id":"99d79da7c21dae6fc84375d4205831685e307ff8","unresolved":false,"context_lines":[{"line_number":68,"context_line":"        physnet \u003d vif.physnet"},{"line_number":69,"context_line":"        resource_name \u003d self._get_resource_by_physnet(physnet)"},{"line_number":70,"context_line":"        driver \u003d self._get_driver_by_res(resource_name)"},{"line_number":71,"context_line":"        if not os.path.exists(\u0027/sys/bus/pci/drivers/{}\u0027.format(driver)):"},{"line_number":72,"context_line":"            raise exceptions.CNIBindingFailure("},{"line_number":73,"context_line":"                \"Module {} is not loaded\".format(driver),"},{"line_number":74,"context_line":"                apply_healthcheck\u003dFalse)"},{"line_number":75,"context_line":"        resource \u003d self._make_resource(resource_name)"},{"line_number":76,"context_line":"        LOG.debug(\"Vif %s will correspond to pci device belonging to \""},{"line_number":77,"context_line":"                  \"resource %s\", vif, resource)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_282bbc7c","line":74,"range":{"start_line":71,"start_character":0,"end_line":74,"end_character":40},"in_reply_to":"3fa7e38b_1ac66243","updated":"2020-02-03 08:06:20.000000000","message":"Yes, I understand. I agree with your approach in general, but there is not a need to have the apply_healthcheck parameter, as right now it will always be False, cause that exception is only raised here.","commit_id":"0e184f6358eb491fb0396577769e07cdb3e811f7"},{"author":{"_account_id":24604,"name":"Danil Golov","email":"d.golov@samsung.com","username":"d.golov"},"change_message_id":"e709b2d5a722dbc92159aec684cef27c84d3261f","unresolved":false,"context_lines":[{"line_number":68,"context_line":"        physnet \u003d vif.physnet"},{"line_number":69,"context_line":"        resource_name \u003d self._get_resource_by_physnet(physnet)"},{"line_number":70,"context_line":"        driver \u003d self._get_driver_by_res(resource_name)"},{"line_number":71,"context_line":"        if not os.path.exists(\u0027/sys/bus/pci/drivers/{}\u0027.format(driver)):"},{"line_number":72,"context_line":"            raise exceptions.CNIBindingFailure("},{"line_number":73,"context_line":"                \"Module {} is not loaded\".format(driver),"},{"line_number":74,"context_line":"                apply_healthcheck\u003dFalse)"},{"line_number":75,"context_line":"        resource \u003d self._make_resource(resource_name)"},{"line_number":76,"context_line":"        LOG.debug(\"Vif %s will correspond to pci device belonging to \""},{"line_number":77,"context_line":"                  \"resource %s\", vif, resource)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_1ac66243","line":74,"range":{"start_line":71,"start_character":0,"end_line":74,"end_character":40},"in_reply_to":"3fa7e38b_1f03b413","updated":"2020-01-30 16:58:35.000000000","message":"Thanks for comments, Maysa\nThe main idea of this exception was to break the execution of this method and let kuryr-kubernetes send to k8s error code , but without any affect on health check counter.\nWe would like pod to fail, but CNI to remain healthy with ability to compute the future vifs.\nFix me please, if I understand you incorrectly","commit_id":"0e184f6358eb491fb0396577769e07cdb3e811f7"},{"author":{"_account_id":24604,"name":"Danil Golov","email":"d.golov@samsung.com","username":"d.golov"},"change_message_id":"d6643bdb397fe4277837cdbf2bd73311fd711b6f","unresolved":false,"context_lines":[{"line_number":68,"context_line":"        physnet \u003d vif.physnet"},{"line_number":69,"context_line":"        resource_name \u003d self._get_resource_by_physnet(physnet)"},{"line_number":70,"context_line":"        driver \u003d self._get_driver_by_res(resource_name)"},{"line_number":71,"context_line":"        if not os.path.exists(\u0027/sys/bus/pci/drivers/{}\u0027.format(driver)):"},{"line_number":72,"context_line":"            raise exceptions.CNIBindingFailure("},{"line_number":73,"context_line":"                \"Module {} is not loaded\".format(driver),"},{"line_number":74,"context_line":"                apply_healthcheck\u003dFalse)"},{"line_number":75,"context_line":"        resource \u003d self._make_resource(resource_name)"},{"line_number":76,"context_line":"        LOG.debug(\"Vif %s will correspond to pci device belonging to \""},{"line_number":77,"context_line":"                  \"resource %s\", vif, resource)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_fe923afb","line":74,"range":{"start_line":71,"start_character":0,"end_line":74,"end_character":40},"in_reply_to":"3fa7e38b_282bbc7c","updated":"2020-02-03 11:57:47.000000000","message":"Oh, I finally realized your intentions.\nThanks, I fixed everything","commit_id":"0e184f6358eb491fb0396577769e07cdb3e811f7"}],"kuryr_kubernetes/cni/daemon/service.py":[{"author":{"_account_id":27032,"name":"Maysa de Macedo Souza","email":"maysa.macedo95@gmail.com","username":"maysa"},"change_message_id":"99d79da7c21dae6fc84375d4205831685e307ff8","unresolved":false,"context_lines":[{"line_number":85,"context_line":"            LOG.error(\u0027Error when processing addNetwork request\u0027)"},{"line_number":86,"context_line":"            return \u0027\u0027, httplib.GATEWAY_TIMEOUT, self.headers"},{"line_number":87,"context_line":"        except exceptions.CNIBindingFailure as cni_bind_failure:"},{"line_number":88,"context_line":"            if cni_bind_failure.apply_healthcheck:"},{"line_number":89,"context_line":"                self._check_failure()"},{"line_number":90,"context_line":"            LOG.error(\"Error when binding requested vif: %s.\","},{"line_number":91,"context_line":"                      cni_bind_failure)"},{"line_number":92,"context_line":"            return \u0027\u0027, httplib.INTERNAL_SERVER_ERROR, self.headers"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_c86ea8ca","line":89,"range":{"start_line":88,"start_character":0,"end_line":89,"end_character":37},"updated":"2020-02-03 08:06:20.000000000","message":"In case you agree with my suggestion this would get removed, and only the LOG is needed.","commit_id":"0e184f6358eb491fb0396577769e07cdb3e811f7"},{"author":{"_account_id":24604,"name":"Danil Golov","email":"d.golov@samsung.com","username":"d.golov"},"change_message_id":"d6643bdb397fe4277837cdbf2bd73311fd711b6f","unresolved":false,"context_lines":[{"line_number":85,"context_line":"            LOG.error(\u0027Error when processing addNetwork request\u0027)"},{"line_number":86,"context_line":"            return \u0027\u0027, httplib.GATEWAY_TIMEOUT, self.headers"},{"line_number":87,"context_line":"        except exceptions.CNIBindingFailure as cni_bind_failure:"},{"line_number":88,"context_line":"            if cni_bind_failure.apply_healthcheck:"},{"line_number":89,"context_line":"                self._check_failure()"},{"line_number":90,"context_line":"            LOG.error(\"Error when binding requested vif: %s.\","},{"line_number":91,"context_line":"                      cni_bind_failure)"},{"line_number":92,"context_line":"            return \u0027\u0027, httplib.INTERNAL_SERVER_ERROR, self.headers"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_1ef63660","line":89,"range":{"start_line":88,"start_character":0,"end_line":89,"end_character":37},"in_reply_to":"3fa7e38b_c86ea8ca","updated":"2020-02-03 11:57:47.000000000","message":"Thanks, done","commit_id":"0e184f6358eb491fb0396577769e07cdb3e811f7"}],"kuryr_kubernetes/exceptions.py":[{"author":{"_account_id":27032,"name":"Maysa de Macedo Souza","email":"maysa.macedo95@gmail.com","username":"maysa"},"change_message_id":"99d79da7c21dae6fc84375d4205831685e307ff8","unresolved":false,"context_lines":[{"line_number":89,"context_line":"class CNIBindingFailure(Exception):"},{"line_number":90,"context_line":"    \"\"\"Exception indicates a binding/unbinding VIF failure in CNI."},{"line_number":91,"context_line":""},{"line_number":92,"context_line":"    apply_healthcheck indicates if health check should be ignorred"},{"line_number":93,"context_line":"    \"\"\""},{"line_number":94,"context_line":"    def __init__(self, message, apply_healthcheck\u003dTrue):"},{"line_number":95,"context_line":"        super(CNIBindingFailure, self).__init__(message)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_480b9822","line":92,"range":{"start_line":92,"start_character":58,"end_line":92,"end_character":66},"updated":"2020-02-03 08:06:20.000000000","message":"ignored","commit_id":"0e184f6358eb491fb0396577769e07cdb3e811f7"},{"author":{"_account_id":24604,"name":"Danil Golov","email":"d.golov@samsung.com","username":"d.golov"},"change_message_id":"d6643bdb397fe4277837cdbf2bd73311fd711b6f","unresolved":false,"context_lines":[{"line_number":89,"context_line":"class CNIBindingFailure(Exception):"},{"line_number":90,"context_line":"    \"\"\"Exception indicates a binding/unbinding VIF failure in CNI."},{"line_number":91,"context_line":""},{"line_number":92,"context_line":"    apply_healthcheck indicates if health check should be ignorred"},{"line_number":93,"context_line":"    \"\"\""},{"line_number":94,"context_line":"    def __init__(self, message, apply_healthcheck\u003dTrue):"},{"line_number":95,"context_line":"        super(CNIBindingFailure, self).__init__(message)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_de5ade83","line":92,"range":{"start_line":92,"start_character":58,"end_line":92,"end_character":66},"in_reply_to":"3fa7e38b_480b9822","updated":"2020-02-03 11:57:47.000000000","message":"Done","commit_id":"0e184f6358eb491fb0396577769e07cdb3e811f7"}]}
