)]}'
{"neutron_lib/exceptions/qos.py":[{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"a8bfddbd2c08b5044a37780277e28ff75d9f335b","unresolved":true,"context_lines":[{"line_number":69,"context_line":"    message \u003d _(\"Rule %(rule_type)s is not supported by port %(port_id)s\")"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"class QosRuleNotSupportedByNet(e.Conflict):"},{"line_number":73,"context_line":"    message \u003d _(\"Rule %(rule_type)s is not supported \""},{"line_number":74,"context_line":"                \"by network %(network_id)s\")"},{"line_number":75,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"03ca9bf7_5e2e2324","line":72,"range":{"start_line":72,"start_character":6,"end_line":72,"end_character":30},"updated":"2021-02-04 14:07:13.000000000","message":"If you don\u0027t mind, we don\u0027t use abbreviations. This should be \"QosRuleNotSupportedByNetwork\"","commit_id":"c0c4f5cc65243052313a6404e88da202d6d4a81f"},{"author":{"_account_id":32667,"name":"Mamatisa Nurmatov","email":"nurmatov.mamatisa@huawei.com","username":"isabek"},"change_message_id":"4b591e5baeb73d3f9f0044fc691c0eabde0eb747","unresolved":true,"context_lines":[{"line_number":69,"context_line":"    message \u003d _(\"Rule %(rule_type)s is not supported by port %(port_id)s\")"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"class QosRuleNotSupportedByNet(e.Conflict):"},{"line_number":73,"context_line":"    message \u003d _(\"Rule %(rule_type)s is not supported \""},{"line_number":74,"context_line":"                \"by network %(network_id)s\")"},{"line_number":75,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"d6e358f7_19626d8f","line":72,"range":{"start_line":72,"start_character":6,"end_line":72,"end_character":30},"in_reply_to":"03ca9bf7_5e2e2324","updated":"2021-02-04 14:19:26.000000000","message":"Done.","commit_id":"c0c4f5cc65243052313a6404e88da202d6d4a81f"}],"neutron_lib/services/qos/base.py":[{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"ea0e705774ba2ee7e98b6b386406558bc0277072","unresolved":true,"context_lines":[{"line_number":109,"context_line":"        \"\"\""},{"line_number":110,"context_line":"        return True"},{"line_number":111,"context_line":""},{"line_number":112,"context_line":"    def validate_rule_for_network(self, context, rule, network_id):"},{"line_number":113,"context_line":"        \"\"\"Return True/False for valid/invalid."},{"line_number":114,"context_line":""},{"line_number":115,"context_line":"        This is only meant to be used when a rule is compatible"},{"line_number":116,"context_line":"        with some networks but not with others (depending on"},{"line_number":117,"context_line":"        network properties)."},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"        Returns True by default for backwards compatibility."},{"line_number":120,"context_line":"        \"\"\""},{"line_number":121,"context_line":"        return True"},{"line_number":122,"context_line":""},{"line_number":123,"context_line":"    def create_policy(self, context, policy):"},{"line_number":124,"context_line":"        \"\"\"Create policy invocation."}],"source_content_type":"text/x-python","patch_set":2,"id":"7e60ea71_2fe8d108","line":121,"range":{"start_line":112,"start_character":0,"end_line":121,"end_character":19},"updated":"2021-02-04 13:57:29.000000000","message":"Why You need a new method, validate_rule_for_port (tries to) checks network as well:\nhttps://opendev.org/openstack/neutron/src/branch/master/neutron/services/qos/drivers/openvswitch/driver.py#L62\n\nI would check there first","commit_id":"c0c4f5cc65243052313a6404e88da202d6d4a81f"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"0b1a7e8128beac5a0805985a37b378d646ddb54c","unresolved":true,"context_lines":[{"line_number":109,"context_line":"        \"\"\""},{"line_number":110,"context_line":"        return True"},{"line_number":111,"context_line":""},{"line_number":112,"context_line":"    def validate_rule_for_network(self, context, rule, network_id):"},{"line_number":113,"context_line":"        \"\"\"Return True/False for valid/invalid."},{"line_number":114,"context_line":""},{"line_number":115,"context_line":"        This is only meant to be used when a rule is compatible"},{"line_number":116,"context_line":"        with some networks but not with others (depending on"},{"line_number":117,"context_line":"        network properties)."},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"        Returns True by default for backwards compatibility."},{"line_number":120,"context_line":"        \"\"\""},{"line_number":121,"context_line":"        return True"},{"line_number":122,"context_line":""},{"line_number":123,"context_line":"    def create_policy(self, context, policy):"},{"line_number":124,"context_line":"        \"\"\"Create policy invocation."}],"source_content_type":"text/x-python","patch_set":2,"id":"7b2b9559_10c94c60","line":121,"range":{"start_line":112,"start_character":0,"end_line":121,"end_character":19},"in_reply_to":"0455b785_b38d07cc","updated":"2021-02-04 14:20:17.000000000","message":"ok, if there\u0027s no port that perhaps better to not overload the validate_rule_for_port method","commit_id":"c0c4f5cc65243052313a6404e88da202d6d4a81f"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"a8bfddbd2c08b5044a37780277e28ff75d9f335b","unresolved":true,"context_lines":[{"line_number":109,"context_line":"        \"\"\""},{"line_number":110,"context_line":"        return True"},{"line_number":111,"context_line":""},{"line_number":112,"context_line":"    def validate_rule_for_network(self, context, rule, network_id):"},{"line_number":113,"context_line":"        \"\"\"Return True/False for valid/invalid."},{"line_number":114,"context_line":""},{"line_number":115,"context_line":"        This is only meant to be used when a rule is compatible"},{"line_number":116,"context_line":"        with some networks but not with others (depending on"},{"line_number":117,"context_line":"        network properties)."},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"        Returns True by default for backwards compatibility."},{"line_number":120,"context_line":"        \"\"\""},{"line_number":121,"context_line":"        return True"},{"line_number":122,"context_line":""},{"line_number":123,"context_line":"    def create_policy(self, context, policy):"},{"line_number":124,"context_line":"        \"\"\"Create policy invocation."}],"source_content_type":"text/x-python","patch_set":2,"id":"0455b785_b38d07cc","line":121,"range":{"start_line":112,"start_character":0,"end_line":121,"end_character":19},"in_reply_to":"7e60ea71_2fe8d108","updated":"2021-02-04 14:07:13.000000000","message":"I think it makes sense because we need to validate this rule against an empty network (no ports allocated). That\u0027s why \"_validate_update_network_callback\" is passing now this rule.\n\nNOTE (for the neutron patch): BTW, checking the code I realized that we\u0027ll need a \"_validate_CREATE_network_callback\" to be able to reject a VXLAN network with min-BW rules when creating a new network with a QoS policy assigned.","commit_id":"c0c4f5cc65243052313a6404e88da202d6d4a81f"}]}
