)]}'
{"dragonflow/controller/df_db_objects_refresh.py":[{"author":{"_account_id":20229,"name":"Omer Anson","email":"omer.anson@toganetworks.com","username":"oanson"},"change_message_id":"f38b7811c8677fd0ce31a640dc9d1cbdda4b1f50","unresolved":false,"context_lines":[{"line_number":38,"context_line":"        \"\"\"Reads the objects IDs from the cache.\"\"\""},{"line_number":39,"context_line":"        self.object_ids_to_remove \u003d set(self.cache_read_ids_callback(topic))"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"    def get_id(self, obj):"},{"line_number":42,"context_line":"        try:"},{"line_number":43,"context_line":"            return obj.id"},{"line_number":44,"context_line":"        except AttributeError:"}],"source_content_type":"text/x-python","patch_set":16,"id":"1a430d35_43749334","line":41,"updated":"2017-02-04 20:56:35.000000000","message":"Is there a plan to remove this method (and just use obj.id) once all \u0027legacy\u0027 models are migrated? Either way, this needs to be documented.","commit_id":"835fcc02783537d6a00a69ccad8d721e7fc125a2"},{"author":{"_account_id":23766,"name":"Dima Kuznetsov","email":"dima.kuznetsov@toganetworks.com","username":"dimak"},"change_message_id":"ab5c4c7153b8d8e0f7ae8aad674f37b2494c0c47","unresolved":false,"context_lines":[{"line_number":38,"context_line":"        \"\"\"Reads the objects IDs from the cache.\"\"\""},{"line_number":39,"context_line":"        self.object_ids_to_remove \u003d set(self.cache_read_ids_callback(topic))"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"    def get_id(self, obj):"},{"line_number":42,"context_line":"        try:"},{"line_number":43,"context_line":"            return obj.id"},{"line_number":44,"context_line":"        except AttributeError:"}],"source_content_type":"text/x-python","patch_set":16,"id":"1a430d35_4f12f2b5","line":41,"in_reply_to":"1a430d35_43749334","updated":"2017-02-05 06:48:26.000000000","message":"Yes, I\u0027ll put a remark in the docstring to remove this.\n\nThis will have to be done as part of the object refresher refactor:\n\n * support of topicless models\n * calculating dependencies between models and updating by specific order.","commit_id":"835fcc02783537d6a00a69ccad8d721e7fc125a2"},{"author":{"_account_id":6598,"name":"Berezovsky Irena","email":"irenab.dev@gmail.com","username":"irenab"},"change_message_id":"94ef0e32044c93238025d2b7ad86f0d16f3526a9","unresolved":false,"context_lines":[{"line_number":39,"context_line":"        self.object_ids_to_remove \u003d set(self.cache_read_ids_callback(topic))"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"    def get_id(self, obj):"},{"line_number":42,"context_line":"        \u0027\u0027\u0027(dimak) This is an adapter to support both new and old style models,"},{"line_number":43,"context_line":"           remove once transition is done."},{"line_number":44,"context_line":"        \u0027\u0027\u0027"},{"line_number":45,"context_line":"        try:"}],"source_content_type":"text/x-python","patch_set":18,"id":"1a430d35_ef069084","line":42,"range":{"start_line":42,"start_character":11,"end_line":42,"end_character":18},"updated":"2017-02-09 06:04:01.000000000","message":"any TODO/FIXME?","commit_id":"c47b92e95184a565a02b0ec1ba7d072a3de93e49"},{"author":{"_account_id":23766,"name":"Dima Kuznetsov","email":"dima.kuznetsov@toganetworks.com","username":"dimak"},"change_message_id":"6cbeb24e4c935624f1e7a8c565aafdb3779ccb5a","unresolved":false,"context_lines":[{"line_number":39,"context_line":"        self.object_ids_to_remove \u003d set(self.cache_read_ids_callback(topic))"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"    def get_id(self, obj):"},{"line_number":42,"context_line":"        \u0027\u0027\u0027(dimak) This is an adapter to support both new and old style models,"},{"line_number":43,"context_line":"           remove once transition is done."},{"line_number":44,"context_line":"        \u0027\u0027\u0027"},{"line_number":45,"context_line":"        try:"}],"source_content_type":"text/x-python","patch_set":18,"id":"1a430d35_32755363","line":42,"range":{"start_line":42,"start_character":11,"end_line":42,"end_character":18},"in_reply_to":"1a430d35_ef069084","updated":"2017-02-09 11:34:03.000000000","message":"Yes, will add TODO to the comment","commit_id":"c47b92e95184a565a02b0ec1ba7d072a3de93e49"},{"author":{"_account_id":20229,"name":"Omer Anson","email":"omer.anson@toganetworks.com","username":"oanson"},"change_message_id":"8189fbd7a3b460e460a96abb39055c21ae10c53b","unresolved":false,"context_lines":[{"line_number":48,"context_line":"        \"\"\""},{"line_number":49,"context_line":"        for obj in self.db_read_objects_callback(topic):"},{"line_number":50,"context_line":"            self.cache_update_object_callback(obj)"},{"line_number":51,"context_line":"            self.object_ids_to_remove.discard(obj.id)"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"    def delete(self):"},{"line_number":54,"context_line":"        \"\"\"Does the actual removal of the objects marked for removal."}],"source_content_type":"text/x-python","patch_set":38,"id":"da36d5c6_a4f55bcc","line":51,"updated":"2017-02-28 11:11:53.000000000","message":"I thought get_id(obj) was needed to support both legacy and new models?","commit_id":"552011c2f64a475e68e658b86855a5987bc2f0a9"},{"author":{"_account_id":20229,"name":"Omer Anson","email":"omer.anson@toganetworks.com","username":"oanson"},"change_message_id":"ded4b98b5eea10accc2ab88a16b0d909d6ee5978","unresolved":false,"context_lines":[{"line_number":48,"context_line":"        \"\"\""},{"line_number":49,"context_line":"        for obj in self.db_read_objects_callback(topic):"},{"line_number":50,"context_line":"            self.cache_update_object_callback(obj)"},{"line_number":51,"context_line":"            self.object_ids_to_remove.discard(obj.id)"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"    def delete(self):"},{"line_number":54,"context_line":"        \"\"\"Does the actual removal of the objects marked for removal."}],"source_content_type":"text/x-python","patch_set":38,"id":"ba2be162_679ff003","line":51,"in_reply_to":"da36d5c6_a4f55bcc","updated":"2017-03-01 05:17:44.000000000","message":"Please ignore. Missed the addition of id property to legacy models","commit_id":"552011c2f64a475e68e658b86855a5987bc2f0a9"},{"author":{"_account_id":11159,"name":"Hong Hui Xiao","email":"honghui_xiao@yeah.net","username":"HongHuiXiao"},"change_message_id":"a19fdbac8dd99eca3af24227dd72a90da6e68145","unresolved":false,"context_lines":[{"line_number":106,"context_line":"                                   df_controller.delete_activeport))"},{"line_number":107,"context_line":""},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"def add_refresher(refresher):"},{"line_number":110,"context_line":"    items.append(refresher)"},{"line_number":111,"context_line":""},{"line_number":112,"context_line":""},{"line_number":113,"context_line":"def sync_local_cache_from_nb_db(topics\u003dNone):"}],"source_content_type":"text/x-python","patch_set":38,"id":"ba2be162_7a0cec42","line":110,"range":{"start_line":109,"start_character":0,"end_line":110,"end_character":27},"updated":"2017-03-01 01:39:19.000000000","message":"What is this function for?","commit_id":"552011c2f64a475e68e658b86855a5987bc2f0a9"},{"author":{"_account_id":23766,"name":"Dima Kuznetsov","email":"dima.kuznetsov@toganetworks.com","username":"dimak"},"change_message_id":"2e4f7028256808efe929442b3f0d505a64d476c3","unresolved":false,"context_lines":[{"line_number":106,"context_line":"                                   df_controller.delete_activeport))"},{"line_number":107,"context_line":""},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"def add_refresher(refresher):"},{"line_number":110,"context_line":"    items.append(refresher)"},{"line_number":111,"context_line":""},{"line_number":112,"context_line":""},{"line_number":113,"context_line":"def sync_local_cache_from_nb_db(topics\u003dNone):"}],"source_content_type":"text/x-python","patch_set":38,"id":"ba2be162_d3c13a82","line":110,"range":{"start_line":109,"start_character":0,"end_line":110,"end_character":27},"in_reply_to":"ba2be162_7a0cec42","updated":"2017-03-01 07:45:05.000000000","message":"It is used in https://review.openstack.org/#/c/436562/11/dragonflow/controller/df_local_controller.py\n\nI don\u0027t mind squashing the two commits if that\u0027s preferable.","commit_id":"552011c2f64a475e68e658b86855a5987bc2f0a9"},{"author":{"_account_id":23766,"name":"Dima Kuznetsov","email":"dima.kuznetsov@toganetworks.com","username":"dimak"},"change_message_id":"70ef576f9afc34fad101d9e2d497b1db19233000","unresolved":false,"context_lines":[{"line_number":106,"context_line":"                                   df_controller.delete_activeport))"},{"line_number":107,"context_line":""},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"def add_refresher(refresher):"},{"line_number":110,"context_line":"    items.append(refresher)"},{"line_number":111,"context_line":""},{"line_number":112,"context_line":""},{"line_number":113,"context_line":"def sync_local_cache_from_nb_db(topics\u003dNone):"}],"source_content_type":"text/x-python","patch_set":38,"id":"ba2be162_de3ce131","line":110,"range":{"start_line":109,"start_character":0,"end_line":110,"end_character":27},"in_reply_to":"ba2be162_d3221ab9","updated":"2017-03-01 08:27:27.000000000","message":"I\u0027ll squash the two then :)","commit_id":"552011c2f64a475e68e658b86855a5987bc2f0a9"},{"author":{"_account_id":11159,"name":"Hong Hui Xiao","email":"honghui_xiao@yeah.net","username":"HongHuiXiao"},"change_message_id":"b6c36ea4838fe8ca5a2eab31974116ca2e36e41f","unresolved":false,"context_lines":[{"line_number":106,"context_line":"                                   df_controller.delete_activeport))"},{"line_number":107,"context_line":""},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"def add_refresher(refresher):"},{"line_number":110,"context_line":"    items.append(refresher)"},{"line_number":111,"context_line":""},{"line_number":112,"context_line":""},{"line_number":113,"context_line":"def sync_local_cache_from_nb_db(topics\u003dNone):"}],"source_content_type":"text/x-python","patch_set":38,"id":"ba2be162_d3221ab9","line":110,"range":{"start_line":109,"start_character":0,"end_line":110,"end_character":27},"in_reply_to":"ba2be162_d3c13a82","updated":"2017-03-01 08:08:21.000000000","message":"If it is used in another patch, it would be better to add it in that patch. Squashing the two patches looks better, or else this patch will be too trivial.","commit_id":"552011c2f64a475e68e658b86855a5987bc2f0a9"}]}
