)]}'
{"dragonflow/neutron/ml2/mech_driver.py":[{"author":{"_account_id":21691,"name":"weizj","email":"wzj334965317@outlook.com","username":"ZhijunWei"},"change_message_id":"07e97e4b427de338dd789810615a027a6d69d656","unresolved":false,"context_lines":[{"line_number":443,"context_line":"            chassis \u003d None"},{"line_number":444,"context_line":"        else:"},{"line_number":445,"context_line":"            chassis \u003d port.get(\u0027binding:host_id\u0027, None)"},{"line_number":446,"context_line":"            if chassis \u003d\u003d \u0027\u0027:"},{"line_number":447,"context_line":"                chassis \u003d None"},{"line_number":448,"context_line":""},{"line_number":449,"context_line":"        self.nb_api.create_lport("}],"source_content_type":"text/x-python","patch_set":1,"id":"dada55a8_554bf458","line":446,"range":{"start_line":446,"start_character":23,"end_line":446,"end_character":25},"updated":"2016-07-21 07:54:05.000000000","message":"\u0027\u0027 is a object, if chassis is \u0027\u0027 is better","commit_id":"03450fd9b710ab182060f0a64af2eea20978fa70"},{"author":{"_account_id":7805,"name":"Li Ma","email":"skywalker.nick@gmail.com","username":"Nick"},"change_message_id":"a9b1a94e49a17af010837af2252fcccc105877cd","unresolved":false,"context_lines":[{"line_number":443,"context_line":"            chassis \u003d None"},{"line_number":444,"context_line":"        else:"},{"line_number":445,"context_line":"            chassis \u003d port.get(\u0027binding:host_id\u0027, None)"},{"line_number":446,"context_line":"            if chassis \u003d\u003d \u0027\u0027:"},{"line_number":447,"context_line":"                chassis \u003d None"},{"line_number":448,"context_line":""},{"line_number":449,"context_line":"        self.nb_api.create_lport("}],"source_content_type":"text/x-python","patch_set":1,"id":"dada55a8_c90f1187","line":446,"range":{"start_line":446,"start_character":12,"end_line":446,"end_character":29},"updated":"2016-07-22 06:54:09.000000000","message":"I wonder why \u0027binding:host_id\u0027 is \u0027\u0027, not None.","commit_id":"03450fd9b710ab182060f0a64af2eea20978fa70"},{"author":{"_account_id":7805,"name":"Li Ma","email":"skywalker.nick@gmail.com","username":"Nick"},"change_message_id":"6a67a9980177b85e3f8bf8c9544a7f74a97bd1ab","unresolved":false,"context_lines":[{"line_number":443,"context_line":"            chassis \u003d None"},{"line_number":444,"context_line":"        else:"},{"line_number":445,"context_line":"            chassis \u003d port.get(\u0027binding:host_id\u0027, None)"},{"line_number":446,"context_line":"            if chassis \u003d\u003d \u0027\u0027:"},{"line_number":447,"context_line":"                chassis \u003d None"},{"line_number":448,"context_line":""},{"line_number":449,"context_line":"        self.nb_api.create_lport("}],"source_content_type":"text/x-python","patch_set":1,"id":"dada55a8_ecfca374","line":446,"range":{"start_line":446,"start_character":12,"end_line":446,"end_character":29},"in_reply_to":"dada55a8_09d769c0","updated":"2016-07-22 07:22:06.000000000","message":"Yes, we need to find the root cause to better understand it. This hard-code solution is not good.","commit_id":"03450fd9b710ab182060f0a64af2eea20978fa70"},{"author":{"_account_id":20287,"name":"hujie","email":"mike.hu@huawei.com","username":"hujie"},"change_message_id":"afc5270cdc5c0567b914c465072037060b46243c","unresolved":false,"context_lines":[{"line_number":443,"context_line":"            chassis \u003d None"},{"line_number":444,"context_line":"        else:"},{"line_number":445,"context_line":"            chassis \u003d port.get(\u0027binding:host_id\u0027, None)"},{"line_number":446,"context_line":"            if chassis \u003d\u003d \u0027\u0027:"},{"line_number":447,"context_line":"                chassis \u003d None"},{"line_number":448,"context_line":""},{"line_number":449,"context_line":"        self.nb_api.create_lport("}],"source_content_type":"text/x-python","patch_set":1,"id":"dada55a8_f5c2e883","line":446,"range":{"start_line":446,"start_character":23,"end_line":446,"end_character":25},"in_reply_to":"dada55a8_554bf458","updated":"2016-07-21 07:58:09.000000000","message":"Could you please tell me why \u0027is\u0027 is better than \u0027\u003d\u003d\u0027, here I only want to judge chassis equals a empty string.","commit_id":"03450fd9b710ab182060f0a64af2eea20978fa70"},{"author":{"_account_id":20287,"name":"hujie","email":"mike.hu@huawei.com","username":"hujie"},"change_message_id":"f4f85fab3f7be939448e72f812df37f29a96e24e","unresolved":false,"context_lines":[{"line_number":443,"context_line":"            chassis \u003d None"},{"line_number":444,"context_line":"        else:"},{"line_number":445,"context_line":"            chassis \u003d port.get(\u0027binding:host_id\u0027, None)"},{"line_number":446,"context_line":"            if chassis \u003d\u003d \u0027\u0027:"},{"line_number":447,"context_line":"                chassis \u003d None"},{"line_number":448,"context_line":""},{"line_number":449,"context_line":"        self.nb_api.create_lport("}],"source_content_type":"text/x-python","patch_set":1,"id":"dada55a8_09d769c0","line":446,"range":{"start_line":446,"start_character":12,"end_line":446,"end_character":29},"in_reply_to":"dada55a8_c90f1187","updated":"2016-07-22 06:57:52.000000000","message":"I fount it in my environment, at least the field value of the router_interface port and the floatingip port is \u0027\u0027, not None.","commit_id":"03450fd9b710ab182060f0a64af2eea20978fa70"},{"author":{"_account_id":7805,"name":"Li Ma","email":"skywalker.nick@gmail.com","username":"Nick"},"change_message_id":"8676bfb342ff406ac0a45043f1429583b09c3106","unresolved":false,"context_lines":[{"line_number":443,"context_line":"            chassis \u003d None"},{"line_number":444,"context_line":"        else:"},{"line_number":445,"context_line":"            chassis \u003d port.get(\u0027binding:host_id\u0027, None)"},{"line_number":446,"context_line":"            if chassis \u003d\u003d \u0027\u0027:"},{"line_number":447,"context_line":"                chassis \u003d None"},{"line_number":448,"context_line":""},{"line_number":449,"context_line":"        self.nb_api.create_lport("}],"source_content_type":"text/x-python","patch_set":1,"id":"3ac371cc_1603fa74","line":446,"range":{"start_line":446,"start_character":12,"end_line":446,"end_character":29},"in_reply_to":"dada55a8_cf38b140","updated":"2016-08-15 04:24:42.000000000","message":"sorry for the late reply. do you know why the \u0027binding:host_id\u0027 value is \u0027\u0027? are there any places that set \u0027binding:host_id\u0027 to \u0027\u0027?","commit_id":"03450fd9b710ab182060f0a64af2eea20978fa70"},{"author":{"_account_id":20287,"name":"hujie","email":"mike.hu@huawei.com","username":"hujie"},"change_message_id":"77fba10ffd5f1668f5e7382a6ed4515361d20954","unresolved":false,"context_lines":[{"line_number":443,"context_line":"            chassis \u003d None"},{"line_number":444,"context_line":"        else:"},{"line_number":445,"context_line":"            chassis \u003d port.get(\u0027binding:host_id\u0027, None)"},{"line_number":446,"context_line":"            if chassis \u003d\u003d \u0027\u0027:"},{"line_number":447,"context_line":"                chassis \u003d None"},{"line_number":448,"context_line":""},{"line_number":449,"context_line":"        self.nb_api.create_lport("}],"source_content_type":"text/x-python","patch_set":1,"id":"dada55a8_cf38b140","line":446,"range":{"start_line":446,"start_character":12,"end_line":446,"end_character":29},"in_reply_to":"dada55a8_ecfca374","updated":"2016-07-22 07:46:28.000000000","message":"yes, you are right, indeed, if the chassis value is meaningless, \u0027\u0027 and None could be both ok, but we need to modify some places which implement judgement from \"if chassis is None\" to \"if not chassis\"","commit_id":"03450fd9b710ab182060f0a64af2eea20978fa70"},{"author":{"_account_id":11159,"name":"Hong Hui Xiao","email":"honghui_xiao@yeah.net","username":"HongHuiXiao"},"change_message_id":"7777f720ecf7fe4a6a148ac6b4894bbb33a50be1","unresolved":false,"context_lines":[{"line_number":440,"context_line":"            chassis \u003d None"},{"line_number":441,"context_line":"        else:"},{"line_number":442,"context_line":"            chassis \u003d port.get(\u0027binding:host_id\u0027, None)"},{"line_number":443,"context_line":"            if chassis \u003d\u003d \u0027\u0027:"},{"line_number":444,"context_line":"                chassis \u003d None"},{"line_number":445,"context_line":""},{"line_number":446,"context_line":"        self.nb_api.create_lport("}],"source_content_type":"text/x-python","patch_set":2,"id":"1ac06dbe_fd7cfd73","line":443,"range":{"start_line":443,"start_character":26,"end_line":443,"end_character":28},"updated":"2016-08-22 03:12:49.000000000","message":"I think it is from neutron. Its default value will be \u0027\u0027,\n see [1]. And \u0027binding:host_id\u0027 will be unify to \u0027\u0027 in the ml2 handling, if its value is false, see [2].\n\n[1] https://github.com/openstack/neutron/blob/14ebfb527dfa8631db0112f605927449584050ad/neutron/plugins/ml2/models.py#L40\n\n[2] https://github.com/openstack/neutron/blob/14ebfb527dfa8631db0112f605927449584050ad/neutron/plugins/ml2/plugin.py#L294","commit_id":"14352054f3eca93bde025aabcba8f58d0322c802"},{"author":{"_account_id":7805,"name":"Li Ma","email":"skywalker.nick@gmail.com","username":"Nick"},"change_message_id":"0422984258ed910bef344d4e40a4b034e4ab1330","unresolved":false,"context_lines":[{"line_number":440,"context_line":"            chassis \u003d None"},{"line_number":441,"context_line":"        else:"},{"line_number":442,"context_line":"            chassis \u003d port.get(\u0027binding:host_id\u0027, None)"},{"line_number":443,"context_line":"            if chassis \u003d\u003d \u0027\u0027:"},{"line_number":444,"context_line":"                chassis \u003d None"},{"line_number":445,"context_line":""},{"line_number":446,"context_line":"        self.nb_api.create_lport("}],"source_content_type":"text/x-python","patch_set":2,"id":"1ac06dbe_d73e3ad9","line":443,"range":{"start_line":443,"start_character":26,"end_line":443,"end_character":28},"in_reply_to":"1ac06dbe_fd7cfd73","updated":"2016-08-22 07:28:52.000000000","message":"That does make sense, thanks.","commit_id":"14352054f3eca93bde025aabcba8f58d0322c802"},{"author":{"_account_id":11159,"name":"Hong Hui Xiao","email":"honghui_xiao@yeah.net","username":"HongHuiXiao"},"change_message_id":"7777f720ecf7fe4a6a148ac6b4894bbb33a50be1","unresolved":false,"context_lines":[{"line_number":440,"context_line":"            chassis \u003d None"},{"line_number":441,"context_line":"        else:"},{"line_number":442,"context_line":"            chassis \u003d port.get(\u0027binding:host_id\u0027, None)"},{"line_number":443,"context_line":"            if chassis \u003d\u003d \u0027\u0027:"},{"line_number":444,"context_line":"                chassis \u003d None"},{"line_number":445,"context_line":""},{"line_number":446,"context_line":"        self.nb_api.create_lport("},{"line_number":447,"context_line":"            id\u003dport[\u0027id\u0027],"}],"source_content_type":"text/x-python","patch_set":2,"id":"1ac06dbe_9d9ea9b6","line":444,"range":{"start_line":443,"start_character":12,"end_line":444,"end_character":30},"updated":"2016-08-22 03:12:49.000000000","message":"This is actually not needed, because /if not chassis/ \u003d\u003d /if chassis is None or chassis is \u0027\u0027/\n\nBut if you want to unify the value of chassis, you could use \"chassis \u003d chassis or None\" to save some line of code.","commit_id":"14352054f3eca93bde025aabcba8f58d0322c802"},{"author":{"_account_id":7805,"name":"Li Ma","email":"skywalker.nick@gmail.com","username":"Nick"},"change_message_id":"add6abb0dd2c8c8c62e4a7f0947c429f63226b0e","unresolved":false,"context_lines":[{"line_number":440,"context_line":"            chassis \u003d None"},{"line_number":441,"context_line":"        else:"},{"line_number":442,"context_line":"            chassis \u003d port.get(\u0027binding:host_id\u0027, None)"},{"line_number":443,"context_line":"            if chassis \u003d\u003d \u0027\u0027:"},{"line_number":444,"context_line":"                chassis \u003d None"},{"line_number":445,"context_line":""},{"line_number":446,"context_line":"        self.nb_api.create_lport("},{"line_number":447,"context_line":"            id\u003dport[\u0027id\u0027],"}],"source_content_type":"text/x-python","patch_set":2,"id":"fa7ab95a_dc38f0a2","line":444,"range":{"start_line":443,"start_character":12,"end_line":444,"end_character":30},"in_reply_to":"1ac06dbe_9d9ea9b6","updated":"2016-08-30 03:56:17.000000000","message":"chassis \u003d port.get(\u0027binding:host_id\u0027, None) or None\nseems to save lines of code at the most.","commit_id":"14352054f3eca93bde025aabcba8f58d0322c802"},{"author":{"_account_id":7805,"name":"Li Ma","email":"skywalker.nick@gmail.com","username":"Nick"},"change_message_id":"11f61a0a984655c4fa06bbaa18450bb073e8f637","unresolved":false,"context_lines":[{"line_number":440,"context_line":"            chassis \u003d None"},{"line_number":441,"context_line":"        else:"},{"line_number":442,"context_line":"            chassis \u003d port.get(\u0027binding:host_id\u0027, None)"},{"line_number":443,"context_line":"            if chassis \u003d\u003d \u0027\u0027:"},{"line_number":444,"context_line":"                chassis \u003d None"},{"line_number":445,"context_line":""},{"line_number":446,"context_line":"        self.nb_api.create_lport("},{"line_number":447,"context_line":"            id\u003dport[\u0027id\u0027],"}],"source_content_type":"text/x-python","patch_set":2,"id":"fa7ab95a_f302ef08","line":444,"range":{"start_line":443,"start_character":12,"end_line":444,"end_character":30},"in_reply_to":"fa7ab95a_d227f7b3","updated":"2016-08-31 06:47:34.000000000","message":"Because it is straightforward to check the value using boolean operation. Actually I\u0027m not with neutron implementation.","commit_id":"14352054f3eca93bde025aabcba8f58d0322c802"},{"author":{"_account_id":9044,"name":"Will","email":"wangjian.ika@bytedance.com","username":"Will"},"change_message_id":"f55d67ea64bf94d3e3234c43c5361cf7532b8ff9","unresolved":false,"context_lines":[{"line_number":440,"context_line":"            chassis \u003d None"},{"line_number":441,"context_line":"        else:"},{"line_number":442,"context_line":"            chassis \u003d port.get(\u0027binding:host_id\u0027, None)"},{"line_number":443,"context_line":"            if chassis \u003d\u003d \u0027\u0027:"},{"line_number":444,"context_line":"                chassis \u003d None"},{"line_number":445,"context_line":""},{"line_number":446,"context_line":"        self.nb_api.create_lport("},{"line_number":447,"context_line":"            id\u003dport[\u0027id\u0027],"}],"source_content_type":"text/x-python","patch_set":2,"id":"fa7ab95a_d227f7b3","line":444,"range":{"start_line":443,"start_character":12,"end_line":444,"end_character":30},"in_reply_to":"fa7ab95a_dc38f0a2","updated":"2016-08-30 04:56:55.000000000","message":"why not keep pace with neutron and use \u0027\u0027 as the default value? line 442: chassis \u003d port.get(\u0027binding:host_id\u0027, \u0027\u0027)","commit_id":"14352054f3eca93bde025aabcba8f58d0322c802"},{"author":{"_account_id":11159,"name":"Hong Hui Xiao","email":"honghui_xiao@yeah.net","username":"HongHuiXiao"},"change_message_id":"7777f720ecf7fe4a6a148ac6b4894bbb33a50be1","unresolved":false,"context_lines":[{"line_number":510,"context_line":"            chassis \u003d None"},{"line_number":511,"context_line":"        else:"},{"line_number":512,"context_line":"            chassis \u003d updated_port.get(\u0027binding:host_id\u0027, None)"},{"line_number":513,"context_line":"            if chassis \u003d\u003d \u0027\u0027:"},{"line_number":514,"context_line":"                chassis \u003d None"},{"line_number":515,"context_line":""},{"line_number":516,"context_line":"        updated_security_groups \u003d updated_port.get(\u0027security_groups\u0027)"},{"line_number":517,"context_line":"        if updated_security_groups:"}],"source_content_type":"text/x-python","patch_set":2,"id":"1ac06dbe_7dbacd24","line":514,"range":{"start_line":513,"start_character":0,"end_line":514,"end_character":30},"updated":"2016-08-22 03:12:49.000000000","message":"Ditto","commit_id":"14352054f3eca93bde025aabcba8f58d0322c802"}]}
