)]}'
{"neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_client.py":[{"author":{"_account_id":24791,"name":"Maciej Jozefczyk","email":"jeicam.pl@gmail.com","username":"maciej.jozefczyk"},"change_message_id":"bdab4cbd01069a03090a1914c335d3dc79ab7166","unresolved":false,"context_lines":[{"line_number":1089,"context_line":"            if ovn_fip:"},{"line_number":1090,"context_line":"                # We need to determine if FIP or port_id has been changed."},{"line_number":1091,"context_line":"                # If not, do nothing."},{"line_number":1092,"context_line":"                if (floatingip[\u0027fixed_ip_address\u0027] !\u003d ovn_fip[\u0027logical_ip\u0027] or"},{"line_number":1093,"context_line":"                        floatingip[\u0027port_id\u0027] !\u003d ovn_fip[\u0027external_ids\u0027].get("},{"line_number":1094,"context_line":"                            ovn_const.OVN_FIP_PORT_EXT_ID_KEY)):"},{"line_number":1095,"context_line":""},{"line_number":1096,"context_line":"                    lrouter \u003d ovn_fip[\u0027external_ids\u0027].get("},{"line_number":1097,"context_line":"                        ovn_const.OVN_ROUTER_NAME_EXT_ID_KEY,"}],"source_content_type":"text/x-python","patch_set":1,"id":"1fa4df85_14738b4f","line":1094,"range":{"start_line":1092,"start_character":17,"end_line":1094,"end_character":64},"updated":"2020-03-12 12:25:04.000000000","message":"I know that actual implementation is wrong :(, but we have a use-case when we need to \u0027empty-update\u0027 the Floating IP to make it decentralized (when it was previously centralized because of some conditions - please check [1]).\n\n\nTo solve this issue I think we should verify if a \u0027produced\u0027 by ovn_client NAT entry is different that the one existing already in the OVN DB. If its not different - we shouldn\u0027t commit.\n\n\nSo I think we could just load actual NAT entry (ovn_fip) and verify it if its the same as the one created by the def _create_or_update_floatingip(). If there is a difference - commit, if not, leave it untouched.\n\n[1] https://bugs.launchpad.net/neutron/+bug/1860662","commit_id":"c48f96cd7fdd6f37daf29c5e5b182e91603ca310"},{"author":{"_account_id":29874,"name":"Taoyunxiang","email":"taoyunxiang_yewu@cmss.chinamobile.com","username":"Yunxiang"},"change_message_id":"426431bbc1e6a13fc2a04fe65382ff64a727ad73","unresolved":false,"context_lines":[{"line_number":1089,"context_line":"            if ovn_fip:"},{"line_number":1090,"context_line":"                # We need to determine if FIP or port_id has been changed."},{"line_number":1091,"context_line":"                # If not, do nothing."},{"line_number":1092,"context_line":"                if (floatingip[\u0027fixed_ip_address\u0027] !\u003d ovn_fip[\u0027logical_ip\u0027] or"},{"line_number":1093,"context_line":"                        floatingip[\u0027port_id\u0027] !\u003d ovn_fip[\u0027external_ids\u0027].get("},{"line_number":1094,"context_line":"                            ovn_const.OVN_FIP_PORT_EXT_ID_KEY)):"},{"line_number":1095,"context_line":""},{"line_number":1096,"context_line":"                    lrouter \u003d ovn_fip[\u0027external_ids\u0027].get("},{"line_number":1097,"context_line":"                        ovn_const.OVN_ROUTER_NAME_EXT_ID_KEY,"}],"source_content_type":"text/x-python","patch_set":1,"id":"1fa4df85_b2040780","line":1094,"range":{"start_line":1092,"start_character":17,"end_line":1094,"end_character":64},"in_reply_to":"1fa4df85_14738b4f","updated":"2020-03-12 13:48:20.000000000","message":"I think the check for update requeset is needed, and the way this patch shows is easy and earlier I think, I will make sure how to do it in \"_create_or_update_floatingip\" as you suggested. \n\nNot about this change,by the way, why the member and VIP both needs FIP?  And do you have plan to support L7 LB?","commit_id":"c48f96cd7fdd6f37daf29c5e5b182e91603ca310"},{"author":{"_account_id":24791,"name":"Maciej Jozefczyk","email":"jeicam.pl@gmail.com","username":"maciej.jozefczyk"},"change_message_id":"8615c59281791381589d61eb1baf23af43d48780","unresolved":false,"context_lines":[{"line_number":1089,"context_line":"            if ovn_fip:"},{"line_number":1090,"context_line":"                # We need to determine if FIP or port_id has been changed."},{"line_number":1091,"context_line":"                # If not, do nothing."},{"line_number":1092,"context_line":"                if (floatingip[\u0027fixed_ip_address\u0027] !\u003d ovn_fip[\u0027logical_ip\u0027] or"},{"line_number":1093,"context_line":"                        floatingip[\u0027port_id\u0027] !\u003d ovn_fip[\u0027external_ids\u0027].get("},{"line_number":1094,"context_line":"                            ovn_const.OVN_FIP_PORT_EXT_ID_KEY)):"},{"line_number":1095,"context_line":""},{"line_number":1096,"context_line":"                    lrouter \u003d ovn_fip[\u0027external_ids\u0027].get("},{"line_number":1097,"context_line":"                        ovn_const.OVN_ROUTER_NAME_EXT_ID_KEY,"}],"source_content_type":"text/x-python","patch_set":1,"id":"1fa4df85_5951250e","line":1094,"range":{"start_line":1092,"start_character":17,"end_line":1094,"end_character":64},"in_reply_to":"1fa4df85_b2040780","updated":"2020-03-13 14:01:17.000000000","message":"There is a use-case, when a member and LB needs to have an Norh-South connectivity.\nFor example there is a managing station that has connectivity to member via its FIP and also there is a need to have LB traffic to be exposed also with FIP. This is standard Octavia use-case.\n\nUnfortunately for now core OVN has issue with supporting this use-case while the environment is DVR-enabled, so in that case we need to perform workaround which is centralizing member FIPs ;(","commit_id":"c48f96cd7fdd6f37daf29c5e5b182e91603ca310"}]}
