)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"a80c66d0590696476a40411a3ffbd6d4db581f62","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"c3ce9f96_7bfeefe0","updated":"2025-04-22 15:21:23.000000000","message":"Can you work with Rodolfo on this as he did the original patch? \nThere could be some simpler fix than reverting the whole thing.","commit_id":"fc524d01921b11be345a16fe3fa034e1509b1361"},{"author":{"_account_id":9531,"name":"liuyulong","display_name":"LIU Yulong","email":"i@liuyulong.me","username":"LIU-Yulong"},"change_message_id":"b2a50439b1fd3bce1f190ad0d7e557c33bb8c234","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"2232f495_a256f892","in_reply_to":"c3ce9f96_7bfeefe0","updated":"2025-04-23 00:54:29.000000000","message":"Sure, added Rodolfo to the reviewer list.\n\nThis original fix should not be needed anymore, since I will push the fix of DB uniq constrait as a follow-up patch soon.","commit_id":"fc524d01921b11be345a16fe3fa034e1509b1361"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"bf909f677aec6e32000bc36d4caec78863b9d814","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"c59ba79f_feaf7d88","updated":"2025-04-25 15:18:00.000000000","message":"The bug is legit: the implementation done in [1] is indeed creating duplicated registers in the network_segment_range table. However, the fix is easier [2]: just call the initialization method from worker 1. This patch needs an improvement just to be able from all workers to read the updated info.\n\nBut [2] is much easier than reverting a whole patch and implementing another one that (1) makes a DB change and (2) changes how the network segments are stored, because we change the default value for physical_network\n\n[1]https://review.opendev.org/c/openstack/neutron/+/938319\n[2]https://review.opendev.org/c/openstack/neutron/+/948200","commit_id":"7f240e609423e9438d2ea6e94217b83ad0a035fb"},{"author":{"_account_id":9531,"name":"liuyulong","display_name":"LIU Yulong","email":"i@liuyulong.me","username":"LIU-Yulong"},"change_message_id":"f54947fa834c89380fbb32d8781159eade1eccf2","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"4dceaf0a_94ccf32c","updated":"2025-05-06 01:57:03.000000000","message":"recheck","commit_id":"7f240e609423e9438d2ea6e94217b83ad0a035fb"},{"author":{"_account_id":9531,"name":"liuyulong","display_name":"LIU Yulong","email":"i@liuyulong.me","username":"LIU-Yulong"},"change_message_id":"cab706a0d301c1fcb2eb358d1b5786318a1dfc6f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"a9ac9bbe_0a771b05","updated":"2025-04-30 02:24:01.000000000","message":"recheck","commit_id":"7f240e609423e9438d2ea6e94217b83ad0a035fb"},{"author":{"_account_id":9531,"name":"liuyulong","display_name":"LIU Yulong","email":"i@liuyulong.me","username":"LIU-Yulong"},"change_message_id":"5e79fccc031840bc0babb865ed8204dca33c0e11","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"bc77bf18_c53479af","updated":"2025-04-29 10:08:10.000000000","message":"recheck","commit_id":"7f240e609423e9438d2ea6e94217b83ad0a035fb"},{"author":{"_account_id":9531,"name":"liuyulong","display_name":"LIU Yulong","email":"i@liuyulong.me","username":"LIU-Yulong"},"change_message_id":"ed31e510b7a27b618441fe12dd64aabf0348d834","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"f92fea93_ce938215","updated":"2025-04-27 04:37:42.000000000","message":"recheck","commit_id":"7f240e609423e9438d2ea6e94217b83ad0a035fb"},{"author":{"_account_id":9531,"name":"liuyulong","display_name":"LIU Yulong","email":"i@liuyulong.me","username":"LIU-Yulong"},"change_message_id":"fe39882510f2d49a53c3eb5a1bdbd50160cb9019","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"ae912b7b_38bda327","in_reply_to":"58cf0e23_11a696cd","updated":"2025-04-29 10:06:32.000000000","message":"Then duplicated entry created in database again?","commit_id":"7f240e609423e9438d2ea6e94217b83ad0a035fb"},{"author":{"_account_id":9531,"name":"liuyulong","display_name":"LIU Yulong","email":"i@liuyulong.me","username":"LIU-Yulong"},"change_message_id":"86b12a7604d15d58012dc1e02cb9732949d1d6dc","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"1d5f7f4a_248fb10f","in_reply_to":"71baaac7_53abc5b1","updated":"2025-04-30 02:23:03.000000000","message":"If new defaults added in config file, the \"worker-1\" will delete nothing in DB, and create new one on their own side. Can this introduce duplicated DB entry?\n\nIn order to simulate such issue. I have another experiment on mind. Adds 100-1000 new test network_vlan_ranges, something like this:\nnetwork_vlan_ranges \u003d test1:1:2,test2:3:4,test4:4:5...testX:1000:10001\nThese default segment rangs has no DB entry. Each \"worker-1\" on each \"neutron-server-host\" will delete nothing, and create the new ones.\nThen just restart the neutron-servers on each hosts in one shot at the same time. I guess, we may encounter duplicated DB entry sometimes after.","commit_id":"7f240e609423e9438d2ea6e94217b83ad0a035fb"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"133406d716215ad6a4721c1624b7174fab0a7946","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"71baaac7_53abc5b1","in_reply_to":"a1fa0232_42228ad1","updated":"2025-04-29 20:48:57.000000000","message":"Check the initialization method, similar in VLAN and tunnelled. For example [1]. This method first removes the expired registers [2] and then creates the new default ones [3]. \n\n[1]https://github.com/openstack/neutron/blob/9112672da6a6269e18e4f6a36211b732aed81575/neutron/plugins/ml2/drivers/type_vlan.py#L174-L182\n[2]https://github.com/openstack/neutron/blob/9112672da6a6269e18e4f6a36211b732aed81575/neutron/plugins/ml2/drivers/type_vlan.py#L175\n[3]https://github.com/openstack/neutron/blob/9112672da6a6269e18e4f6a36211b732aed81575/neutron/plugins/ml2/drivers/type_vlan.py#L176","commit_id":"7f240e609423e9438d2ea6e94217b83ad0a035fb"},{"author":{"_account_id":9531,"name":"liuyulong","display_name":"LIU Yulong","email":"i@liuyulong.me","username":"LIU-Yulong"},"change_message_id":"f5501221257d4a9faafdb2f936e8c30e65613873","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"a1fa0232_42228ad1","in_reply_to":"ae912b7b_38bda327","updated":"2025-04-29 10:12:42.000000000","message":"Please test such case, restart neutron-server on different hosts at the same time. This is a very common OP action. I\u0027m not sure that host-only in-memory \"created_at\" can prevent duplicated DB records.","commit_id":"7f240e609423e9438d2ea6e94217b83ad0a035fb"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"ac95d3e40b593b91b307adce96cae2a4c1848608","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"58cf0e23_11a696cd","in_reply_to":"c4e0f5a5_e8382a56","updated":"2025-04-29 08:30:40.000000000","message":"We don\u0027t need to prevent that. Other host API will re-create the default registers with the same information (if the configuration file is the same).","commit_id":"7f240e609423e9438d2ea6e94217b83ad0a035fb"},{"author":{"_account_id":9531,"name":"liuyulong","display_name":"LIU Yulong","email":"i@liuyulong.me","username":"LIU-Yulong"},"change_message_id":"4fec46cc55e60b2161fc367bf245d4528c495056","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"c4e0f5a5_e8382a56","in_reply_to":"c59ba79f_feaf7d88","updated":"2025-04-27 04:35:47.000000000","message":"I\u0027m not quite sure I get the point, What is \"worker 1\"? Did you mean the first neutron API worker in one same host? If so, how to prevent multiple \"worker 1\" doing same work among different neutron-server hosts?","commit_id":"7f240e609423e9438d2ea6e94217b83ad0a035fb"}]}
