)]}'
{"kuryr_kubernetes/cni/binding/sriov.py":[{"author":{"_account_id":13692,"name":"Roman Dobosz","email":"gryf73@gmail.com","username":"gryf"},"change_message_id":"94c73fe5fad4b147a12c8bfaecc9d4de082295de","unresolved":false,"context_lines":[{"line_number":381,"context_line":"            LOG.exception(\"Unable to set vlan for VF %s on pf %s\","},{"line_number":382,"context_line":"                          vf_index, pf)"},{"line_number":383,"context_line":"            raise"},{"line_number":384,"context_line":""},{"line_number":385,"context_line":"    def is_alive(self):"},{"line_number":386,"context_line":"        bridge_name \u003d CONF.neutron_defaults.ovs_bridge"},{"line_number":387,"context_line":"        try:"},{"line_number":388,"context_line":"            with b_base.get_ipdb() as h_ipdb:"},{"line_number":389,"context_line":"                h_ipdb.interfaces[bridge_name]"},{"line_number":390,"context_line":"            return True"},{"line_number":391,"context_line":"        except Exception:"},{"line_number":392,"context_line":"            LOG.warning(\"Default OVS bridge %s does not exist on \""},{"line_number":393,"context_line":"                        \"the host.\", bridge_name)"},{"line_number":394,"context_line":"            return False"},{"line_number":395,"context_line":""},{"line_number":396,"context_line":"    def _get_device_pf_mapping(self):"},{"line_number":397,"context_line":"        \"\"\"Return a mapping in format {\u003cphysnet_name\u003e:[\u003cpf_name\u003e, ...]}\"\"\""}],"source_content_type":"text/x-python","patch_set":1,"id":"1fa4df85_3125f9ab","side":"PARENT","line":394,"range":{"start_line":384,"start_character":0,"end_line":394,"end_character":24},"updated":"2020-03-04 07:51:33.000000000","message":"Instead of removing entire is_alive method maybe a better idea is to figure out what exactly we could health check in case of SRIOV binding?\n\nAlso, in case of creating connection with this driver and report_health set to true-ish, it\u0027ll be fatal.","commit_id":"b0ec3df2d067e4de5a506b1904f70f9de63e2482"},{"author":{"_account_id":24604,"name":"Danil Golov","email":"d.golov@samsung.com","username":"d.golov"},"change_message_id":"f88fc8c10a7be53dcd2df5a4d381748c6d002038","unresolved":false,"context_lines":[{"line_number":381,"context_line":"            LOG.exception(\"Unable to set vlan for VF %s on pf %s\","},{"line_number":382,"context_line":"                          vf_index, pf)"},{"line_number":383,"context_line":"            raise"},{"line_number":384,"context_line":""},{"line_number":385,"context_line":"    def is_alive(self):"},{"line_number":386,"context_line":"        bridge_name \u003d CONF.neutron_defaults.ovs_bridge"},{"line_number":387,"context_line":"        try:"},{"line_number":388,"context_line":"            with b_base.get_ipdb() as h_ipdb:"},{"line_number":389,"context_line":"                h_ipdb.interfaces[bridge_name]"},{"line_number":390,"context_line":"            return True"},{"line_number":391,"context_line":"        except Exception:"},{"line_number":392,"context_line":"            LOG.warning(\"Default OVS bridge %s does not exist on \""},{"line_number":393,"context_line":"                        \"the host.\", bridge_name)"},{"line_number":394,"context_line":"            return False"},{"line_number":395,"context_line":""},{"line_number":396,"context_line":"    def _get_device_pf_mapping(self):"},{"line_number":397,"context_line":"        \"\"\"Return a mapping in format {\u003cphysnet_name\u003e:[\u003cpf_name\u003e, ...]}\"\"\""}],"source_content_type":"text/x-python","patch_set":1,"id":"1fa4df85_b22a3029","side":"PARENT","line":394,"range":{"start_line":384,"start_character":0,"end_line":394,"end_character":24},"in_reply_to":"1fa4df85_2a256e5c","updated":"2020-03-05 13:45:24.000000000","message":"\u003e Anyway. If you remove this method from driver class, while connection will demand health monitoring, connection will fail with the traceback\n\nTrue, good remark","commit_id":"b0ec3df2d067e4de5a506b1904f70f9de63e2482"},{"author":{"_account_id":14570,"name":"Ashish Billore","email":"ash.billore@samsung.com","username":"ashish.billore"},"change_message_id":"c51e2d3bbf537340709e9281feb654b976b2ebcc","unresolved":false,"context_lines":[{"line_number":381,"context_line":"            LOG.exception(\"Unable to set vlan for VF %s on pf %s\","},{"line_number":382,"context_line":"                          vf_index, pf)"},{"line_number":383,"context_line":"            raise"},{"line_number":384,"context_line":""},{"line_number":385,"context_line":"    def is_alive(self):"},{"line_number":386,"context_line":"        bridge_name \u003d CONF.neutron_defaults.ovs_bridge"},{"line_number":387,"context_line":"        try:"},{"line_number":388,"context_line":"            with b_base.get_ipdb() as h_ipdb:"},{"line_number":389,"context_line":"                h_ipdb.interfaces[bridge_name]"},{"line_number":390,"context_line":"            return True"},{"line_number":391,"context_line":"        except Exception:"},{"line_number":392,"context_line":"            LOG.warning(\"Default OVS bridge %s does not exist on \""},{"line_number":393,"context_line":"                        \"the host.\", bridge_name)"},{"line_number":394,"context_line":"            return False"},{"line_number":395,"context_line":""},{"line_number":396,"context_line":"    def _get_device_pf_mapping(self):"},{"line_number":397,"context_line":"        \"\"\"Return a mapping in format {\u003cphysnet_name\u003e:[\u003cpf_name\u003e, ...]}\"\"\""}],"source_content_type":"text/x-python","patch_set":1,"id":"1fa4df85_b1d569e7","side":"PARENT","line":394,"range":{"start_line":384,"start_character":0,"end_line":394,"end_character":24},"in_reply_to":"1fa4df85_3125f9ab","updated":"2020-03-04 08:40:34.000000000","message":"\u003e Instead of removing entire is_alive method maybe a better idea is\n \u003e to figure out what exactly we could health check in case of SRIOV\n \u003e binding?\n \n\u003d\u003d\u003e Do you have any suggestions what can be checked here for SRIOV?\nBTW, It seems to be common in drivers like: BridgeDriver, DpdkDriver, VlanDriver, MacvlanDriver\nto exclude is_alive() when there is nothing in particular to check on very connect request.\n\n \u003e Also, in case of creating connection with this driver and\n \u003e report_health set to true-ish, it\u0027ll be fatal.","commit_id":"b0ec3df2d067e4de5a506b1904f70f9de63e2482"},{"author":{"_account_id":13692,"name":"Roman Dobosz","email":"gryf73@gmail.com","username":"gryf"},"change_message_id":"d8c6bbe754a0ab335fd3014356ecaaad1076b1c6","unresolved":false,"context_lines":[{"line_number":381,"context_line":"            LOG.exception(\"Unable to set vlan for VF %s on pf %s\","},{"line_number":382,"context_line":"                          vf_index, pf)"},{"line_number":383,"context_line":"            raise"},{"line_number":384,"context_line":""},{"line_number":385,"context_line":"    def is_alive(self):"},{"line_number":386,"context_line":"        bridge_name \u003d CONF.neutron_defaults.ovs_bridge"},{"line_number":387,"context_line":"        try:"},{"line_number":388,"context_line":"            with b_base.get_ipdb() as h_ipdb:"},{"line_number":389,"context_line":"                h_ipdb.interfaces[bridge_name]"},{"line_number":390,"context_line":"            return True"},{"line_number":391,"context_line":"        except Exception:"},{"line_number":392,"context_line":"            LOG.warning(\"Default OVS bridge %s does not exist on \""},{"line_number":393,"context_line":"                        \"the host.\", bridge_name)"},{"line_number":394,"context_line":"            return False"},{"line_number":395,"context_line":""},{"line_number":396,"context_line":"    def _get_device_pf_mapping(self):"},{"line_number":397,"context_line":"        \"\"\"Return a mapping in format {\u003cphysnet_name\u003e:[\u003cpf_name\u003e, ...]}\"\"\""}],"source_content_type":"text/x-python","patch_set":1,"id":"1fa4df85_2a256e5c","side":"PARENT","line":394,"range":{"start_line":384,"start_character":0,"end_line":394,"end_character":24},"in_reply_to":"1fa4df85_597a0af1","updated":"2020-03-05 08:40:38.000000000","message":"Anyway. If you remove this method from driver class, while connection will demand health monitoring, connection will fail with the traceback. So, if there is nothing to be check against in case of this driver (and others aswell), than simply:\n\n  def is_alive(self):\n      return True\n\nshould do the trick.","commit_id":"b0ec3df2d067e4de5a506b1904f70f9de63e2482"},{"author":{"_account_id":14570,"name":"Ashish Billore","email":"ash.billore@samsung.com","username":"ashish.billore"},"change_message_id":"8cbfa99451d8a66012328da2778b60e0e2c28654","unresolved":false,"context_lines":[{"line_number":381,"context_line":"            LOG.exception(\"Unable to set vlan for VF %s on pf %s\","},{"line_number":382,"context_line":"                          vf_index, pf)"},{"line_number":383,"context_line":"            raise"},{"line_number":384,"context_line":""},{"line_number":385,"context_line":"    def is_alive(self):"},{"line_number":386,"context_line":"        bridge_name \u003d CONF.neutron_defaults.ovs_bridge"},{"line_number":387,"context_line":"        try:"},{"line_number":388,"context_line":"            with b_base.get_ipdb() as h_ipdb:"},{"line_number":389,"context_line":"                h_ipdb.interfaces[bridge_name]"},{"line_number":390,"context_line":"            return True"},{"line_number":391,"context_line":"        except Exception:"},{"line_number":392,"context_line":"            LOG.warning(\"Default OVS bridge %s does not exist on \""},{"line_number":393,"context_line":"                        \"the host.\", bridge_name)"},{"line_number":394,"context_line":"            return False"},{"line_number":395,"context_line":""},{"line_number":396,"context_line":"    def _get_device_pf_mapping(self):"},{"line_number":397,"context_line":"        \"\"\"Return a mapping in format {\u003cphysnet_name\u003e:[\u003cpf_name\u003e, ...]}\"\"\""}],"source_content_type":"text/x-python","patch_set":1,"id":"1fa4df85_597a0af1","side":"PARENT","line":394,"range":{"start_line":384,"start_character":0,"end_line":394,"end_character":24},"in_reply_to":"1fa4df85_7d2ca0ab","updated":"2020-03-05 01:53:59.000000000","message":"Right, also we need to keep in thoughts that any unnecessary check will have the overhead of evaluation on every connect request, making kuryr even slower CNI.","commit_id":"b0ec3df2d067e4de5a506b1904f70f9de63e2482"},{"author":{"_account_id":31686,"name":"Alexey Perevalov","email":"alexej.perevalov@gmail.com"},"change_message_id":"4d0db3f9ee1ffb04a3718de8eda6ac4311858201","unresolved":false,"context_lines":[{"line_number":381,"context_line":"            LOG.exception(\"Unable to set vlan for VF %s on pf %s\","},{"line_number":382,"context_line":"                          vf_index, pf)"},{"line_number":383,"context_line":"            raise"},{"line_number":384,"context_line":""},{"line_number":385,"context_line":"    def is_alive(self):"},{"line_number":386,"context_line":"        bridge_name \u003d CONF.neutron_defaults.ovs_bridge"},{"line_number":387,"context_line":"        try:"},{"line_number":388,"context_line":"            with b_base.get_ipdb() as h_ipdb:"},{"line_number":389,"context_line":"                h_ipdb.interfaces[bridge_name]"},{"line_number":390,"context_line":"            return True"},{"line_number":391,"context_line":"        except Exception:"},{"line_number":392,"context_line":"            LOG.warning(\"Default OVS bridge %s does not exist on \""},{"line_number":393,"context_line":"                        \"the host.\", bridge_name)"},{"line_number":394,"context_line":"            return False"},{"line_number":395,"context_line":""},{"line_number":396,"context_line":"    def _get_device_pf_mapping(self):"},{"line_number":397,"context_line":"        \"\"\"Return a mapping in format {\u003cphysnet_name\u003e:[\u003cpf_name\u003e, ...]}\"\"\""}],"source_content_type":"text/x-python","patch_set":1,"id":"1fa4df85_7d2ca0ab","side":"PARENT","line":394,"range":{"start_line":384,"start_character":0,"end_line":394,"end_character":24},"in_reply_to":"1fa4df85_b1d569e7","updated":"2020-03-04 12:38:01.000000000","message":"Realy it\u0027s not so clear what do we need to check here, controller\u0027s driver already checks quantity. Here we could check permissions ability to move into network namespace, but it\u0027s applicable for another drivers too and to whole kuryr-daemon.","commit_id":"b0ec3df2d067e4de5a506b1904f70f9de63e2482"},{"author":{"_account_id":14570,"name":"Ashish Billore","email":"ash.billore@samsung.com","username":"ashish.billore"},"change_message_id":"3e5179b62afb53c02dbe0e7b4a343942794a87d0","unresolved":false,"context_lines":[{"line_number":381,"context_line":"            LOG.exception(\"Unable to set vlan for VF %s on pf %s\","},{"line_number":382,"context_line":"                          vf_index, pf)"},{"line_number":383,"context_line":"            raise"},{"line_number":384,"context_line":""},{"line_number":385,"context_line":"    def is_alive(self):"},{"line_number":386,"context_line":"        bridge_name \u003d CONF.neutron_defaults.ovs_bridge"},{"line_number":387,"context_line":"        try:"},{"line_number":388,"context_line":"            with b_base.get_ipdb() as h_ipdb:"},{"line_number":389,"context_line":"                h_ipdb.interfaces[bridge_name]"},{"line_number":390,"context_line":"            return True"},{"line_number":391,"context_line":"        except Exception:"},{"line_number":392,"context_line":"            LOG.warning(\"Default OVS bridge %s does not exist on \""},{"line_number":393,"context_line":"                        \"the host.\", bridge_name)"},{"line_number":394,"context_line":"            return False"},{"line_number":395,"context_line":""},{"line_number":396,"context_line":"    def _get_device_pf_mapping(self):"},{"line_number":397,"context_line":"        \"\"\"Return a mapping in format {\u003cphysnet_name\u003e:[\u003cpf_name\u003e, ...]}\"\"\""}],"source_content_type":"text/x-python","patch_set":1,"id":"1fa4df85_dcc6d668","side":"PARENT","line":394,"range":{"start_line":384,"start_character":0,"end_line":394,"end_character":24},"in_reply_to":"1fa4df85_b22a3029","updated":"2020-03-06 01:28:17.000000000","message":"Yes, right. so inherited from HealthHandler with it\u0027s default implementation","commit_id":"b0ec3df2d067e4de5a506b1904f70f9de63e2482"},{"author":{"_account_id":13692,"name":"Roman Dobosz","email":"gryf73@gmail.com","username":"gryf"},"change_message_id":"d98684e5ce927461ab51cee1d7379fb2ac404181","unresolved":false,"context_lines":[{"line_number":34,"context_line":"CONF \u003d cfg.CONF"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"class VIFSriovDriver(health.HealthHandler, b_base.BaseBindingDriver):"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"    def __init__(self):"},{"line_number":40,"context_line":"        self._lock \u003d None"}],"source_content_type":"text/x-python","patch_set":2,"id":"1fa4df85_2ab32e0c","line":37,"range":{"start_line":37,"start_character":20,"end_line":37,"end_character":42},"updated":"2020-03-05 08:46:36.000000000","message":"…or inherit from that class is an option.","commit_id":"0ffc4e741bc9edc2170c87e8d520f1a15399a60e"}]}
