)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":21798,"name":"Bernard Cafarelli","email":"bcafarel@redhat.com","username":"bcafarel"},"change_message_id":"516b5493f9020857437d59726be5920ce86c118e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"88af711e_0f124edb","updated":"2022-11-23 16:55:35.000000000","message":"Looks good on the backport in general, indeed Lajos\u0027 point can be an interesting follow-up in master","commit_id":"bb279b3b0515d6c0ef9f4b243ec2cc0c9ac9fdc6"}],"neutron/common/ovn/utils.py":[{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"3d34f48e9b1a8b68698b57e7aeaab32fd75fd0fb","unresolved":true,"context_lines":[{"line_number":645,"context_line":"            constants.PORT_CAP_SWITCHDEV not in capabilities)"},{"line_number":646,"context_line":""},{"line_number":647,"context_line":""},{"line_number":648,"context_line":"def retry(max_\u003dNone):"},{"line_number":649,"context_line":"    def inner(func):"},{"line_number":650,"context_line":"        def wrapper(*args, **kwargs):"},{"line_number":651,"context_line":"            local_max \u003d max_ or ovn_conf.get_ovn_ovsdb_retry_max_interval()"},{"line_number":652,"context_line":"            return tenacity.retry("},{"line_number":653,"context_line":"                wait\u003dtenacity.wait_exponential(max\u003dlocal_max),"},{"line_number":654,"context_line":"                reraise\u003dTrue)(func)(*args, **kwargs)"},{"line_number":655,"context_line":"        return wrapper"},{"line_number":656,"context_line":"    return inner"}],"source_content_type":"text/x-python","patch_set":1,"id":"2dd310f3_30071b64","line":656,"range":{"start_line":648,"start_character":0,"end_line":656,"end_character":16},"updated":"2022-11-23 12:55:16.000000000","message":"couldn\u0027t this be n-lib or in some common place? this ovn folder can frighten people","commit_id":"bb279b3b0515d6c0ef9f4b243ec2cc0c9ac9fdc6"},{"author":{"_account_id":8655,"name":"Jakub Libosvar","email":"libosvar@redhat.com","username":"jlibosva"},"change_message_id":"d1b5177155dc5fff6cde6e8f56b316da1ca695c4","unresolved":true,"context_lines":[{"line_number":645,"context_line":"            constants.PORT_CAP_SWITCHDEV not in capabilities)"},{"line_number":646,"context_line":""},{"line_number":647,"context_line":""},{"line_number":648,"context_line":"def retry(max_\u003dNone):"},{"line_number":649,"context_line":"    def inner(func):"},{"line_number":650,"context_line":"        def wrapper(*args, **kwargs):"},{"line_number":651,"context_line":"            local_max \u003d max_ or ovn_conf.get_ovn_ovsdb_retry_max_interval()"},{"line_number":652,"context_line":"            return tenacity.retry("},{"line_number":653,"context_line":"                wait\u003dtenacity.wait_exponential(max\u003dlocal_max),"},{"line_number":654,"context_line":"                reraise\u003dTrue)(func)(*args, **kwargs)"},{"line_number":655,"context_line":"        return wrapper"},{"line_number":656,"context_line":"    return inner"}],"source_content_type":"text/x-python","patch_set":1,"id":"d37384b5_be9c5d83","line":656,"range":{"start_line":648,"start_character":0,"end_line":656,"end_character":16},"in_reply_to":"263fb001_3fd1967e","updated":"2022-11-23 15:42:15.000000000","message":"I do agree this function can be more generic, currently it\u0027s limited by the OVN specific config option, hence calling this function as \"ovn_utils.retry()\" make sense to me. But as I said, I think it can be more generic. However, this is a backport patch so I think if we want to move this function, it should be in master branch first: https://github.com/openstack/neutron/blob/master/neutron/common/ovn/utils.py#L772","commit_id":"bb279b3b0515d6c0ef9f4b243ec2cc0c9ac9fdc6"},{"author":{"_account_id":34451,"name":"Fernando Royo","email":"froyo@redhat.com","username":"froyo"},"change_message_id":"007bc0a17484b8419cded586f2aabbb03080825f","unresolved":true,"context_lines":[{"line_number":645,"context_line":"            constants.PORT_CAP_SWITCHDEV not in capabilities)"},{"line_number":646,"context_line":""},{"line_number":647,"context_line":""},{"line_number":648,"context_line":"def retry(max_\u003dNone):"},{"line_number":649,"context_line":"    def inner(func):"},{"line_number":650,"context_line":"        def wrapper(*args, **kwargs):"},{"line_number":651,"context_line":"            local_max \u003d max_ or ovn_conf.get_ovn_ovsdb_retry_max_interval()"},{"line_number":652,"context_line":"            return tenacity.retry("},{"line_number":653,"context_line":"                wait\u003dtenacity.wait_exponential(max\u003dlocal_max),"},{"line_number":654,"context_line":"                reraise\u003dTrue)(func)(*args, **kwargs)"},{"line_number":655,"context_line":"        return wrapper"},{"line_number":656,"context_line":"    return inner"}],"source_content_type":"text/x-python","patch_set":1,"id":"263fb001_3fd1967e","line":656,"range":{"start_line":648,"start_character":0,"end_line":656,"end_character":16},"in_reply_to":"2dd310f3_30071b64","updated":"2022-11-23 13:08:55.000000000","message":"IIRC it was located here due to is using as a default value (if max_ is None) the defined in the ovsdb_retry_max_interval config in the ML2/OVN driver","commit_id":"bb279b3b0515d6c0ef9f4b243ec2cc0c9ac9fdc6"}]}
