)]}'
{"neutron/agent/l2/extensions/fdb_population.py":[{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"b4f79f86392d2488dc92e90efd213704460a674c","unresolved":false,"context_lines":[{"line_number":58,"context_line":"    # - device owner \"router_interface\": updates the FDB with OVS/LB ports,"},{"line_number":59,"context_line":"    #       required in order to enable communication for SR-IOV instances"},{"line_number":60,"context_line":"    #       with floating ip that are located with the network node."},{"line_number":61,"context_line":"    # - device owner \"DHCP\": updates the FDB with the dhcp server"},{"line_number":62,"context_line":"    #       when the lease expires a renew message is sent to the dhcp server,"},{"line_number":63,"context_line":"    #       without updating the FDB the message will be sent to the wire"},{"line_number":64,"context_line":"    #       therefore failed causing the guest to broadcast DHCP renew request."}],"source_content_type":"text/x-python","patch_set":1,"id":"1aa78d24_6a76853f","line":61,"range":{"start_line":61,"start_character":59,"end_line":61,"end_character":65},"updated":"2016-07-10 17:47:51.000000000","message":"server.","commit_id":"ff5477229e4d5b6704da316f53db9bfefb9e4b4e"},{"author":{"_account_id":21683,"name":"edan david","email":"edand@mellanox.com","username":"edand"},"change_message_id":"abec0b3a3e024d1913e00300ac44747e3f5fdba2","unresolved":false,"context_lines":[{"line_number":58,"context_line":"    # - device owner \"router_interface\": updates the FDB with OVS/LB ports,"},{"line_number":59,"context_line":"    #       required in order to enable communication for SR-IOV instances"},{"line_number":60,"context_line":"    #       with floating ip that are located with the network node."},{"line_number":61,"context_line":"    # - device owner \"DHCP\": updates the FDB with the dhcp server"},{"line_number":62,"context_line":"    #       when the lease expires a renew message is sent to the dhcp server,"},{"line_number":63,"context_line":"    #       without updating the FDB the message will be sent to the wire"},{"line_number":64,"context_line":"    #       therefore failed causing the guest to broadcast DHCP renew request."}],"source_content_type":"text/x-python","patch_set":1,"id":"1aa78d24_6a2045f8","line":61,"range":{"start_line":61,"start_character":59,"end_line":61,"end_character":65},"in_reply_to":"1aa78d24_6a76853f","updated":"2016-07-10 22:20:09.000000000","message":"Done","commit_id":"ff5477229e4d5b6704da316f53db9bfefb9e4b4e"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"b4f79f86392d2488dc92e90efd213704460a674c","unresolved":false,"context_lines":[{"line_number":59,"context_line":"    #       required in order to enable communication for SR-IOV instances"},{"line_number":60,"context_line":"    #       with floating ip that are located with the network node."},{"line_number":61,"context_line":"    # - device owner \"DHCP\": updates the FDB with the dhcp server"},{"line_number":62,"context_line":"    #       when the lease expires a renew message is sent to the dhcp server,"},{"line_number":63,"context_line":"    #       without updating the FDB the message will be sent to the wire"},{"line_number":64,"context_line":"    #       therefore failed causing the guest to broadcast DHCP renew request."},{"line_number":65,"context_line":"    PERMITTED_DEVICE_OWNERS \u003d {constants.DEVICE_OWNER_COMPUTE_PREFIX,"}],"source_content_type":"text/x-python","patch_set":1,"id":"1aa78d24_4a710944","line":62,"range":{"start_line":62,"start_character":12,"end_line":62,"end_character":16},"updated":"2016-07-10 17:47:51.000000000","message":"When","commit_id":"ff5477229e4d5b6704da316f53db9bfefb9e4b4e"},{"author":{"_account_id":21683,"name":"edan david","email":"edand@mellanox.com","username":"edand"},"change_message_id":"abec0b3a3e024d1913e00300ac44747e3f5fdba2","unresolved":false,"context_lines":[{"line_number":59,"context_line":"    #       required in order to enable communication for SR-IOV instances"},{"line_number":60,"context_line":"    #       with floating ip that are located with the network node."},{"line_number":61,"context_line":"    # - device owner \"DHCP\": updates the FDB with the dhcp server"},{"line_number":62,"context_line":"    #       when the lease expires a renew message is sent to the dhcp server,"},{"line_number":63,"context_line":"    #       without updating the FDB the message will be sent to the wire"},{"line_number":64,"context_line":"    #       therefore failed causing the guest to broadcast DHCP renew request."},{"line_number":65,"context_line":"    PERMITTED_DEVICE_OWNERS \u003d {constants.DEVICE_OWNER_COMPUTE_PREFIX,"}],"source_content_type":"text/x-python","patch_set":1,"id":"1aa78d24_aa786df9","line":62,"range":{"start_line":62,"start_character":12,"end_line":62,"end_character":16},"in_reply_to":"1aa78d24_4a710944","updated":"2016-07-10 22:20:09.000000000","message":"Done","commit_id":"ff5477229e4d5b6704da316f53db9bfefb9e4b4e"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"b4f79f86392d2488dc92e90efd213704460a674c","unresolved":false,"context_lines":[{"line_number":60,"context_line":"    #       with floating ip that are located with the network node."},{"line_number":61,"context_line":"    # - device owner \"DHCP\": updates the FDB with the dhcp server"},{"line_number":62,"context_line":"    #       when the lease expires a renew message is sent to the dhcp server,"},{"line_number":63,"context_line":"    #       without updating the FDB the message will be sent to the wire"},{"line_number":64,"context_line":"    #       therefore failed causing the guest to broadcast DHCP renew request."},{"line_number":65,"context_line":"    PERMITTED_DEVICE_OWNERS \u003d {constants.DEVICE_OWNER_COMPUTE_PREFIX,"},{"line_number":66,"context_line":"                               constants.DEVICE_OWNER_ROUTER_INTF,"}],"source_content_type":"text/x-python","patch_set":1,"id":"1aa78d24_8a913149","line":63,"range":{"start_line":63,"start_character":33,"end_line":63,"end_character":36},"updated":"2016-07-10 17:47:51.000000000","message":"FDB,","commit_id":"ff5477229e4d5b6704da316f53db9bfefb9e4b4e"},{"author":{"_account_id":21683,"name":"edan david","email":"edand@mellanox.com","username":"edand"},"change_message_id":"abec0b3a3e024d1913e00300ac44747e3f5fdba2","unresolved":false,"context_lines":[{"line_number":60,"context_line":"    #       with floating ip that are located with the network node."},{"line_number":61,"context_line":"    # - device owner \"DHCP\": updates the FDB with the dhcp server"},{"line_number":62,"context_line":"    #       when the lease expires a renew message is sent to the dhcp server,"},{"line_number":63,"context_line":"    #       without updating the FDB the message will be sent to the wire"},{"line_number":64,"context_line":"    #       therefore failed causing the guest to broadcast DHCP renew request."},{"line_number":65,"context_line":"    PERMITTED_DEVICE_OWNERS \u003d {constants.DEVICE_OWNER_COMPUTE_PREFIX,"},{"line_number":66,"context_line":"                               constants.DEVICE_OWNER_ROUTER_INTF,"}],"source_content_type":"text/x-python","patch_set":1,"id":"1aa78d24_0a68a120","line":63,"range":{"start_line":63,"start_character":33,"end_line":63,"end_character":36},"in_reply_to":"1aa78d24_8a913149","updated":"2016-07-10 22:20:09.000000000","message":"Done","commit_id":"ff5477229e4d5b6704da316f53db9bfefb9e4b4e"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"b4f79f86392d2488dc92e90efd213704460a674c","unresolved":false,"context_lines":[{"line_number":61,"context_line":"    # - device owner \"DHCP\": updates the FDB with the dhcp server"},{"line_number":62,"context_line":"    #       when the lease expires a renew message is sent to the dhcp server,"},{"line_number":63,"context_line":"    #       without updating the FDB the message will be sent to the wire"},{"line_number":64,"context_line":"    #       therefore failed causing the guest to broadcast DHCP renew request."},{"line_number":65,"context_line":"    PERMITTED_DEVICE_OWNERS \u003d {constants.DEVICE_OWNER_COMPUTE_PREFIX,"},{"line_number":66,"context_line":"                               constants.DEVICE_OWNER_ROUTER_INTF,"},{"line_number":67,"context_line":"                               constants.DEVICE_OWNER_DHCP}"}],"source_content_type":"text/x-python","patch_set":1,"id":"1aa78d24_ca9b3965","line":64,"range":{"start_line":64,"start_character":12,"end_line":64,"end_character":21},"updated":"2016-07-10 17:47:51.000000000","message":"this part of the sentence does not make any sense to me","commit_id":"ff5477229e4d5b6704da316f53db9bfefb9e4b4e"},{"author":{"_account_id":21683,"name":"edan david","email":"edand@mellanox.com","username":"edand"},"change_message_id":"abec0b3a3e024d1913e00300ac44747e3f5fdba2","unresolved":false,"context_lines":[{"line_number":61,"context_line":"    # - device owner \"DHCP\": updates the FDB with the dhcp server"},{"line_number":62,"context_line":"    #       when the lease expires a renew message is sent to the dhcp server,"},{"line_number":63,"context_line":"    #       without updating the FDB the message will be sent to the wire"},{"line_number":64,"context_line":"    #       therefore failed causing the guest to broadcast DHCP renew request."},{"line_number":65,"context_line":"    PERMITTED_DEVICE_OWNERS \u003d {constants.DEVICE_OWNER_COMPUTE_PREFIX,"},{"line_number":66,"context_line":"                               constants.DEVICE_OWNER_ROUTER_INTF,"},{"line_number":67,"context_line":"                               constants.DEVICE_OWNER_DHCP}"}],"source_content_type":"text/x-python","patch_set":1,"id":"1aa78d24_aa5fcd73","line":64,"range":{"start_line":64,"start_character":12,"end_line":64,"end_character":21},"in_reply_to":"1aa78d24_ca9b3965","updated":"2016-07-10 22:20:09.000000000","message":"Yep I can understand why :D","commit_id":"ff5477229e4d5b6704da316f53db9bfefb9e4b4e"},{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"be7bbf02c0a826874011bd06329586b6e35a7ee0","unresolved":false,"context_lines":[{"line_number":65,"context_line":"    #       located on the same hypervisor as the network node."},{"line_number":66,"context_line":"    PERMITTED_DEVICE_OWNERS \u003d {\u0027compute\u0027,"},{"line_number":67,"context_line":"                               \u0027network:router_interface\u0027,"},{"line_number":68,"context_line":"                               \u0027network:dhcp\u0027}"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"    class FdbTableTracker(object):"},{"line_number":71,"context_line":"        \"\"\"FDB table tracker is a helper class"}],"source_content_type":"text/x-python","patch_set":4,"id":"1aa78d24_ad7bb4f3","line":68,"updated":"2016-07-13 21:04:13.000000000","message":"I think if you\u0027re going to make this change, you might as well have it use the actual constants from neutron_lib:\n\nDEVICE_OWNER_COMPUTE_PREFIX, DEVICE_OWNER_ROUTER_INTF, DEVICE_OWNER_DHCP","commit_id":"b6592c7372db39884a2282f048b6a29ef9fc2783"},{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"5b2250fd15bc588b113fd8a8efffefc5c89b7e26","unresolved":false,"context_lines":[{"line_number":65,"context_line":"    #       located on the same hypervisor as the network node."},{"line_number":66,"context_line":"    PERMITTED_DEVICE_OWNERS \u003d {\u0027compute\u0027,"},{"line_number":67,"context_line":"                               \u0027network:router_interface\u0027,"},{"line_number":68,"context_line":"                               \u0027network:dhcp\u0027}"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"    class FdbTableTracker(object):"},{"line_number":71,"context_line":"        \"\"\"FDB table tracker is a helper class"}],"source_content_type":"text/x-python","patch_set":4,"id":"1aa78d24_8c4fa333","line":68,"in_reply_to":"1aa78d24_3cd406bc","updated":"2016-07-14 20:11:12.000000000","message":"Then it doesn\u0027t look like this change is needed as that one has been approved.  Unless I\u0027m missing something?","commit_id":"b6592c7372db39884a2282f048b6a29ef9fc2783"},{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"244baed06b9a15a73402f757fb5e75e87d4c5898","unresolved":false,"context_lines":[{"line_number":65,"context_line":"    #       located on the same hypervisor as the network node."},{"line_number":66,"context_line":"    PERMITTED_DEVICE_OWNERS \u003d {\u0027compute\u0027,"},{"line_number":67,"context_line":"                               \u0027network:router_interface\u0027,"},{"line_number":68,"context_line":"                               \u0027network:dhcp\u0027}"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"    class FdbTableTracker(object):"},{"line_number":71,"context_line":"        \"\"\"FDB table tracker is a helper class"}],"source_content_type":"text/x-python","patch_set":4,"id":"1aa78d24_12590a36","line":68,"in_reply_to":"1aa78d24_6cda37eb","updated":"2016-07-14 20:53:44.000000000","message":"I liked the old gerrit interface, it made it obvious of the dependencies.  LGTM","commit_id":"b6592c7372db39884a2282f048b6a29ef9fc2783"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"6e8665e35b0ce6cdd3c0e11e2fccac0582b151ef","unresolved":false,"context_lines":[{"line_number":65,"context_line":"    #       located on the same hypervisor as the network node."},{"line_number":66,"context_line":"    PERMITTED_DEVICE_OWNERS \u003d {\u0027compute\u0027,"},{"line_number":67,"context_line":"                               \u0027network:router_interface\u0027,"},{"line_number":68,"context_line":"                               \u0027network:dhcp\u0027}"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"    class FdbTableTracker(object):"},{"line_number":71,"context_line":"        \"\"\"FDB table tracker is a helper class"}],"source_content_type":"text/x-python","patch_set":4,"id":"1aa78d24_6cda37eb","line":68,"in_reply_to":"1aa78d24_8c4fa333","updated":"2016-07-14 20:23:43.000000000","message":"@Brain,\nThe commit  https://review.openstack.org/#/c/338251/3 is approved but is not merged because it depend on this one.\nSo once you will approve this the other change will be merged as well","commit_id":"b6592c7372db39884a2282f048b6a29ef9fc2783"},{"author":{"_account_id":21683,"name":"edan david","email":"edand@mellanox.com","username":"edand"},"change_message_id":"556df907bddcbfd1b54c7982b413f7bcd4452d83","unresolved":false,"context_lines":[{"line_number":65,"context_line":"    #       located on the same hypervisor as the network node."},{"line_number":66,"context_line":"    PERMITTED_DEVICE_OWNERS \u003d {\u0027compute\u0027,"},{"line_number":67,"context_line":"                               \u0027network:router_interface\u0027,"},{"line_number":68,"context_line":"                               \u0027network:dhcp\u0027}"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"    class FdbTableTracker(object):"},{"line_number":71,"context_line":"        \"\"\"FDB table tracker is a helper class"}],"source_content_type":"text/x-python","patch_set":4,"id":"1aa78d24_3cd406bc","line":68,"in_reply_to":"1aa78d24_ad7bb4f3","updated":"2016-07-14 05:44:49.000000000","message":"I made this change in a different patch because it affects other files as well, https://review.openstack.org/#/c/338251/3","commit_id":"b6592c7372db39884a2282f048b6a29ef9fc2783"}],"neutron/tests/unit/agent/l2/extensions/test_fdb_population.py":[{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"be7bbf02c0a826874011bd06329586b6e35a7ee0","unresolved":false,"context_lines":[{"line_number":128,"context_line":"        fdb_extension \u003d self._get_fdb_extension(mock_execute, \u0027\u0027)"},{"line_number":129,"context_line":"        mock_execute.reset_mock()"},{"line_number":130,"context_line":"        details \u003d copy.deepcopy(self.UPDATE_MSG)"},{"line_number":131,"context_line":"        details[\u0027device_owner\u0027] \u003d \u0027neutron:LOADBALANCER\u0027"},{"line_number":132,"context_line":"        fdb_extension.handle_port(context\u003dNone, details\u003ddetails)"},{"line_number":133,"context_line":"        self.assertFalse(mock_execute.called)"},{"line_number":134,"context_line":"        updated_macs_for_device \u003d ("}],"source_content_type":"text/x-python","patch_set":4,"id":"1aa78d24_4d52106a","line":131,"updated":"2016-07-13 21:04:13.000000000","message":"DEVICE_OWNER_LOADBALANCER","commit_id":"b6592c7372db39884a2282f048b6a29ef9fc2783"},{"author":{"_account_id":21683,"name":"edan david","email":"edand@mellanox.com","username":"edand"},"change_message_id":"556df907bddcbfd1b54c7982b413f7bcd4452d83","unresolved":false,"context_lines":[{"line_number":128,"context_line":"        fdb_extension \u003d self._get_fdb_extension(mock_execute, \u0027\u0027)"},{"line_number":129,"context_line":"        mock_execute.reset_mock()"},{"line_number":130,"context_line":"        details \u003d copy.deepcopy(self.UPDATE_MSG)"},{"line_number":131,"context_line":"        details[\u0027device_owner\u0027] \u003d \u0027neutron:LOADBALANCER\u0027"},{"line_number":132,"context_line":"        fdb_extension.handle_port(context\u003dNone, details\u003ddetails)"},{"line_number":133,"context_line":"        self.assertFalse(mock_execute.called)"},{"line_number":134,"context_line":"        updated_macs_for_device \u003d ("}],"source_content_type":"text/x-python","patch_set":4,"id":"1aa78d24_7c684e22","line":131,"in_reply_to":"1aa78d24_4d52106a","updated":"2016-07-14 05:44:49.000000000","message":"this is changed in a different patch,\nhttps://review.openstack.org/#/c/338251/3","commit_id":"b6592c7372db39884a2282f048b6a29ef9fc2783"}]}
