)]}'
{"dragonflow/db/api_nb.py":[{"author":{"_account_id":11159,"name":"Hong Hui Xiao","email":"honghui_xiao@yeah.net","username":"HongHuiXiao"},"change_message_id":"2572f8da8728be8417492aaf8dc9c079ee8f40fc","unresolved":false,"context_lines":[{"line_number":423,"context_line":"        lswitch_json \u003d self.driver.get_key(db_models.LogicalSwitch.table_name,"},{"line_number":424,"context_line":"                                           lswitch_id, topic)"},{"line_number":425,"context_line":"        lswitch \u003d jsonutils.loads(lswitch_json)"},{"line_number":426,"context_line":"        nw_version \u003d columns.get(\u0027nw_version\u0027)"},{"line_number":427,"context_line":"        nw_dict \u003d {\u0027id\u0027: lswitch_id, \u0027version\u0027: nw_version}"},{"line_number":428,"context_line":"        if not df_utils.is_valid_version(lswitch, nw_dict):"},{"line_number":429,"context_line":"            return"}],"source_content_type":"text/x-python","patch_set":3,"id":"da4df55a_50f56581","line":426,"range":{"start_line":426,"start_character":21,"end_line":426,"end_character":46},"updated":"2016-12-22 01:00:37.000000000","message":"You could use \"columns.pop(\u0027nw_version\u0027)\" and delete line 436-437","commit_id":"5c2d1318b5f275b5c94e10099ad7564e8e3b6957"},{"author":{"_account_id":20287,"name":"hujie","email":"mike.hu@huawei.com","username":"hujie"},"change_message_id":"66776a3a36b7232514ed6f49f4a0fec6427e52ae","unresolved":false,"context_lines":[{"line_number":423,"context_line":"        lswitch_json \u003d self.driver.get_key(db_models.LogicalSwitch.table_name,"},{"line_number":424,"context_line":"                                           lswitch_id, topic)"},{"line_number":425,"context_line":"        lswitch \u003d jsonutils.loads(lswitch_json)"},{"line_number":426,"context_line":"        nw_version \u003d columns.get(\u0027nw_version\u0027)"},{"line_number":427,"context_line":"        nw_dict \u003d {\u0027id\u0027: lswitch_id, \u0027version\u0027: nw_version}"},{"line_number":428,"context_line":"        if not df_utils.is_valid_version(lswitch, nw_dict):"},{"line_number":429,"context_line":"            return"}],"source_content_type":"text/x-python","patch_set":3,"id":"da4df55a_8976c43c","line":426,"range":{"start_line":426,"start_character":21,"end_line":426,"end_character":46},"in_reply_to":"da4df55a_50f56581","updated":"2016-12-22 02:31:50.000000000","message":"Done","commit_id":"5c2d1318b5f275b5c94e10099ad7564e8e3b6957"},{"author":{"_account_id":11159,"name":"Hong Hui Xiao","email":"honghui_xiao@yeah.net","username":"HongHuiXiao"},"change_message_id":"2572f8da8728be8417492aaf8dc9c079ee8f40fc","unresolved":false,"context_lines":[{"line_number":452,"context_line":"        lswitch_json \u003d self.driver.get_key(db_models.LogicalSwitch.table_name,"},{"line_number":453,"context_line":"                                           lswitch_id, topic)"},{"line_number":454,"context_line":"        lswitch \u003d jsonutils.loads(lswitch_json)"},{"line_number":455,"context_line":"        nw_version \u003d columns.get(\u0027nw_version\u0027)"},{"line_number":456,"context_line":"        nw_dict \u003d {\u0027id\u0027: lswitch_id, \u0027version\u0027: nw_version}"},{"line_number":457,"context_line":"        if not df_utils.is_valid_version(lswitch, nw_dict):"},{"line_number":458,"context_line":"            return"}],"source_content_type":"text/x-python","patch_set":3,"id":"da4df55a_f034994b","line":455,"range":{"start_line":455,"start_character":8,"end_line":455,"end_character":46},"updated":"2016-12-22 01:00:37.000000000","message":"same comment here.","commit_id":"5c2d1318b5f275b5c94e10099ad7564e8e3b6957"},{"author":{"_account_id":11159,"name":"Hong Hui Xiao","email":"honghui_xiao@yeah.net","username":"HongHuiXiao"},"change_message_id":"2572f8da8728be8417492aaf8dc9c079ee8f40fc","unresolved":false,"context_lines":[{"line_number":478,"context_line":"        lswitch_json \u003d self.driver.get_key(db_models.LogicalSwitch.table_name,"},{"line_number":479,"context_line":"                                           lswitch_id, topic)"},{"line_number":480,"context_line":"        lswitch \u003d jsonutils.loads(lswitch_json)"},{"line_number":481,"context_line":"        nw_version \u003d columns.get(\u0027nw_version\u0027)"},{"line_number":482,"context_line":"        nw_dict \u003d {\u0027id\u0027: lswitch_id, \u0027version\u0027: nw_version}"},{"line_number":483,"context_line":"        if not df_utils.is_valid_version(lswitch, nw_dict):"},{"line_number":484,"context_line":"            return"}],"source_content_type":"text/x-python","patch_set":3,"id":"da4df55a_303f0127","line":481,"range":{"start_line":481,"start_character":0,"end_line":481,"end_character":46},"updated":"2016-12-22 01:00:37.000000000","message":"same comment here.","commit_id":"5c2d1318b5f275b5c94e10099ad7564e8e3b6957"},{"author":{"_account_id":11159,"name":"Hong Hui Xiao","email":"honghui_xiao@yeah.net","username":"HongHuiXiao"},"change_message_id":"2572f8da8728be8417492aaf8dc9c079ee8f40fc","unresolved":false,"context_lines":[{"line_number":619,"context_line":"        lrouter_json \u003d self.driver.get_key(db_models.LogicalRouter.table_name,"},{"line_number":620,"context_line":"                                           lrouter_id, topic)"},{"line_number":621,"context_line":"        lrouter \u003d jsonutils.loads(lrouter_json)"},{"line_number":622,"context_line":"        router_version \u003d columns.get(\u0027router_version\u0027)"},{"line_number":623,"context_line":"        router_dict \u003d {\u0027id\u0027: lrouter_id, \u0027version\u0027: router_version}"},{"line_number":624,"context_line":"        if not df_utils.is_valid_version(lrouter, router_dict):"},{"line_number":625,"context_line":"            return"}],"source_content_type":"text/x-python","patch_set":3,"id":"da4df55a_9046edbd","line":622,"range":{"start_line":622,"start_character":0,"end_line":622,"end_character":54},"updated":"2016-12-22 01:00:37.000000000","message":"same comment here.","commit_id":"5c2d1318b5f275b5c94e10099ad7564e8e3b6957"}],"dragonflow/neutron/ml2/mech_driver.py":[{"author":{"_account_id":11159,"name":"Hong Hui Xiao","email":"honghui_xiao@yeah.net","username":"HongHuiXiao"},"change_message_id":"dd2e12ceb6ca75d2b81ba6bf5e492694941705c3","unresolved":false,"context_lines":[{"line_number":189,"context_line":"        del sg_rule[\u0027tenant_id\u0027]"},{"line_number":190,"context_line":"        self.nb_api.add_security_group_rules(sg_id, tenant_id,"},{"line_number":191,"context_line":"                                             sg_rules\u003d[sg_rule],"},{"line_number":192,"context_line":"                                             sg_version\u003dsg_version)"},{"line_number":193,"context_line":"        LOG.info(_LI(\"DFMechDriver: create security group rule in group %s\"),"},{"line_number":194,"context_line":"                 sg_id)"},{"line_number":195,"context_line":"        return sg_rule"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a6eadb0_8923d2a6","side":"PARENT","line":192,"range":{"start_line":192,"start_character":45,"end_line":192,"end_character":55},"updated":"2016-12-21 01:19:59.000000000","message":"I think it would be better to keep sg_version, this delivers the msg that this param is version of another object. And avoid confusion in case we want to elevate sg rule as nb db object.","commit_id":"dd946514f2313f12bb2cb417267c79576e399f50"},{"author":{"_account_id":20287,"name":"hujie","email":"mike.hu@huawei.com","username":"hujie"},"change_message_id":"fbedfa7de5ef42f04fffd8216103a1d17d9039b4","unresolved":false,"context_lines":[{"line_number":189,"context_line":"        del sg_rule[\u0027tenant_id\u0027]"},{"line_number":190,"context_line":"        self.nb_api.add_security_group_rules(sg_id, tenant_id,"},{"line_number":191,"context_line":"                                             sg_rules\u003d[sg_rule],"},{"line_number":192,"context_line":"                                             sg_version\u003dsg_version)"},{"line_number":193,"context_line":"        LOG.info(_LI(\"DFMechDriver: create security group rule in group %s\"),"},{"line_number":194,"context_line":"                 sg_id)"},{"line_number":195,"context_line":"        return sg_rule"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a6eadb0_03323e10","side":"PARENT","line":192,"range":{"start_line":192,"start_character":45,"end_line":192,"end_character":55},"in_reply_to":"1a6eadb0_8923d2a6","updated":"2016-12-21 03:26:59.000000000","message":"yes, if other sub-resource wants to have its own version number, we should distinguish the name of its version with its parent version, I\u0027ll try to find a better way to fix the issue, also the python27 error, thx:)","commit_id":"dd946514f2313f12bb2cb417267c79576e399f50"},{"author":{"_account_id":11159,"name":"Hong Hui Xiao","email":"honghui_xiao@yeah.net","username":"HongHuiXiao"},"change_message_id":"dd2e12ceb6ca75d2b81ba6bf5e492694941705c3","unresolved":false,"context_lines":[{"line_number":380,"context_line":"            net_id,"},{"line_number":381,"context_line":"            subnet[\u0027tenant_id\u0027],"},{"line_number":382,"context_line":"            name\u003dsubnet.get(\u0027name\u0027, df_const.DF_SUBNET_DEFAULT_NAME),"},{"line_number":383,"context_line":"            nw_version\u003dnetwork[\u0027revision_number\u0027],"},{"line_number":384,"context_line":"            enable_dhcp\u003dsubnet[\u0027enable_dhcp\u0027],"},{"line_number":385,"context_line":"            cidr\u003dsubnet[\u0027cidr\u0027],"},{"line_number":386,"context_line":"            dhcp_ip\u003ddhcp_ip,"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a6eadb0_c935cadb","side":"PARENT","line":383,"range":{"start_line":383,"start_character":12,"end_line":383,"end_character":22},"updated":"2016-12-21 01:19:59.000000000","message":"Same comment.","commit_id":"dd946514f2313f12bb2cb417267c79576e399f50"}],"dragonflow/neutron/services/l3_router_plugin.py":[{"author":{"_account_id":11159,"name":"Hong Hui Xiao","email":"honghui_xiao@yeah.net","username":"HongHuiXiao"},"change_message_id":"dd2e12ceb6ca75d2b81ba6bf5e492694941705c3","unresolved":false,"context_lines":[{"line_number":281,"context_line":"                                     result[\u0027id\u0027],"},{"line_number":282,"context_line":"                                     result[\u0027network_id\u0027],"},{"line_number":283,"context_line":"                                     result[\u0027tenant_id\u0027],"},{"line_number":284,"context_line":"                                     router_version\u003drouter_version,"},{"line_number":285,"context_line":"                                     mac\u003dport[\u0027mac_address\u0027],"},{"line_number":286,"context_line":"                                     network\u003dnetwork,"},{"line_number":287,"context_line":"                                     unique_key\u003dlogical_port.get_unique_key())"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a6eadb0_29747e9a","side":"PARENT","line":284,"range":{"start_line":284,"start_character":37,"end_line":284,"end_character":51},"updated":"2016-12-21 01:19:59.000000000","message":"Same comment.","commit_id":"dd946514f2313f12bb2cb417267c79576e399f50"}]}
