)]}'
{"doc/source/specs/db cluster consist.rst":[{"author":{"_account_id":13070,"name":"Eran Gampel","email":"eran@gampel.net","username":"Gampel"},"change_message_id":"fbe364d4aaff1e17df9ca4fea9a6d14742ce789e","unresolved":false,"context_lines":[{"line_number":1,"context_line":"This work is licensed under a Creative Commons Attribution 3.0 Unported\r"},{"line_number":2,"context_line":"License.\r"},{"line_number":3,"context_line":" \r"},{"line_number":4,"context_line":"http://creativecommons.org/licenses/by/3.0/legalcode\r"},{"line_number":5,"context_line":"\r"},{"line_number":6,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\r"}],"source_content_type":"text/x-rst","patch_set":1,"id":"7a5de9d1_fd80f9c0","line":3,"range":{"start_line":3,"start_character":0,"end_line":3,"end_character":1},"updated":"2016-01-31 19:40:22.000000000","message":"Please remove white spaces and line length should be max 80 char","commit_id":"53ff6294d0feed3be26545419f4cc54320d5f3c2"}],"doc/source/specs/db_cluster_consist.rst":[{"author":{"_account_id":11343,"name":"Gal Sagie","email":"gal.sagie@gmail.com","username":"GalSagie"},"change_message_id":"2d71a5889221215018f90e47c6f2fb1c7f307ba4","unresolved":false,"context_lines":[{"line_number":10,"context_line":"Neutron db and Dragonflow db, also the same problem exists between\r"},{"line_number":11,"context_line":"Dragonflow db and df local controller cache. It tries to keep data\r"},{"line_number":12,"context_line":"consistency in the whole system and keep the system working steady.\r"},{"line_number":13,"context_line":"\r"},{"line_number":14,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\r"},{"line_number":15,"context_line":"Problem Description\r"},{"line_number":16,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\r"}],"source_content_type":"text/x-rst","patch_set":4,"id":"3a57f1b5_0bd39305","line":13,"updated":"2016-02-11 13:23:54.000000000","message":"There are some problems both in the Neutron DB - Dragonflow DB sync and both for the \"Publish Subscribe\" sync proposed here.\n\nWe think that we came up with good design using some of Li Ma ideas and ours and some points found here and we are going to track this in this patch:\n\nhttps://review.openstack.org/#/c/268005/\n\nThis is currently a duplicate patch and maybe we should concentrate on finding one solution on the above patch.","commit_id":"a332b870db446e25936bc2b413a742ed320aed3c"},{"author":{"_account_id":20287,"name":"hujie","email":"mike.hu@huawei.com","username":"hujie"},"change_message_id":"37804e819ffa330eb497375882324adfb4f5f98d","unresolved":false,"context_lines":[{"line_number":10,"context_line":"Neutron db and Dragonflow db, also the same problem exists between\r"},{"line_number":11,"context_line":"Dragonflow db and df local controller cache. It tries to keep data\r"},{"line_number":12,"context_line":"consistency in the whole system and keep the system working steady.\r"},{"line_number":13,"context_line":"\r"},{"line_number":14,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\r"},{"line_number":15,"context_line":"Problem Description\r"},{"line_number":16,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\r"}],"source_content_type":"text/x-rst","patch_set":4,"id":"bae84128_69b6dd3e","line":13,"in_reply_to":"3a57f1b5_0bd39305","updated":"2016-02-19 09:35:44.000000000","message":"In Li Ma\u0027s spec, it only describe the data consistency mechanism between Neutron db and df db, but not refers to the data consistency between df db and local controller, however, we need a spec to contain the code which implement the data consistency between df db and local controller in our iteration 1 development(until feb 29th), so maybe I could describe these in my own spec and delete the content which describe in Li Ma\u0027s spec, what\u0027s your opinion?","commit_id":"a332b870db446e25936bc2b413a742ed320aed3c"},{"author":{"_account_id":20405,"name":"liuhaixia","email":"liuhaixia315@huawei.com","username":"liuhaixia"},"change_message_id":"f66582ba1a7622aa064601a320ac19a054a275dd","unresolved":false,"context_lines":[{"line_number":52,"context_line":"\r"},{"line_number":53,"context_line":"1. When initialize or restart the Neutron server cluster, once first\r"},{"line_number":54,"context_line":"Neutron server connects to Neutron db and DragonFlow db, it should do\r"},{"line_number":55,"context_line":"the data comparison between Neutron db and Dragonflow db, and then force\r"},{"line_number":56,"context_line":"to synchronize the data to Dragonflow db, while other Neutron servers will\r"},{"line_number":57,"context_line":"find the first Neutron server has done the data comparison and synchronize,\r"},{"line_number":58,"context_line":"so they will do nothing;\r"}],"source_content_type":"text/x-rst","patch_set":4,"id":"5a5ae5dd_82e31033","line":55,"range":{"start_line":55,"start_character":8,"end_line":55,"end_character":56},"updated":"2016-02-04 07:11:30.000000000","message":"If one process is comparing the data, while another process update a record. The process that does the comparing job find the same record need to be updated, so it overrides the record by mistake.\nHow does your solution solve this?","commit_id":"a332b870db446e25936bc2b413a742ed320aed3c"},{"author":{"_account_id":20405,"name":"liuhaixia","email":"liuhaixia315@huawei.com","username":"liuhaixia"},"change_message_id":"f66582ba1a7622aa064601a320ac19a054a275dd","unresolved":false,"context_lines":[{"line_number":54,"context_line":"Neutron server connects to Neutron db and DragonFlow db, it should do\r"},{"line_number":55,"context_line":"the data comparison between Neutron db and Dragonflow db, and then force\r"},{"line_number":56,"context_line":"to synchronize the data to Dragonflow db, while other Neutron servers will\r"},{"line_number":57,"context_line":"find the first Neutron server has done the data comparison and synchronize,\r"},{"line_number":58,"context_line":"so they will do nothing;\r"},{"line_number":59,"context_line":"\r"},{"line_number":60,"context_line":"2. When df plugin receive a create object(router\\network\\subnet\\port, etc)\r"},{"line_number":61,"context_line":"invoke, it commit the operation to Neutron db successfully, but failed to\r"}],"source_content_type":"text/x-rst","patch_set":4,"id":"5a5ae5dd_47676a25","line":58,"range":{"start_line":57,"start_character":0,"end_line":58,"end_character":24},"updated":"2016-02-04 07:11:30.000000000","message":"How do neturon servers know which is the first server?","commit_id":"a332b870db446e25936bc2b413a742ed320aed3c"},{"author":{"_account_id":20405,"name":"liuhaixia","email":"liuhaixia315@huawei.com","username":"liuhaixia"},"change_message_id":"f66582ba1a7622aa064601a320ac19a054a275dd","unresolved":false,"context_lines":[{"line_number":76,"context_line":"4. Optionally, we could develop and deploy a simple program to do the data\r"},{"line_number":77,"context_line":"comparison between Neutron db and Dragonflow db periodically, if the program\r"},{"line_number":78,"context_line":"find the different data between the db cluster, it should report warning to\r"},{"line_number":79,"context_line":"operation and maintenance system, the warning should contain the key info\r"},{"line_number":80,"context_line":"of founded different data;\r"},{"line_number":81,"context_line":"\r"},{"line_number":82,"context_line":"5. When we deploy multi Neutron plugins, maybe we need db lock to avoid data\r"},{"line_number":83,"context_line":"rewrite by multi db client, the db lock could be provided by db cluster\r"}],"source_content_type":"text/x-rst","patch_set":4,"id":"5a5ae5dd_d9781e2e","line":80,"range":{"start_line":79,"start_character":1,"end_line":80,"end_character":26},"updated":"2016-02-04 07:11:30.000000000","message":"When the operator gets the warning, how should he do?","commit_id":"a332b870db446e25936bc2b413a742ed320aed3c"},{"author":{"_account_id":20405,"name":"liuhaixia","email":"liuhaixia315@huawei.com","username":"liuhaixia"},"change_message_id":"f66582ba1a7622aa064601a320ac19a054a275dd","unresolved":false,"context_lines":[{"line_number":101,"context_line":"create\\update\\delete\\get, etc, if it failed to operate Dragonflow db,\r"},{"line_number":102,"context_line":"it would attempt several times (could be configured) to commit the\r"},{"line_number":103,"context_line":"operation, if failed after all the attempts, local controller should\r"},{"line_number":104,"context_line":"report error and give up this operation because it has been a\r"},{"line_number":105,"context_line":"isolated island;\r"},{"line_number":106,"context_line":"\r"},{"line_number":107,"context_line":"3. When Dragonflow db driver find that the exception between local\r"},{"line_number":108,"context_line":"controller and Dragonflow db has been fixed, it should notify local\r"}],"source_content_type":"text/x-rst","patch_set":4,"id":"5a5ae5dd_4a320a12","line":105,"range":{"start_line":104,"start_character":0,"end_line":105,"end_character":16},"updated":"2016-02-04 07:11:30.000000000","message":"If the adminsitator or tenant  gets the error ,fixed this issue, how can he recover the lost data?","commit_id":"a332b870db446e25936bc2b413a742ed320aed3c"}]}
