)]}'
{"doc/source/api-service-class-diagram.pu":[{"author":{"_account_id":13070,"name":"Eran Gampel","email":"eran@gampel.net","username":"Gampel"},"change_message_id":"1fa0bb6f62181a762df1397df965189fcb4bf98d","unresolved":false,"context_lines":[{"line_number":10,"context_line":"class ProvidersController extends wsgi.Controller{"},{"line_number":11,"context_line":"  +index(self, req):[]Provider"},{"line_number":12,"context_line":"  +show(self, req, provider_id:String):Provider"},{"line_number":13,"context_line":"  +index_checkpoints(self, req, provider_id:String):[]Checkpoint  "},{"line_number":14,"context_line":"  +create_checkpoint(self, req, body:JSON, provider_id:String):Checkpoint"},{"line_number":15,"context_line":"  +show_checkpoint(self, req, provider_id:String, checkpoint_id:String):):Checkpoint   "},{"line_number":16,"context_line":"  +delete_checkpoint(self, req, provider_id:String, checkpoint_id:String):):void"}],"source_content_type":"application/octet-stream","patch_set":3,"id":"da6ed579_ab789f2c","line":13,"range":{"start_line":13,"start_character":64,"end_line":13,"end_character":66},"updated":"2016-01-16 09:09:42.000000000","message":"Please remove trailing white spaces","commit_id":"44a2070f073351135494ae6d412f47b226388221"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"2d76a39095052f00f1ae7cc60a398ec02c922e0c","unresolved":false,"context_lines":[{"line_number":10,"context_line":"class ProvidersController extends wsgi.Controller{"},{"line_number":11,"context_line":"  +index(self, req):[]Provider"},{"line_number":12,"context_line":"  +show(self, req, provider_id:String):Provider"},{"line_number":13,"context_line":"  +index_checkpoints(self, req, provider_id:String):[]Checkpoint  "},{"line_number":14,"context_line":"  +create_checkpoint(self, req, body:JSON, provider_id:String):Checkpoint"},{"line_number":15,"context_line":"  +show_checkpoint(self, req, provider_id:String, checkpoint_id:String):):Checkpoint   "},{"line_number":16,"context_line":"  +delete_checkpoint(self, req, provider_id:String, checkpoint_id:String):):void"}],"source_content_type":"application/octet-stream","patch_set":3,"id":"da6ed579_627393b5","line":13,"range":{"start_line":13,"start_character":64,"end_line":13,"end_character":66},"in_reply_to":"da6ed579_ab789f2c","updated":"2016-01-18 03:06:51.000000000","message":"Done","commit_id":"44a2070f073351135494ae6d412f47b226388221"},{"author":{"_account_id":13070,"name":"Eran Gampel","email":"eran@gampel.net","username":"Gampel"},"change_message_id":"1fa0bb6f62181a762df1397df965189fcb4bf98d","unresolved":false,"context_lines":[{"line_number":12,"context_line":"  +show(self, req, provider_id:String):Provider"},{"line_number":13,"context_line":"  +index_checkpoints(self, req, provider_id:String):[]Checkpoint  "},{"line_number":14,"context_line":"  +create_checkpoint(self, req, body:JSON, provider_id:String):Checkpoint"},{"line_number":15,"context_line":"  +show_checkpoint(self, req, provider_id:String, checkpoint_id:String):):Checkpoint   "},{"line_number":16,"context_line":"  +delete_checkpoint(self, req, provider_id:String, checkpoint_id:String):):void"},{"line_number":17,"context_line":"}"},{"line_number":18,"context_line":""}],"source_content_type":"application/octet-stream","patch_set":3,"id":"da6ed579_6b72a74b","line":15,"range":{"start_line":15,"start_character":84,"end_line":15,"end_character":87},"updated":"2016-01-16 09:09:42.000000000","message":"ditto","commit_id":"44a2070f073351135494ae6d412f47b226388221"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"2d76a39095052f00f1ae7cc60a398ec02c922e0c","unresolved":false,"context_lines":[{"line_number":12,"context_line":"  +show(self, req, provider_id:String):Provider"},{"line_number":13,"context_line":"  +index_checkpoints(self, req, provider_id:String):[]Checkpoint  "},{"line_number":14,"context_line":"  +create_checkpoint(self, req, body:JSON, provider_id:String):Checkpoint"},{"line_number":15,"context_line":"  +show_checkpoint(self, req, provider_id:String, checkpoint_id:String):):Checkpoint   "},{"line_number":16,"context_line":"  +delete_checkpoint(self, req, provider_id:String, checkpoint_id:String):):void"},{"line_number":17,"context_line":"}"},{"line_number":18,"context_line":""}],"source_content_type":"application/octet-stream","patch_set":3,"id":"da6ed579_82780791","line":15,"range":{"start_line":15,"start_character":84,"end_line":15,"end_character":87},"in_reply_to":"da6ed579_6b72a74b","updated":"2016-01-18 03:06:51.000000000","message":"Done","commit_id":"44a2070f073351135494ae6d412f47b226388221"},{"author":{"_account_id":2023,"name":"Saggi Mizrahi","email":"ficoos+osreview@gmail.com","username":"ficoos"},"change_message_id":"d2d857cf72027ee0c4936d99da93525ad39d698a","unresolved":false,"context_lines":[{"line_number":10,"context_line":"class ProvidersController extends wsgi.Controller{"},{"line_number":11,"context_line":"  +index(self, req):[]Provider"},{"line_number":12,"context_line":"  +show(self, req, provider_id:String):Provider"},{"line_number":13,"context_line":"  +index_checkpoints(self, req, provider_id:String):[]Checkpoint"},{"line_number":14,"context_line":"  +create_checkpoint(self, req, body:JSON, provider_id:String):Checkpoint"},{"line_number":15,"context_line":"  +show_checkpoint(self, req, provider_id:String, checkpoint_id:String):):Checkpoint"},{"line_number":16,"context_line":"  +delete_checkpoint(self, req, provider_id:String, checkpoint_id:String):):void"},{"line_number":17,"context_line":"}"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":""}],"source_content_type":"application/octet-stream","patch_set":8,"id":"9a68dd71_bc10eb4f","line":16,"range":{"start_line":13,"start_character":0,"end_line":16,"end_character":80},"updated":"2016-01-20 16:14:00.000000000","message":"Shouldn\u0027t these be part of a checkpoints controller?","commit_id":"b937bbe6d9e8f9fcc58b14766248d11487d4ec3f"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"1d90e0623dc72e92008a89b59334ab8b09f39a20","unresolved":false,"context_lines":[{"line_number":10,"context_line":"class ProvidersController extends wsgi.Controller{"},{"line_number":11,"context_line":"  +index(self, req):[]Provider"},{"line_number":12,"context_line":"  +show(self, req, provider_id:String):Provider"},{"line_number":13,"context_line":"  +index_checkpoints(self, req, provider_id:String):[]Checkpoint"},{"line_number":14,"context_line":"  +create_checkpoint(self, req, body:JSON, provider_id:String):Checkpoint"},{"line_number":15,"context_line":"  +show_checkpoint(self, req, provider_id:String, checkpoint_id:String):):Checkpoint"},{"line_number":16,"context_line":"  +delete_checkpoint(self, req, provider_id:String, checkpoint_id:String):):void"},{"line_number":17,"context_line":"}"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":""}],"source_content_type":"application/octet-stream","patch_set":8,"id":"9a68dd71_921c8c78","line":16,"range":{"start_line":13,"start_character":0,"end_line":16,"end_character":80},"in_reply_to":"9a68dd71_bc10eb4f","updated":"2016-01-22 09:00:30.000000000","message":"OK I will addd checkpoints controller. I think it will better.","commit_id":"b937bbe6d9e8f9fcc58b14766248d11487d4ec3f"},{"author":{"_account_id":16203,"name":"zengyingzhe","email":"zengyingzhe@huawei.com","username":"zengyingzhe"},"change_message_id":"5c9ef9784bf2e51e2fea47fb7562f11095dacbd7","unresolved":false,"context_lines":[{"line_number":19,"context_line":""},{"line_number":20,"context_line":"class ProtectablesController extends wsgi.Controller{"},{"line_number":21,"context_line":"  +index(self, req):[]Protectable"},{"line_number":22,"context_line":"  +show(self, req, protectable_type:String):[]Protectable"},{"line_number":23,"context_line":"  +index_instances(self, req, protectable_type:String):[]Resource"},{"line_number":24,"context_line":"}"},{"line_number":25,"context_line":""}],"source_content_type":"application/octet-stream","patch_set":8,"id":"ba63e191_c46dc133","line":22,"range":{"start_line":22,"start_character":44,"end_line":22,"end_character":46},"updated":"2016-01-19 06:15:57.000000000","message":"The return value is a list?","commit_id":"b937bbe6d9e8f9fcc58b14766248d11487d4ec3f"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"1d90e0623dc72e92008a89b59334ab8b09f39a20","unresolved":false,"context_lines":[{"line_number":19,"context_line":""},{"line_number":20,"context_line":"class ProtectablesController extends wsgi.Controller{"},{"line_number":21,"context_line":"  +index(self, req):[]Protectable"},{"line_number":22,"context_line":"  +show(self, req, protectable_type:String):[]Protectable"},{"line_number":23,"context_line":"  +index_instances(self, req, protectable_type:String):[]Resource"},{"line_number":24,"context_line":"}"},{"line_number":25,"context_line":""}],"source_content_type":"application/octet-stream","patch_set":8,"id":"9a68dd71_c619e97a","line":22,"range":{"start_line":22,"start_character":44,"end_line":22,"end_character":46},"in_reply_to":"ba63e191_c46dc133","updated":"2016-01-22 09:00:30.000000000","message":"yes, show method response list Protectables API.","commit_id":"b937bbe6d9e8f9fcc58b14766248d11487d4ec3f"},{"author":{"_account_id":16203,"name":"zengyingzhe","email":"zengyingzhe@huawei.com","username":"zengyingzhe"},"change_message_id":"5c9ef9784bf2e51e2fea47fb7562f11095dacbd7","unresolved":false,"context_lines":[{"line_number":27,"context_line":"  +create(self, req, body:JSON):Plan"},{"line_number":28,"context_line":"  +index(self, req):[]Plan"},{"line_number":29,"context_line":"  +show(self, req, id:String):Plan"},{"line_number":30,"context_line":"  +delete(self, req, id:String):void"},{"line_number":31,"context_line":"}"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"class ScheduledOperationsController extends wsgi.Controller{"}],"source_content_type":"application/octet-stream","patch_set":8,"id":"ba63e191_2414ddf3","line":30,"updated":"2016-01-19 06:15:57.000000000","message":"Missing the update method.","commit_id":"b937bbe6d9e8f9fcc58b14766248d11487d4ec3f"},{"author":{"_account_id":16203,"name":"zengyingzhe","email":"zengyingzhe@huawei.com","username":"zengyingzhe"},"change_message_id":"5c9ef9784bf2e51e2fea47fb7562f11095dacbd7","unresolved":false,"context_lines":[{"line_number":34,"context_line":"  +create(self, req, body:JSON):ScheduledOperation"},{"line_number":35,"context_line":"  +index(self, req):[]ScheduledOperation"},{"line_number":36,"context_line":"  +show(self, req, id:String):ScheduledOperation"},{"line_number":37,"context_line":"  +delete(self, req, id:String):void"},{"line_number":38,"context_line":"}"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":""}],"source_content_type":"application/octet-stream","patch_set":8,"id":"ba63e191_57798192","line":37,"updated":"2016-01-19 06:15:57.000000000","message":"Missing the update method.","commit_id":"b937bbe6d9e8f9fcc58b14766248d11487d4ec3f"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"1d90e0623dc72e92008a89b59334ab8b09f39a20","unresolved":false,"context_lines":[{"line_number":34,"context_line":"  +create(self, req, body:JSON):ScheduledOperation"},{"line_number":35,"context_line":"  +index(self, req):[]ScheduledOperation"},{"line_number":36,"context_line":"  +show(self, req, id:String):ScheduledOperation"},{"line_number":37,"context_line":"  +delete(self, req, id:String):void"},{"line_number":38,"context_line":"}"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":""}],"source_content_type":"application/octet-stream","patch_set":8,"id":"9a68dd71_e63bcdcf","line":37,"in_reply_to":"ba63e191_57798192","updated":"2016-01-22 09:00:30.000000000","message":"I will add it.","commit_id":"b937bbe6d9e8f9fcc58b14766248d11487d4ec3f"},{"author":{"_account_id":16203,"name":"zengyingzhe","email":"zengyingzhe@huawei.com","username":"zengyingzhe"},"change_message_id":"5c9ef9784bf2e51e2fea47fb7562f11095dacbd7","unresolved":false,"context_lines":[{"line_number":48,"context_line":"  +create(self, req, body:JSON):Trigger"},{"line_number":49,"context_line":"  +index(self, req):[]Trigger"},{"line_number":50,"context_line":"  +show(self, req, id:String):Trigger"},{"line_number":51,"context_line":"  +delete(self, req, id:String):void"},{"line_number":52,"context_line":"}"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"@enduml"}],"source_content_type":"application/octet-stream","patch_set":8,"id":"ba63e191_f76d15cd","line":51,"updated":"2016-01-19 06:15:57.000000000","message":"Missing the update method.","commit_id":"b937bbe6d9e8f9fcc58b14766248d11487d4ec3f"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"1d90e0623dc72e92008a89b59334ab8b09f39a20","unresolved":false,"context_lines":[{"line_number":48,"context_line":"  +create(self, req, body:JSON):Trigger"},{"line_number":49,"context_line":"  +index(self, req):[]Trigger"},{"line_number":50,"context_line":"  +show(self, req, id:String):Trigger"},{"line_number":51,"context_line":"  +delete(self, req, id:String):void"},{"line_number":52,"context_line":"}"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"@enduml"}],"source_content_type":"application/octet-stream","patch_set":8,"id":"ba63e191_33e736e6","line":51,"in_reply_to":"ba63e191_f76d15cd","updated":"2016-01-22 09:00:30.000000000","message":"We do not have a  updating Triggers RESTAPI.","commit_id":"b937bbe6d9e8f9fcc58b14766248d11487d4ec3f"}],"doc/source/specs/api-service.rst":[{"author":{"_account_id":13070,"name":"Eran Gampel","email":"eran@gampel.net","username":"Gampel"},"change_message_id":"1fa0bb6f62181a762df1397df965189fcb4bf98d","unresolved":false,"context_lines":[{"line_number":5,"context_line":" http://creativecommons.org/licenses/by/3.0/legalcode"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":8,"context_line":"API Service "},{"line_number":9,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"https://review.openstack.org/#/c/266338/"}],"source_content_type":"text/x-rst","patch_set":3,"id":"da6ed579_4b0243b6","line":8,"range":{"start_line":8,"start_character":11,"end_line":8,"end_character":12},"updated":"2016-01-16 09:09:42.000000000","message":"Please remove trialing white spaces\n\nThere are many in the doc please remove them all","commit_id":"44a2070f073351135494ae6d412f47b226388221"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"2d76a39095052f00f1ae7cc60a398ec02c922e0c","unresolved":false,"context_lines":[{"line_number":5,"context_line":" http://creativecommons.org/licenses/by/3.0/legalcode"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":8,"context_line":"API Service "},{"line_number":9,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"https://review.openstack.org/#/c/266338/"}],"source_content_type":"text/x-rst","patch_set":3,"id":"da6ed579_42720faf","line":8,"range":{"start_line":8,"start_character":11,"end_line":8,"end_character":12},"in_reply_to":"da6ed579_4b0243b6","updated":"2016-01-18 03:06:51.000000000","message":"Done","commit_id":"44a2070f073351135494ae6d412f47b226388221"},{"author":{"_account_id":13070,"name":"Eran Gampel","email":"eran@gampel.net","username":"Gampel"},"change_message_id":"1fa0bb6f62181a762df1397df965189fcb4bf98d","unresolved":false,"context_lines":[{"line_number":71,"context_line":""},{"line_number":72,"context_line":"This API enables the Smaug user to manage Triggers:"},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"-  Trigger CRUD."},{"line_number":75,"context_line":"-  List Triggers."},{"line_number":76,"context_line":""},{"line_number":77,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"da6ed579_2ba58fb4","line":74,"range":{"start_line":74,"start_character":11,"end_line":74,"end_character":15},"updated":"2016-01-16 09:09:42.000000000","message":"When deleting a Trigger it should not be used in any of the scheduled operation \n\nWe should return an error if it does","commit_id":"44a2070f073351135494ae6d412f47b226388221"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"2d76a39095052f00f1ae7cc60a398ec02c922e0c","unresolved":false,"context_lines":[{"line_number":71,"context_line":""},{"line_number":72,"context_line":"This API enables the Smaug user to manage Triggers:"},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"-  Trigger CRUD."},{"line_number":75,"context_line":"-  List Triggers."},{"line_number":76,"context_line":""},{"line_number":77,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"da6ed579_e2f8e3c6","line":74,"range":{"start_line":74,"start_character":11,"end_line":74,"end_character":15},"in_reply_to":"da6ed579_2ba58fb4","updated":"2016-01-18 03:06:51.000000000","message":"Done","commit_id":"44a2070f073351135494ae6d412f47b226388221"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"2d76a39095052f00f1ae7cc60a398ec02c922e0c","unresolved":false,"context_lines":[{"line_number":71,"context_line":""},{"line_number":72,"context_line":"This API enables the Smaug user to manage Triggers:"},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"-  Trigger CRUD."},{"line_number":75,"context_line":"-  List Triggers."},{"line_number":76,"context_line":""},{"line_number":77,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"da6ed579_c28fdfca","line":74,"range":{"start_line":74,"start_character":11,"end_line":74,"end_character":15},"in_reply_to":"da6ed579_2ba58fb4","updated":"2016-01-18 03:06:51.000000000","message":"I will add these description.","commit_id":"44a2070f073351135494ae6d412f47b226388221"},{"author":{"_account_id":13070,"name":"Eran Gampel","email":"eran@gampel.net","username":"Gampel"},"change_message_id":"1fa0bb6f62181a762df1397df965189fcb4bf98d","unresolved":false,"context_lines":[{"line_number":104,"context_line":"| created_at              | Datetime     | NO   |     | NULL    |       |"},{"line_number":105,"context_line":"| updated_at              | Datetime     | NO   |     | NULL    |       |"},{"line_number":106,"context_line":"| deleted_at              | Datetime     | NO   |     | NULL    |       |"},{"line_number":107,"context_line":"| deleted                 | Boolean      | NO   |     | NULL    |       |"},{"line_number":108,"context_line":"+-------------------------+--------------+------+-----+---------+-------+"},{"line_number":109,"context_line":""},{"line_number":110,"context_line":"1. restorations"}],"source_content_type":"text/x-rst","patch_set":3,"id":"da6ed579_4bf003ca","line":107,"range":{"start_line":107,"start_character":2,"end_line":107,"end_character":9},"updated":"2016-01-16 09:09:42.000000000","message":"Why do we need to keep deleted plan in the DB ?","commit_id":"44a2070f073351135494ae6d412f47b226388221"},{"author":{"_account_id":13070,"name":"Eran Gampel","email":"eran@gampel.net","username":"Gampel"},"change_message_id":"1fa0bb6f62181a762df1397df965189fcb4bf98d","unresolved":false,"context_lines":[{"line_number":107,"context_line":"| deleted                 | Boolean      | NO   |     | NULL    |       |"},{"line_number":108,"context_line":"+-------------------------+--------------+------+-----+---------+-------+"},{"line_number":109,"context_line":""},{"line_number":110,"context_line":"1. restorations"},{"line_number":111,"context_line":"+-----------------+--------------+------+-----+---------+-------+"},{"line_number":112,"context_line":"| Field           | Type         | Null | Key | Default | Extra |"},{"line_number":113,"context_line":"+-----------------+--------------+------+-----+---------+-------+"}],"source_content_type":"text/x-rst","patch_set":3,"id":"da6ed579_6b1627f3","line":110,"range":{"start_line":110,"start_character":3,"end_line":110,"end_character":15},"updated":"2016-01-16 09:09:42.000000000","message":"we should change the name to restore restorations has a different meaning I will update everyone","commit_id":"44a2070f073351135494ae6d412f47b226388221"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"2d76a39095052f00f1ae7cc60a398ec02c922e0c","unresolved":false,"context_lines":[{"line_number":107,"context_line":"| deleted                 | Boolean      | NO   |     | NULL    |       |"},{"line_number":108,"context_line":"+-------------------------+--------------+------+-----+---------+-------+"},{"line_number":109,"context_line":""},{"line_number":110,"context_line":"1. restorations"},{"line_number":111,"context_line":"+-----------------+--------------+------+-----+---------+-------+"},{"line_number":112,"context_line":"| Field           | Type         | Null | Key | Default | Extra |"},{"line_number":113,"context_line":"+-----------------+--------------+------+-----+---------+-------+"}],"source_content_type":"text/x-rst","patch_set":3,"id":"da6ed579_a2a98b26","line":110,"range":{"start_line":110,"start_character":3,"end_line":110,"end_character":15},"in_reply_to":"da6ed579_6b1627f3","updated":"2016-01-18 03:06:51.000000000","message":"I will update this change.","commit_id":"44a2070f073351135494ae6d412f47b226388221"},{"author":{"_account_id":13070,"name":"Eran Gampel","email":"eran@gampel.net","username":"Gampel"},"change_message_id":"1fa0bb6f62181a762df1397df965189fcb4bf98d","unresolved":false,"context_lines":[{"line_number":121,"context_line":"| created_at      | Datetime     | NO   |     | NULL    |       |"},{"line_number":122,"context_line":"+-----------------+--------------+------+-----+---------+-------+"},{"line_number":123,"context_line":""},{"line_number":124,"context_line":"3. triggers"},{"line_number":125,"context_line":"+--------------------+--------------+------+-----+---------+-------+"},{"line_number":126,"context_line":"| Field              | Type         | Null | Key | Default | Extra |"},{"line_number":127,"context_line":"+--------------------+--------------+------+-----+---------+-------+"}],"source_content_type":"text/x-rst","patch_set":3,"id":"da6ed579_ebb777f3","line":124,"range":{"start_line":124,"start_character":3,"end_line":124,"end_character":11},"updated":"2016-01-16 09:09:42.000000000","message":"time triggers","commit_id":"44a2070f073351135494ae6d412f47b226388221"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"2d76a39095052f00f1ae7cc60a398ec02c922e0c","unresolved":false,"context_lines":[{"line_number":121,"context_line":"| created_at      | Datetime     | NO   |     | NULL    |       |"},{"line_number":122,"context_line":"+-----------------+--------------+------+-----+---------+-------+"},{"line_number":123,"context_line":""},{"line_number":124,"context_line":"3. triggers"},{"line_number":125,"context_line":"+--------------------+--------------+------+-----+---------+-------+"},{"line_number":126,"context_line":"| Field              | Type         | Null | Key | Default | Extra |"},{"line_number":127,"context_line":"+--------------------+--------------+------+-----+---------+-------+"}],"source_content_type":"text/x-rst","patch_set":3,"id":"da6ed579_6262b318","line":124,"range":{"start_line":124,"start_character":3,"end_line":124,"end_character":11},"in_reply_to":"da6ed579_ebb777f3","updated":"2016-01-18 03:06:51.000000000","message":"Done","commit_id":"44a2070f073351135494ae6d412f47b226388221"},{"author":{"_account_id":13070,"name":"Eran Gampel","email":"eran@gampel.net","username":"Gampel"},"change_message_id":"95574aa4326af2a42d24a5b0db69c2f39711ad92","unresolved":false,"context_lines":[{"line_number":137,"context_line":"| deleted            | Boolean      | NO   |     | NULL    |       |"},{"line_number":138,"context_line":"+--------------------+--------------+------+-----+---------+-------+"},{"line_number":139,"context_line":""},{"line_number":140,"context_line":"4. scheduled_operations"},{"line_number":141,"context_line":"+--------------------+--------------+------+-----+---------+-------+"},{"line_number":142,"context_line":"| Field              | Type         | Null | Key | Default | Extra |"},{"line_number":143,"context_line":"+--------------------+--------------+------+-----+---------+-------+"}],"source_content_type":"text/x-rst","patch_set":3,"id":"da6ed579_cb58738d","line":140,"range":{"start_line":140,"start_character":3,"end_line":140,"end_character":23},"updated":"2016-01-16 09:31:19.000000000","message":"There is an overlap between you and @zengchen \n\n\nPlease make sure to discuss this with him I think it should be in this spec \n\nIf he use the same table it should include the state filed if not he should have only uuid mapped to this table","commit_id":"44a2070f073351135494ae6d412f47b226388221"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"2d76a39095052f00f1ae7cc60a398ec02c922e0c","unresolved":false,"context_lines":[{"line_number":137,"context_line":"| deleted            | Boolean      | NO   |     | NULL    |       |"},{"line_number":138,"context_line":"+--------------------+--------------+------+-----+---------+-------+"},{"line_number":139,"context_line":""},{"line_number":140,"context_line":"4. scheduled_operations"},{"line_number":141,"context_line":"+--------------------+--------------+------+-----+---------+-------+"},{"line_number":142,"context_line":"| Field              | Type         | Null | Key | Default | Extra |"},{"line_number":143,"context_line":"+--------------------+--------------+------+-----+---------+-------+"}],"source_content_type":"text/x-rst","patch_set":3,"id":"da6ed579_4271afdf","line":140,"range":{"start_line":140,"start_character":3,"end_line":140,"end_character":23},"in_reply_to":"da6ed579_cb58738d","updated":"2016-01-18 03:06:51.000000000","message":"I will discuss with him.","commit_id":"44a2070f073351135494ae6d412f47b226388221"},{"author":{"_account_id":13070,"name":"Eran Gampel","email":"eran@gampel.net","username":"Gampel"},"change_message_id":"1fa0bb6f62181a762df1397df965189fcb4bf98d","unresolved":false,"context_lines":[{"line_number":149,"context_line":"| plan_id            | String(36)   | NO   |     | NULL    |       |"},{"line_number":150,"context_line":"| created_at         | Datetime     | NO   |     | NULL    |       |"},{"line_number":151,"context_line":"| deleted_at         | Datetime     | NO   |     | NULL    |       |"},{"line_number":152,"context_line":"| deleted            | Boolean      | NO   |     | NULL    |       |"},{"line_number":153,"context_line":"+--------------------+--------------+------+-----+---------+-------+"},{"line_number":154,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"da6ed579_6bc4e75e","line":152,"range":{"start_line":152,"start_character":2,"end_line":152,"end_character":9},"updated":"2016-01-16 09:09:42.000000000","message":"same question why to keep deleted item","commit_id":"44a2070f073351135494ae6d412f47b226388221"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"2d76a39095052f00f1ae7cc60a398ec02c922e0c","unresolved":false,"context_lines":[{"line_number":149,"context_line":"| plan_id            | String(36)   | NO   |     | NULL    |       |"},{"line_number":150,"context_line":"| created_at         | Datetime     | NO   |     | NULL    |       |"},{"line_number":151,"context_line":"| deleted_at         | Datetime     | NO   |     | NULL    |       |"},{"line_number":152,"context_line":"| deleted            | Boolean      | NO   |     | NULL    |       |"},{"line_number":153,"context_line":"+--------------------+--------------+------+-----+---------+-------+"},{"line_number":154,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"da6ed579_027417cd","line":152,"range":{"start_line":152,"start_character":2,"end_line":152,"end_character":9},"in_reply_to":"da6ed579_6bc4e75e","updated":"2016-01-18 03:06:51.000000000","message":"same","commit_id":"44a2070f073351135494ae6d412f47b226388221"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"66f697cfda3f7544bec1ae10da7cacd6eeab5da6","unresolved":false,"context_lines":[{"line_number":122,"context_line":"| created_at      | Datetime     | NO   |     | NULL    |       |"},{"line_number":123,"context_line":"+-----------------+--------------+------+-----+---------+-------+"},{"line_number":124,"context_line":""},{"line_number":125,"context_line":"3. time_triggers"},{"line_number":126,"context_line":"+--------------------+--------------+------+-----+---------+-------+"},{"line_number":127,"context_line":"| Field              | Type         | Null | Key | Default | Extra |"},{"line_number":128,"context_line":"+--------------------+--------------+------+-----+---------+-------+"}],"source_content_type":"text/x-rst","patch_set":6,"id":"da6ed579_b92bfd32","line":125,"range":{"start_line":125,"start_character":3,"end_line":125,"end_character":16},"updated":"2016-01-18 07:09:33.000000000","message":"triggers database tables is not only used for time triggers, also used for event triggers. So properties need not be split into start_time,  trigger_window and recurrence.","commit_id":"fcffd6bf0f592e2f927d133f74ce8d79ca15d616"},{"author":{"_account_id":16203,"name":"zengyingzhe","email":"zengyingzhe@huawei.com","username":"zengyingzhe"},"change_message_id":"5c9ef9784bf2e51e2fea47fb7562f11095dacbd7","unresolved":false,"context_lines":[{"line_number":36,"context_line":"---------------------------"},{"line_number":37,"context_line":"Enables the Smaug user to list available providers and get parameters and"},{"line_number":38,"context_line":"result schema super-set for all plugins of a specific Provider."},{"line_number":39,"context_line":"enables the Smaug user to access and manage the checkpoints stored"},{"line_number":40,"context_line":"in the protection provider."},{"line_number":41,"context_line":""},{"line_number":42,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"ba63e191_776cc59c","line":39,"range":{"start_line":39,"start_character":0,"end_line":39,"end_character":7},"updated":"2016-01-19 06:15:57.000000000","message":"enables -\u003e Enable","commit_id":"b937bbe6d9e8f9fcc58b14766248d11487d4ec3f"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"b700c3ee525a7338df7b7ff6ededa89b11e201a4","unresolved":false,"context_lines":[{"line_number":36,"context_line":"---------------------------"},{"line_number":37,"context_line":"Enables the Smaug user to list available providers and get parameters and"},{"line_number":38,"context_line":"result schema super-set for all plugins of a specific Provider."},{"line_number":39,"context_line":"enables the Smaug user to access and manage the checkpoints stored"},{"line_number":40,"context_line":"in the protection provider."},{"line_number":41,"context_line":""},{"line_number":42,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a68dd71_5cd574e5","line":39,"range":{"start_line":39,"start_character":0,"end_line":39,"end_character":7},"in_reply_to":"ba63e191_776cc59c","updated":"2016-01-25 11:49:40.000000000","message":"Done","commit_id":"b937bbe6d9e8f9fcc58b14766248d11487d4ec3f"},{"author":{"_account_id":16203,"name":"zengyingzhe","email":"zengyingzhe@huawei.com","username":"zengyingzhe"},"change_message_id":"5c9ef9784bf2e51e2fea47fb7562f11095dacbd7","unresolved":false,"context_lines":[{"line_number":93,"context_line":"time_triggers and scheduled_operations database tables are the same as"},{"line_number":94,"context_line":"tables in the operation engine design."},{"line_number":95,"context_line":""},{"line_number":96,"context_line":"1. plans"},{"line_number":97,"context_line":"+-------------------------+--------------+------+-----+---------+-------+"},{"line_number":98,"context_line":"| Field                   | Type         | Null | Key | Default | Extra |"},{"line_number":99,"context_line":"+-------------------------+--------------+------+-----+---------+-------+"}],"source_content_type":"text/x-rst","patch_set":8,"id":"ba63e191_90037f0f","line":96,"range":{"start_line":96,"start_character":3,"end_line":96,"end_character":8},"updated":"2016-01-19 06:15:57.000000000","message":"Missing parameters.","commit_id":"b937bbe6d9e8f9fcc58b14766248d11487d4ec3f"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"b700c3ee525a7338df7b7ff6ededa89b11e201a4","unresolved":false,"context_lines":[{"line_number":93,"context_line":"time_triggers and scheduled_operations database tables are the same as"},{"line_number":94,"context_line":"tables in the operation engine design."},{"line_number":95,"context_line":""},{"line_number":96,"context_line":"1. plans"},{"line_number":97,"context_line":"+-------------------------+--------------+------+-----+---------+-------+"},{"line_number":98,"context_line":"| Field                   | Type         | Null | Key | Default | Extra |"},{"line_number":99,"context_line":"+-------------------------+--------------+------+-----+---------+-------+"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a68dd71_883acee5","line":96,"range":{"start_line":96,"start_character":3,"end_line":96,"end_character":8},"in_reply_to":"ba63e191_90037f0f","updated":"2016-01-25 11:49:40.000000000","message":"I do not see a parameter field in the pan API.","commit_id":"b937bbe6d9e8f9fcc58b14766248d11487d4ec3f"},{"author":{"_account_id":16203,"name":"zengyingzhe","email":"zengyingzhe@huawei.com","username":"zengyingzhe"},"change_message_id":"5c9ef9784bf2e51e2fea47fb7562f11095dacbd7","unresolved":false,"context_lines":[{"line_number":108,"context_line":"| deleted                 | Boolean      | NO   |     | NULL    |       |"},{"line_number":109,"context_line":"+-------------------------+--------------+------+-----+---------+-------+"},{"line_number":110,"context_line":""},{"line_number":111,"context_line":"1. restores"},{"line_number":112,"context_line":"+-----------------+--------------+------+-----+---------+-------+"},{"line_number":113,"context_line":"| Field           | Type         | Null | Key | Default | Extra |"},{"line_number":114,"context_line":"+-----------------+--------------+------+-----+---------+-------+"}],"source_content_type":"text/x-rst","patch_set":8,"id":"ba63e191_3712cdb5","line":111,"range":{"start_line":111,"start_character":0,"end_line":111,"end_character":1},"updated":"2016-01-19 06:15:57.000000000","message":"1 -\u003e 2","commit_id":"b937bbe6d9e8f9fcc58b14766248d11487d4ec3f"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"b700c3ee525a7338df7b7ff6ededa89b11e201a4","unresolved":false,"context_lines":[{"line_number":108,"context_line":"| deleted                 | Boolean      | NO   |     | NULL    |       |"},{"line_number":109,"context_line":"+-------------------------+--------------+------+-----+---------+-------+"},{"line_number":110,"context_line":""},{"line_number":111,"context_line":"1. restores"},{"line_number":112,"context_line":"+-----------------+--------------+------+-----+---------+-------+"},{"line_number":113,"context_line":"| Field           | Type         | Null | Key | Default | Extra |"},{"line_number":114,"context_line":"+-----------------+--------------+------+-----+---------+-------+"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a68dd71_eb2ca49a","line":111,"range":{"start_line":111,"start_character":0,"end_line":111,"end_character":1},"in_reply_to":"ba63e191_3712cdb5","updated":"2016-01-25 11:49:40.000000000","message":"will fix it.","commit_id":"b937bbe6d9e8f9fcc58b14766248d11487d4ec3f"},{"author":{"_account_id":18266,"name":"zengchen","email":"chenzeng2@huawei.com","username":"zengchen"},"change_message_id":"0c90055a09eefe45170f6a4bf354b70eef240e1b","unresolved":false,"context_lines":[{"line_number":136,"context_line":"| deleted            | Boolean      | NO   |     | NULL    |       |"},{"line_number":137,"context_line":"+--------------------+--------------+------+-----+---------+-------+"},{"line_number":138,"context_line":""},{"line_number":139,"context_line":"4. scheduled_operations"},{"line_number":140,"context_line":"+--------------------+--------------+------+-----+---------+-------+"},{"line_number":141,"context_line":"| Field              | Type         | Null | Key | Default | Extra |"},{"line_number":142,"context_line":"+--------------------+--------------+------+-----+---------+-------+"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a68dd71_ee6117d4","line":139,"range":{"start_line":139,"start_character":3,"end_line":139,"end_character":23},"updated":"2016-01-25 03:07:00.000000000","message":"maybe it is need to add a field to define different operations. For example, if we create an operation which deletes the the checkpoints older than the last 5 checkpoints, there is no field to store this condition. Furthermore, if user create this kind of operations, there is no need to supply the plan_id info. so, it is better to define a field to store the operation definition info.","commit_id":"b937bbe6d9e8f9fcc58b14766248d11487d4ec3f"},{"author":{"_account_id":2023,"name":"Saggi Mizrahi","email":"ficoos+osreview@gmail.com","username":"ficoos"},"change_message_id":"2b71ebb8b41eb141e278b5511ecd92391a3bde1d","unresolved":false,"context_lines":[{"line_number":97,"context_line":"time_triggers and scheduled_operations database tables are the same as"},{"line_number":98,"context_line":"tables in the operation engine design."},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"1. plans"},{"line_number":101,"context_line":"+-------------------------+--------------+------+-----+---------+-------+"},{"line_number":102,"context_line":"| Field                   | Type         | Null | Key | Default | Extra |"},{"line_number":103,"context_line":"+-------------------------+--------------+------+-----+---------+-------+"}],"source_content_type":"text/x-rst","patch_set":10,"id":"7a5de9d1_1db6d9dc","line":100,"range":{"start_line":100,"start_character":3,"end_line":100,"end_character":8},"updated":"2016-01-27 15:20:01.000000000","message":"missing status (eg. started\\suspended)","commit_id":"f18411d04a149873dfea2be74b5599e62b1c92ed"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"1d930c87e3fb42c4b6f6232f09a538976cabf63f","unresolved":false,"context_lines":[{"line_number":97,"context_line":"time_triggers and scheduled_operations database tables are the same as"},{"line_number":98,"context_line":"tables in the operation engine design."},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"1. plans"},{"line_number":101,"context_line":"+-------------------------+--------------+------+-----+---------+-------+"},{"line_number":102,"context_line":"| Field                   | Type         | Null | Key | Default | Extra |"},{"line_number":103,"context_line":"+-------------------------+--------------+------+-----+---------+-------+"}],"source_content_type":"text/x-rst","patch_set":10,"id":"7a5de9d1_fbff2c32","line":100,"range":{"start_line":100,"start_character":3,"end_line":100,"end_character":8},"in_reply_to":"7a5de9d1_1db6d9dc","updated":"2016-01-28 02:55:05.000000000","message":"I will add this field.","commit_id":"f18411d04a149873dfea2be74b5599e62b1c92ed"},{"author":{"_account_id":2023,"name":"Saggi Mizrahi","email":"ficoos+osreview@gmail.com","username":"ficoos"},"change_message_id":"2b71ebb8b41eb141e278b5511ecd92391a3bde1d","unresolved":false,"context_lines":[{"line_number":105,"context_line":"| name                    | String(256)  | NO   |     | NULL    |       |"},{"line_number":106,"context_line":"| provider_id             | String(36)   | NO   |     | NULL    |       |"},{"line_number":107,"context_line":"| project_id              | String(256)  | NO   |     | NULL    |       |"},{"line_number":108,"context_line":"| resources               | TEXT         | NO   |     | NULL    |       |"},{"line_number":109,"context_line":"| created_at              | Datetime     | NO   |     | NULL    |       |"},{"line_number":110,"context_line":"| updated_at              | Datetime     | NO   |     | NULL    |       |"},{"line_number":111,"context_line":"| deleted_at              | Datetime     | NO   |     | NULL    |       |"}],"source_content_type":"text/x-rst","patch_set":10,"id":"7a5de9d1_ddfda16f","line":108,"range":{"start_line":108,"start_character":28,"end_line":108,"end_character":32},"updated":"2016-01-27 15:20:01.000000000","message":"I don\u0027t think text is the proper type. There should be a many to many table mapping between plans and resources","commit_id":"f18411d04a149873dfea2be74b5599e62b1c92ed"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"1d930c87e3fb42c4b6f6232f09a538976cabf63f","unresolved":false,"context_lines":[{"line_number":105,"context_line":"| name                    | String(256)  | NO   |     | NULL    |       |"},{"line_number":106,"context_line":"| provider_id             | String(36)   | NO   |     | NULL    |       |"},{"line_number":107,"context_line":"| project_id              | String(256)  | NO   |     | NULL    |       |"},{"line_number":108,"context_line":"| resources               | TEXT         | NO   |     | NULL    |       |"},{"line_number":109,"context_line":"| created_at              | Datetime     | NO   |     | NULL    |       |"},{"line_number":110,"context_line":"| updated_at              | Datetime     | NO   |     | NULL    |       |"},{"line_number":111,"context_line":"| deleted_at              | Datetime     | NO   |     | NULL    |       |"}],"source_content_type":"text/x-rst","patch_set":10,"id":"7a5de9d1_bbe2149e","line":108,"range":{"start_line":108,"start_character":28,"end_line":108,"end_character":32},"in_reply_to":"7a5de9d1_ddfda16f","updated":"2016-01-28 02:55:05.000000000","message":"resources here is a resource list. But we don\u0027t consider defining a database table resources. So I cann\u0027t map the plans with resources. I also think TEXT is not  proper. Saggi, what\u0027s your opinion about it?\n\n\n                \"resources\": [\n                  {\n                    \"id\": \"64e51e85-4f31-441f-9a5d-6e93e3196628\",\n                    \"type\": \"OS::Nova::Server\"\n                  },\n                  {\n                    \"id\": \"61e51e85-4f31-441f-9a5d-6e93e3196628\",\n                    \"type\": \"OS::Cinder::Volume\"\n                  },\n                  {\n                    \"id\": \"62e51e85-4f31-441f-9a5d-6e93e3196628\",\n                    \"type\": \"OS::Cinder::Volume\"\n                  }\n                ],","commit_id":"f18411d04a149873dfea2be74b5599e62b1c92ed"},{"author":{"_account_id":18266,"name":"zengchen","email":"chenzeng2@huawei.com","username":"zengchen"},"change_message_id":"c19a4e20dfbe7811da5add9cbd25ecc6dbfd9aa2","unresolved":false,"context_lines":[{"line_number":148,"context_line":"+----------------------+--------------+------+-----+---------+-------+"},{"line_number":149,"context_line":"| Field                | Type         | Null | Key | Default | Extra |"},{"line_number":150,"context_line":"+----------------------+--------------+------+-----+---------+-------+"},{"line_number":151,"context_line":"| id                   | String(36)   | NO   | PRI | NULL    |       |"},{"line_number":152,"context_line":"| name                 | String(256)  | NO   |     | NULL    |       |"},{"line_number":153,"context_line":"| operation_type       | String(256)  | NO   |     | NULL    |       |"},{"line_number":154,"context_line":"| project_id           | String(256)  | NO   |     | NULL    |       |"}],"source_content_type":"text/x-rst","patch_set":10,"id":"9a68dd71_be62faab","line":151,"range":{"start_line":151,"start_character":25,"end_line":151,"end_character":31},"updated":"2016-01-27 02:24:29.000000000","message":"the filed type should be varchar(36), there is no string type for field, just char or varchar.","commit_id":"f18411d04a149873dfea2be74b5599e62b1c92ed"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"1d930c87e3fb42c4b6f6232f09a538976cabf63f","unresolved":false,"context_lines":[{"line_number":148,"context_line":"+----------------------+--------------+------+-----+---------+-------+"},{"line_number":149,"context_line":"| Field                | Type         | Null | Key | Default | Extra |"},{"line_number":150,"context_line":"+----------------------+--------------+------+-----+---------+-------+"},{"line_number":151,"context_line":"| id                   | String(36)   | NO   | PRI | NULL    |       |"},{"line_number":152,"context_line":"| name                 | String(256)  | NO   |     | NULL    |       |"},{"line_number":153,"context_line":"| operation_type       | String(256)  | NO   |     | NULL    |       |"},{"line_number":154,"context_line":"| project_id           | String(256)  | NO   |     | NULL    |       |"}],"source_content_type":"text/x-rst","patch_set":10,"id":"9a68dd71_6fa5a945","line":151,"range":{"start_line":151,"start_character":25,"end_line":151,"end_character":31},"in_reply_to":"9a68dd71_be62faab","updated":"2016-01-28 02:55:05.000000000","message":"Hi zengchen You can reference cinder database table definition. We can use  String(36) as a type of a table field.\n\nhttps://github.com/openstack/cinder/blob/master/cinder/db/sqlalchemy/models.py#104\n\nclass Cgsnapshot(BASE, CinderBase):\n    \"\"\"Represents a cgsnapshot.\"\"\"\n    __tablename__ \u003d \u0027cgsnapshots\u0027\n    id \u003d Column(String(36), primary_key\u003dTrue)\n\n    consistencygroup_id \u003d Column(String(36))\n    user_id \u003d Column(String(255), nullable\u003dFalse)\n    project_id \u003d Column(String(255), nullable\u003dFalse)","commit_id":"f18411d04a149873dfea2be74b5599e62b1c92ed"},{"author":{"_account_id":18266,"name":"zengchen","email":"chenzeng2@huawei.com","username":"zengchen"},"change_message_id":"5dc4fcab0737ba1f2aa4ac5aa7665e0450ccb6f2","unresolved":false,"context_lines":[{"line_number":150,"context_line":"+----------------------+--------------+------+-----+---------+-------+"},{"line_number":151,"context_line":"| id                   | String(36)   | NO   | PRI | NULL    |       |"},{"line_number":152,"context_line":"| name                 | String(256)  | NO   |     | NULL    |       |"},{"line_number":153,"context_line":"| operation_type       | String(256)  | NO   |     | NULL    |       |"},{"line_number":154,"context_line":"| project_id           | String(256)  | NO   |     | NULL    |       |"},{"line_number":155,"context_line":"| operation_definition | TEXT         | NO   |     | NULL    |       |"},{"line_number":156,"context_line":"| status               | String(256)  | NO   |     | NULL    |       |"}],"source_content_type":"text/x-rst","patch_set":10,"id":"9a68dd71_eaa99125","line":153,"range":{"start_line":153,"start_character":2,"end_line":153,"end_character":16},"updated":"2016-01-27 02:18:09.000000000","message":"maybe 32 or 64 characters are enough for operation_type. because the optional values of operation_type are protect, delete etc.","commit_id":"f18411d04a149873dfea2be74b5599e62b1c92ed"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"1d930c87e3fb42c4b6f6232f09a538976cabf63f","unresolved":false,"context_lines":[{"line_number":150,"context_line":"+----------------------+--------------+------+-----+---------+-------+"},{"line_number":151,"context_line":"| id                   | String(36)   | NO   | PRI | NULL    |       |"},{"line_number":152,"context_line":"| name                 | String(256)  | NO   |     | NULL    |       |"},{"line_number":153,"context_line":"| operation_type       | String(256)  | NO   |     | NULL    |       |"},{"line_number":154,"context_line":"| project_id           | String(256)  | NO   |     | NULL    |       |"},{"line_number":155,"context_line":"| operation_definition | TEXT         | NO   |     | NULL    |       |"},{"line_number":156,"context_line":"| status               | String(256)  | NO   |     | NULL    |       |"}],"source_content_type":"text/x-rst","patch_set":10,"id":"7a5de9d1_dbb0308e","line":153,"range":{"start_line":153,"start_character":2,"end_line":153,"end_character":16},"in_reply_to":"9a68dd71_eaa99125","updated":"2016-01-28 02:55:05.000000000","message":"Done","commit_id":"f18411d04a149873dfea2be74b5599e62b1c92ed"},{"author":{"_account_id":18266,"name":"zengchen","email":"chenzeng2@huawei.com","username":"zengchen"},"change_message_id":"5dc4fcab0737ba1f2aa4ac5aa7665e0450ccb6f2","unresolved":false,"context_lines":[{"line_number":153,"context_line":"| operation_type       | String(256)  | NO   |     | NULL    |       |"},{"line_number":154,"context_line":"| project_id           | String(256)  | NO   |     | NULL    |       |"},{"line_number":155,"context_line":"| operation_definition | TEXT         | NO   |     | NULL    |       |"},{"line_number":156,"context_line":"| status               | String(256)  | NO   |     | NULL    |       |"},{"line_number":157,"context_line":"| service_id           | String(36)   | NO   |     | NULL    |       |"},{"line_number":158,"context_line":"| created_at           | Datetime     | NO   |     | NULL    |       |"},{"line_number":159,"context_line":"| updated_at           | Datetime     | NO   |     | NULL    |       |"}],"source_content_type":"text/x-rst","patch_set":10,"id":"9a68dd71_fe471249","line":156,"range":{"start_line":156,"start_character":2,"end_line":156,"end_character":8},"updated":"2016-01-27 02:18:09.000000000","message":"maybe 32 or 64 characters are enough for status. because the optional values of status are init, registerd, triggered, running and deleted etc.","commit_id":"f18411d04a149873dfea2be74b5599e62b1c92ed"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"1d930c87e3fb42c4b6f6232f09a538976cabf63f","unresolved":false,"context_lines":[{"line_number":153,"context_line":"| operation_type       | String(256)  | NO   |     | NULL    |       |"},{"line_number":154,"context_line":"| project_id           | String(256)  | NO   |     | NULL    |       |"},{"line_number":155,"context_line":"| operation_definition | TEXT         | NO   |     | NULL    |       |"},{"line_number":156,"context_line":"| status               | String(256)  | NO   |     | NULL    |       |"},{"line_number":157,"context_line":"| service_id           | String(36)   | NO   |     | NULL    |       |"},{"line_number":158,"context_line":"| created_at           | Datetime     | NO   |     | NULL    |       |"},{"line_number":159,"context_line":"| updated_at           | Datetime     | NO   |     | NULL    |       |"}],"source_content_type":"text/x-rst","patch_set":10,"id":"9a68dd71_4f81c58e","line":156,"range":{"start_line":156,"start_character":2,"end_line":156,"end_character":8},"in_reply_to":"9a68dd71_fe471249","updated":"2016-01-28 02:55:05.000000000","message":"Done","commit_id":"f18411d04a149873dfea2be74b5599e62b1c92ed"},{"author":{"_account_id":18266,"name":"zengchen","email":"chenzeng2@huawei.com","username":"zengchen"},"change_message_id":"5dc4fcab0737ba1f2aa4ac5aa7665e0450ccb6f2","unresolved":false,"context_lines":[{"line_number":155,"context_line":"| operation_definition | TEXT         | NO   |     | NULL    |       |"},{"line_number":156,"context_line":"| status               | String(256)  | NO   |     | NULL    |       |"},{"line_number":157,"context_line":"| service_id           | String(36)   | NO   |     | NULL    |       |"},{"line_number":158,"context_line":"| created_at           | Datetime     | NO   |     | NULL    |       |"},{"line_number":159,"context_line":"| updated_at           | Datetime     | NO   |     | NULL    |       |"},{"line_number":160,"context_line":"| deleted_at           | Datetime     | NO   |     | NULL    |       |"},{"line_number":161,"context_line":"| deleted              | Boolean      | NO   |     | NULL    |       |"}],"source_content_type":"text/x-rst","patch_set":10,"id":"9a68dd71_cacb6d1d","line":158,"range":{"start_line":158,"start_character":2,"end_line":158,"end_character":12},"updated":"2016-01-27 02:18:09.000000000","message":"created_at,updated_at,deleted_at should be nullable.","commit_id":"f18411d04a149873dfea2be74b5599e62b1c92ed"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"1d930c87e3fb42c4b6f6232f09a538976cabf63f","unresolved":false,"context_lines":[{"line_number":155,"context_line":"| operation_definition | TEXT         | NO   |     | NULL    |       |"},{"line_number":156,"context_line":"| status               | String(256)  | NO   |     | NULL    |       |"},{"line_number":157,"context_line":"| service_id           | String(36)   | NO   |     | NULL    |       |"},{"line_number":158,"context_line":"| created_at           | Datetime     | NO   |     | NULL    |       |"},{"line_number":159,"context_line":"| updated_at           | Datetime     | NO   |     | NULL    |       |"},{"line_number":160,"context_line":"| deleted_at           | Datetime     | NO   |     | NULL    |       |"},{"line_number":161,"context_line":"| deleted              | Boolean      | NO   |     | NULL    |       |"}],"source_content_type":"text/x-rst","patch_set":10,"id":"9a68dd71_af72c1e1","line":158,"range":{"start_line":158,"start_character":2,"end_line":158,"end_character":12},"in_reply_to":"9a68dd71_cacb6d1d","updated":"2016-01-28 02:55:05.000000000","message":"Done","commit_id":"f18411d04a149873dfea2be74b5599e62b1c92ed"},{"author":{"_account_id":13070,"name":"Eran Gampel","email":"eran@gampel.net","username":"Gampel"},"change_message_id":"ba8a9e50076faa1f4e7a0c766b98a888901b9ae0","unresolved":false,"context_lines":[{"line_number":105,"context_line":"| name                    | String(256)  | NO   |     | NULL    |       |"},{"line_number":106,"context_line":"| provider_id             | String(36)   | NO   |     | NULL    |       |"},{"line_number":107,"context_line":"| project_id              | String(256)  | NO   |     | NULL    |       |"},{"line_number":108,"context_line":"| resources               | TEXT         | NO   |     | NULL    |       |"},{"line_number":109,"context_line":"| status                  | String(64)   | NO   |     | NULL    |       |"},{"line_number":110,"context_line":"| created_at              | Datetime     | YES  |     | NULL    |       |"},{"line_number":111,"context_line":"| updated_at              | Datetime     | YES  |     | NULL    |       |"}],"source_content_type":"text/x-rst","patch_set":11,"id":"7a5de9d1_31a5d2b4","line":108,"range":{"start_line":108,"start_character":2,"end_line":108,"end_character":11},"updated":"2016-01-28 11:59:14.000000000","message":"I agree with Saggi there should be a separate table for the resources, and ID mapping","commit_id":"f9305183f94d5d1bf645c486e24464f2182358e7"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"4ad4e40a876fb61736b55404ab4a5d8332a47bb9","unresolved":false,"context_lines":[{"line_number":105,"context_line":"| name                    | String(256)  | NO   |     | NULL    |       |"},{"line_number":106,"context_line":"| provider_id             | String(36)   | NO   |     | NULL    |       |"},{"line_number":107,"context_line":"| project_id              | String(256)  | NO   |     | NULL    |       |"},{"line_number":108,"context_line":"| resources               | TEXT         | NO   |     | NULL    |       |"},{"line_number":109,"context_line":"| status                  | String(64)   | NO   |     | NULL    |       |"},{"line_number":110,"context_line":"| created_at              | Datetime     | YES  |     | NULL    |       |"},{"line_number":111,"context_line":"| updated_at              | Datetime     | YES  |     | NULL    |       |"}],"source_content_type":"text/x-rst","patch_set":11,"id":"7a5de9d1_b40f702d","line":108,"range":{"start_line":108,"start_character":2,"end_line":108,"end_character":11},"in_reply_to":"7a5de9d1_31a5d2b4","updated":"2016-01-28 12:24:56.000000000","message":"I will add a table. What about defining table name protection_objects?","commit_id":"f9305183f94d5d1bf645c486e24464f2182358e7"},{"author":{"_account_id":13070,"name":"Eran Gampel","email":"eran@gampel.net","username":"Gampel"},"change_message_id":"ba8a9e50076faa1f4e7a0c766b98a888901b9ae0","unresolved":false,"context_lines":[{"line_number":147,"context_line":""},{"line_number":148,"context_line":"4. scheduled_operations"},{"line_number":149,"context_line":"+----------------------+--------------+------+-----+---------+-------+"},{"line_number":150,"context_line":"| Field                | Type         | Null | Key | Default | Extra |"},{"line_number":151,"context_line":"+----------------------+--------------+------+-----+---------+-------+"},{"line_number":152,"context_line":"| id                   | String(36)   | NO   | PRI | NULL    |       |"},{"line_number":153,"context_line":"| name                 | String(256)  | NO   |     | NULL    |       |"}],"source_content_type":"text/x-rst","patch_set":11,"id":"7a5de9d1_11053679","line":150,"range":{"start_line":150,"start_character":2,"end_line":150,"end_character":7},"updated":"2016-01-28 11:59:14.000000000","message":"We are missing the trigger filed","commit_id":"f9305183f94d5d1bf645c486e24464f2182358e7"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"4ad4e40a876fb61736b55404ab4a5d8332a47bb9","unresolved":false,"context_lines":[{"line_number":147,"context_line":""},{"line_number":148,"context_line":"4. scheduled_operations"},{"line_number":149,"context_line":"+----------------------+--------------+------+-----+---------+-------+"},{"line_number":150,"context_line":"| Field                | Type         | Null | Key | Default | Extra |"},{"line_number":151,"context_line":"+----------------------+--------------+------+-----+---------+-------+"},{"line_number":152,"context_line":"| id                   | String(36)   | NO   | PRI | NULL    |       |"},{"line_number":153,"context_line":"| name                 | String(256)  | NO   |     | NULL    |       |"}],"source_content_type":"text/x-rst","patch_set":11,"id":"7a5de9d1_f47168a9","line":150,"range":{"start_line":150,"start_character":2,"end_line":150,"end_character":7},"in_reply_to":"7a5de9d1_11053679","updated":"2016-01-28 12:24:56.000000000","message":"As the scheduled_operations RestAPI,trigger_id filed is in the  \noperation_definition. Should I add another trigger_id field?","commit_id":"f9305183f94d5d1bf645c486e24464f2182358e7"},{"author":{"_account_id":13070,"name":"Eran Gampel","email":"eran@gampel.net","username":"Gampel"},"change_message_id":"8b69150dde149123c728fdd6d9371023a8b3c4ba","unresolved":false,"context_lines":[{"line_number":147,"context_line":""},{"line_number":148,"context_line":"4. scheduled_operations"},{"line_number":149,"context_line":"+----------------------+--------------+------+-----+---------+-------+"},{"line_number":150,"context_line":"| Field                | Type         | Null | Key | Default | Extra |"},{"line_number":151,"context_line":"+----------------------+--------------+------+-----+---------+-------+"},{"line_number":152,"context_line":"| id                   | String(36)   | NO   | PRI | NULL    |       |"},{"line_number":153,"context_line":"| name                 | String(256)  | NO   |     | NULL    |       |"}],"source_content_type":"text/x-rst","patch_set":11,"id":"7a5de9d1_ef5f1f3f","line":150,"range":{"start_line":150,"start_character":2,"end_line":150,"end_character":7},"in_reply_to":"7a5de9d1_f47168a9","updated":"2016-01-29 07:05:51.000000000","message":"You are correct sorry","commit_id":"f9305183f94d5d1bf645c486e24464f2182358e7"},{"author":{"_account_id":13070,"name":"Eran Gampel","email":"eran@gampel.net","username":"Gampel"},"change_message_id":"ba8a9e50076faa1f4e7a0c766b98a888901b9ae0","unresolved":false,"context_lines":[{"line_number":154,"context_line":"| operation_type       | String(64)   | NO   |     | NULL    |       |"},{"line_number":155,"context_line":"| project_id           | String(256)  | NO   |     | NULL    |       |"},{"line_number":156,"context_line":"| operation_definition | TEXT         | NO   |     | NULL    |       |"},{"line_number":157,"context_line":"| status               | String(64)   | NO   |     | NULL    |       |"},{"line_number":158,"context_line":"| service_id           | String(36)   | NO   |     | NULL    |       |"},{"line_number":159,"context_line":"| created_at           | Datetime     | YES  |     | NULL    |       |"},{"line_number":160,"context_line":"| updated_at           | Datetime     | YES  |     | NULL    |       |"}],"source_content_type":"text/x-rst","patch_set":11,"id":"7a5de9d1_d199de6f","line":157,"range":{"start_line":157,"start_character":2,"end_line":157,"end_character":8},"updated":"2016-01-28 11:59:14.000000000","message":"This should be part of the operation engine table not the Table with the User data","commit_id":"f9305183f94d5d1bf645c486e24464f2182358e7"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"4ad4e40a876fb61736b55404ab4a5d8332a47bb9","unresolved":false,"context_lines":[{"line_number":154,"context_line":"| operation_type       | String(64)   | NO   |     | NULL    |       |"},{"line_number":155,"context_line":"| project_id           | String(256)  | NO   |     | NULL    |       |"},{"line_number":156,"context_line":"| operation_definition | TEXT         | NO   |     | NULL    |       |"},{"line_number":157,"context_line":"| status               | String(64)   | NO   |     | NULL    |       |"},{"line_number":158,"context_line":"| service_id           | String(36)   | NO   |     | NULL    |       |"},{"line_number":159,"context_line":"| created_at           | Datetime     | YES  |     | NULL    |       |"},{"line_number":160,"context_line":"| updated_at           | Datetime     | YES  |     | NULL    |       |"}],"source_content_type":"text/x-rst","patch_set":11,"id":"7a5de9d1_14d1a457","line":157,"range":{"start_line":157,"start_character":2,"end_line":157,"end_character":8},"in_reply_to":"7a5de9d1_d199de6f","updated":"2016-01-28 12:24:56.000000000","message":"chenzeng think add the status field here. He can use this table for operation engine. don\u0027t need add another table for operation engine. Eran, what\u0027s your opinion about it?","commit_id":"f9305183f94d5d1bf645c486e24464f2182358e7"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"799310f3157df2301c4c35ff228c2f2a92562c9a","unresolved":false,"context_lines":[{"line_number":112,"context_line":"| deleted                 | Boolean      | NO   |     | NULL    |       |"},{"line_number":113,"context_line":"+-------------------------+--------------+------+-----+---------+-------+"},{"line_number":114,"context_line":""},{"line_number":115,"context_line":"2. protection_objects"},{"line_number":116,"context_line":"+-------------------------+--------------+------+-----+---------+-------+"},{"line_number":117,"context_line":"| Field                   | Type         | Null | Key | Default | Extra |"},{"line_number":118,"context_line":"+-------------------------+--------------+------+-----+---------+-------+"}],"source_content_type":"text/x-rst","patch_set":12,"id":"7a5de9d1_e8aba01b","line":115,"range":{"start_line":115,"start_character":3,"end_line":115,"end_character":21},"updated":"2016-01-29 01:48:58.000000000","message":"I will  modify this table name. Consistent with plans RESTAPI the resources field of responses example. I define table name  resources.","commit_id":"bb6c7da27f69568854b183860bf7aea4ecf81a7c"},{"author":{"_account_id":2023,"name":"Saggi Mizrahi","email":"ficoos+osreview@gmail.com","username":"ficoos"},"change_message_id":"80b5c1f14da92f19b4cce8ad092ae28edcbe3a5b","unresolved":false,"context_lines":[{"line_number":168,"context_line":"| project_id           | varchar(255) | NO   |     | NULL    |       |"},{"line_number":169,"context_line":"| trigger_id           | varchar(36)  | NO   |     | NULL    |       |"},{"line_number":170,"context_line":"| plan_id              | varchar(36)  | NO   |     | NULL    |       |"},{"line_number":171,"context_line":"| status               | varchar(64)  | NO   |     | NULL    |       |"},{"line_number":172,"context_line":"| service_id           | varchar(36)  | NO   |     | NULL    |       |"},{"line_number":173,"context_line":"| created_at           | Datetime     | YES  |     | NULL    |       |"},{"line_number":174,"context_line":"| updated_at           | Datetime     | YES  |     | NULL    |       |"}],"source_content_type":"text/x-rst","patch_set":12,"id":"7a5de9d1_ddca4fa1","line":171,"range":{"start_line":171,"start_character":2,"end_line":171,"end_character":8},"updated":"2016-01-28 13:04:31.000000000","message":"There shouldn\u0027t be status in scheduled operation","commit_id":"bb6c7da27f69568854b183860bf7aea4ecf81a7c"},{"author":{"_account_id":13070,"name":"Eran Gampel","email":"eran@gampel.net","username":"Gampel"},"change_message_id":"258297dd581e07fec9cf2039786bbac25c22f4dc","unresolved":false,"context_lines":[{"line_number":168,"context_line":"| project_id           | varchar(255) | NO   |     | NULL    |       |"},{"line_number":169,"context_line":"| trigger_id           | varchar(36)  | NO   |     | NULL    |       |"},{"line_number":170,"context_line":"| plan_id              | varchar(36)  | NO   |     | NULL    |       |"},{"line_number":171,"context_line":"| status               | varchar(64)  | NO   |     | NULL    |       |"},{"line_number":172,"context_line":"| service_id           | varchar(36)  | NO   |     | NULL    |       |"},{"line_number":173,"context_line":"| created_at           | Datetime     | YES  |     | NULL    |       |"},{"line_number":174,"context_line":"| updated_at           | Datetime     | YES  |     | NULL    |       |"}],"source_content_type":"text/x-rst","patch_set":12,"id":"7a5de9d1_ef0ddf3e","line":171,"range":{"start_line":171,"start_character":2,"end_line":171,"end_character":8},"in_reply_to":"7a5de9d1_685b3088","updated":"2016-01-29 07:07:52.000000000","message":"I think that we should decouple the operation from the API it should be in another table maintained by the Operation Engine and linked by ID to this table","commit_id":"bb6c7da27f69568854b183860bf7aea4ecf81a7c"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"799310f3157df2301c4c35ff228c2f2a92562c9a","unresolved":false,"context_lines":[{"line_number":168,"context_line":"| project_id           | varchar(255) | NO   |     | NULL    |       |"},{"line_number":169,"context_line":"| trigger_id           | varchar(36)  | NO   |     | NULL    |       |"},{"line_number":170,"context_line":"| plan_id              | varchar(36)  | NO   |     | NULL    |       |"},{"line_number":171,"context_line":"| status               | varchar(64)  | NO   |     | NULL    |       |"},{"line_number":172,"context_line":"| service_id           | varchar(36)  | NO   |     | NULL    |       |"},{"line_number":173,"context_line":"| created_at           | Datetime     | YES  |     | NULL    |       |"},{"line_number":174,"context_line":"| updated_at           | Datetime     | YES  |     | NULL    |       |"}],"source_content_type":"text/x-rst","patch_set":12,"id":"7a5de9d1_685b3088","line":171,"range":{"start_line":171,"start_character":2,"end_line":171,"end_character":8},"in_reply_to":"7a5de9d1_ddca4fa1","updated":"2016-01-29 01:48:58.000000000","message":"The staus field is used in operation engine service. If I don\u0027t define in this table, I will tell chenzheng to define another table to maintain the status.","commit_id":"bb6c7da27f69568854b183860bf7aea4ecf81a7c"},{"author":{"_account_id":18266,"name":"zengchen","email":"chenzeng2@huawei.com","username":"zengchen"},"change_message_id":"9513a992518f3e61b30754a38be4ebe35567c9b3","unresolved":false,"context_lines":[{"line_number":158,"context_line":"| deleted            | Boolean      | NO   |     | NULL    |       |"},{"line_number":159,"context_line":"+--------------------+--------------+------+-----+---------+-------+"},{"line_number":160,"context_line":""},{"line_number":161,"context_line":"5. scheduled_operations"},{"line_number":162,"context_line":"+----------------------+--------------+------+-----+---------+-------+"},{"line_number":163,"context_line":"| Field                | Type         | Null | Key | Default | Extra |"},{"line_number":164,"context_line":"+----------------------+--------------+------+-----+---------+-------+"}],"source_content_type":"text/x-rst","patch_set":13,"id":"7a5de9d1_51b7f1d7","line":161,"range":{"start_line":161,"start_character":3,"end_line":161,"end_character":23},"updated":"2016-01-29 10:16:42.000000000","message":"eran \u0026 chenying, I think it\u0027s better to add an operation_definition field to define any kinds of operation. if we want to define a delete checkpoint operation, there is no field to store its parameter. please think about this question. thanks.","commit_id":"f321427db4caba1409ad092e5cbbf1ca2808d611"},{"author":{"_account_id":18266,"name":"zengchen","email":"chenzeng2@huawei.com","username":"zengchen"},"change_message_id":"3b418b9f8059e3097448c7ea4468d15766b75e6a","unresolved":false,"context_lines":[{"line_number":178,"context_line":"+----------------------+--------------+------+-----+---------+-------+"},{"line_number":179,"context_line":"| Field                | Type         | Null | Key | Default | Extra |"},{"line_number":180,"context_line":"+----------------------+--------------+------+-----+---------+-------+"},{"line_number":181,"context_line":"| id                   | varchar(36)  | NO   | PRI | NULL    |       |"},{"line_number":182,"context_line":"| host                 | varchar(255) | NO   |     | NULL    |       |"},{"line_number":183,"context_line":"| binary               | varchar(255) | NO   |     | NULL    |       |"},{"line_number":184,"context_line":"| topic                | varchar(255) | NO   |     | NULL    |       |"}],"source_content_type":"text/x-rst","patch_set":14,"id":"7a5de9d1_080cae39","line":181,"range":{"start_line":181,"start_character":4,"end_line":181,"end_character":23},"updated":"2016-02-01 01:42:30.000000000","message":"as in the other project such as nova, cinder, it is more reasonable that the type of id is Integer.","commit_id":"e741e3c5705fd50d5454b9838c865d5ff8652755"}]}
