)]}'
{"id":"openstack%2Fnova~2561","triplet_id":"openstack%2Fnova~master~Id78acb59474995b7c13b2b6e7c8cd5057ec8cb0f","project":"openstack/nova","branch":"master","topic":"rpc-api-clarity","hashtags":[],"change_id":"Id78acb59474995b7c13b2b6e7c8cd5057ec8cb0f","subject":"Help clarify rpc API with docs and a bit of code.","status":"MERGED","created":"2011-12-22 17:32:56.000000000","updated":"2011-12-23 10:19:53.000000000","submitted":"2011-12-23 10:19:53.000000000","submitter":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"total_comment_count":0,"unresolved_comment_count":0,"has_review_started":true,"meta_rev_id":"a67ebd4ed3ec981c5d457309f997467478824d0d","_number":2561,"virtual_id_number":2561,"owner":{"_account_id":1561,"name":"Russell Bryant","email":"rbryant@redhat.com","username":"russellb"},"actions":{},"labels":{"Verified":{"recommended":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"all":[{"value":0,"_account_id":1247,"name":"Mark McLoughlin","email":"markmc@redhat.com","username":"markmc"},{"value":0,"_account_id":1561,"name":"Russell Bryant","email":"rbryant@redhat.com","username":"russellb"},{"value":0,"_account_id":1801,"name":"Duncan McGreggor","email":"duncan.mcgreggor@rackspace.com","username":"oubiwann"},{"value":0,"_account_id":964,"name":"Anne Gentle","email":"annegentle@justwriteclick.com","username":"annegentle"},{"value":0,"_account_id":321,"name":"Lorin Hochstein","email":"lorinh@gmail.com","username":"lorinh"},{"value":1,"date":"2011-12-23 10:19:47.000000000","_account_id":3,"name":"Jenkins","username":"jenkins"}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","value":1,"default_value":0,"optional":true},"Code-Review":{"approved":{"_account_id":1247,"name":"Mark McLoughlin","email":"markmc@redhat.com","username":"markmc"},"all":[{"value":2,"date":"2011-12-23 10:09:59.000000000","_account_id":1247,"name":"Mark McLoughlin","email":"markmc@redhat.com","username":"markmc"},{"value":0,"date":"2011-12-22 18:08:03.000000000","permitted_voting_range":{"min":0,"max":1},"_account_id":1561,"name":"Russell Bryant","email":"rbryant@redhat.com","username":"russellb"},{"value":1,"date":"2011-12-22 18:18:53.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":1801,"name":"Duncan McGreggor","email":"duncan.mcgreggor@rackspace.com","username":"oubiwann"},{"value":1,"date":"2011-12-22 19:36:18.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":964,"name":"Anne Gentle","email":"annegentle@justwriteclick.com","username":"annegentle"},{"value":1,"date":"2011-12-22 19:22:16.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":321,"name":"Lorin Hochstein","email":"lorinh@gmail.com","username":"lorinh"},{"value":0,"date":"2011-12-23 10:19:47.000000000","permitted_voting_range":{"min":0,"max":1},"_account_id":3,"name":"Jenkins","username":"jenkins"}],"values":{"-2":"Do not merge","-1":"This patch needs further work before it can be merged"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me (core reviewer)"},"description":"","default_value":0,"optional":true},"Workflow":{"all":[{"value":0,"_account_id":1247,"name":"Mark McLoughlin","email":"markmc@redhat.com","username":"markmc"},{"value":0,"_account_id":1561,"name":"Russell Bryant","email":"rbryant@redhat.com","username":"russellb"},{"value":0,"_account_id":1801,"name":"Duncan McGreggor","email":"duncan.mcgreggor@rackspace.com","username":"oubiwann"},{"value":0,"_account_id":964,"name":"Anne Gentle","email":"annegentle@justwriteclick.com","username":"annegentle"},{"value":0,"_account_id":321,"name":"Lorin Hochstein","email":"lorinh@gmail.com","username":"lorinh"},{"value":0,"_account_id":3,"name":"Jenkins","username":"jenkins"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true},"Review-Priority":{"all":[{"value":0,"_account_id":1247,"name":"Mark McLoughlin","email":"markmc@redhat.com","username":"markmc"},{"value":0,"_account_id":1561,"name":"Russell Bryant","email":"rbryant@redhat.com","username":"russellb"},{"value":0,"_account_id":1801,"name":"Duncan McGreggor","email":"duncan.mcgreggor@rackspace.com","username":"oubiwann"},{"value":0,"_account_id":964,"name":"Anne Gentle","email":"annegentle@justwriteclick.com","username":"annegentle"},{"value":0,"_account_id":321,"name":"Lorin Hochstein","email":"lorinh@gmail.com","username":"lorinh"},{"value":0,"_account_id":3,"name":"Jenkins","username":"jenkins"}],"values":{" 0":"Default Priority","+1":"Contributor Review Promise","+2":"Core Review Promise"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":3,"name":"Jenkins","username":"jenkins"},{"_account_id":321,"name":"Lorin Hochstein","email":"lorinh@gmail.com","username":"lorinh"},{"_account_id":964,"name":"Anne Gentle","email":"annegentle@justwriteclick.com","username":"annegentle"},{"_account_id":1247,"name":"Mark McLoughlin","email":"markmc@redhat.com","username":"markmc"},{"_account_id":1561,"name":"Russell Bryant","email":"rbryant@redhat.com","username":"russellb"},{"_account_id":1801,"name":"Duncan McGreggor","email":"duncan.mcgreggor@rackspace.com","username":"oubiwann"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2011-12-22 18:18:53.000000000","updated_by":{"_account_id":1801,"name":"Duncan McGreggor","email":"duncan.mcgreggor@rackspace.com","username":"oubiwann"},"reviewer":{"_account_id":1801,"name":"Duncan McGreggor","email":"duncan.mcgreggor@rackspace.com","username":"oubiwann"},"state":"REVIEWER"},{"updated":"2011-12-22 19:22:16.000000000","updated_by":{"_account_id":321,"name":"Lorin Hochstein","email":"lorinh@gmail.com","username":"lorinh"},"reviewer":{"_account_id":321,"name":"Lorin Hochstein","email":"lorinh@gmail.com","username":"lorinh"},"state":"REVIEWER"},{"updated":"2011-12-22 19:36:18.000000000","updated_by":{"_account_id":964,"name":"Anne Gentle","email":"annegentle@justwriteclick.com","username":"annegentle"},"reviewer":{"_account_id":964,"name":"Anne Gentle","email":"annegentle@justwriteclick.com","username":"annegentle"},"state":"REVIEWER"},{"updated":"2011-12-23 10:09:59.000000000","updated_by":{"_account_id":1247,"name":"Mark McLoughlin","email":"markmc@redhat.com","username":"markmc"},"reviewer":{"_account_id":1247,"name":"Mark McLoughlin","email":"markmc@redhat.com","username":"markmc"},"state":"REVIEWER"},{"updated":"2011-12-23 10:19:47.000000000","updated_by":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"reviewer":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"state":"REVIEWER"}],"messages":[{"id":"65467bac83cc0625d126a2148dc4bce77bb4a822","author":{"_account_id":1801,"name":"Duncan McGreggor","email":"duncan.mcgreggor@rackspace.com","username":"oubiwann"},"date":"2011-12-22 17:43:20.000000000","message":"Patch Set 1: I would prefer that you didn\u0027t submit this\n\nThank you Russell! This is great work. I\u0027d only ask for one change: a single underscore prepend for private functions (see http://docs.python.org/tutorial/classes.html#private-variables).\n\nI\u0027m currently using this code and your changes will make life much easier for others! Thanks again :-)","accounts_in_message":[],"_revision_number":1},{"id":"35a9f4168c3ee49c23714f08d33e2f77c2e71899","author":{"_account_id":1561,"name":"Russell Bryant","email":"rbryant@redhat.com","username":"russellb"},"date":"2011-12-22 18:08:03.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"b247f7c3e534f3f283c84e2b670cf4cb7c76737b","author":{"_account_id":1801,"name":"Duncan McGreggor","email":"duncan.mcgreggor@rackspace.com","username":"oubiwann"},"date":"2011-12-22 18:18:53.000000000","message":"Patch Set 2: Looks good to me, but someone else must approve\n\nGreat, thanks!\n\nCan I give this branch a +10? :-)","accounts_in_message":[],"_revision_number":2},{"id":"0b70d87eed6ee28d55f13acff1bb73ddac8a125f","author":{"_account_id":321,"name":"Lorin Hochstein","email":"lorinh@gmail.com","username":"lorinh"},"date":"2011-12-22 19:22:16.000000000","message":"Patch Set 2: Looks good to me, but someone else must approve\n\nThis is a welcome effort.","accounts_in_message":[],"_revision_number":2},{"id":"a5af0da0b791482f84d842f111d1ba3239b9460a","author":{"_account_id":964,"name":"Anne Gentle","email":"annegentle@justwriteclick.com","username":"annegentle"},"date":"2011-12-22 19:36:18.000000000","message":"Patch Set 2: Looks good to me, but someone else must approve\n\nLooks good, thanks for adding these docs.","accounts_in_message":[],"_revision_number":2},{"id":"7d132a7da654f077f4b0489589d1c2eb05dc8b60","author":{"_account_id":1247,"name":"Mark McLoughlin","email":"markmc@redhat.com","username":"markmc"},"date":"2011-12-23 10:09:59.000000000","message":"Patch Set 2: Looks good to me, approved\n\nNice work Russell\n\nGot a little confused there for a minute as to how kombu worked without having create_consumer() and consume_in_thread() methods, but I see the __getattr__() trickery now","accounts_in_message":[],"_revision_number":2},{"id":"aa657d3256d884c5e2a20e42451b041dbb3b6e36","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2011-12-23 10:19:47.000000000","message":"Patch Set 2: Verified\n\nBuild Successful \n \nhttps://jenkins.openstack.org/job/gate-nova-unittests/361/ : SUCCESS \nhttps://jenkins.openstack.org/job/gate-nova-pep8/2125/ : SUCCESS \nhttps://jenkins.openstack.org/job/gate-nova-merge/750/ : SUCCESS","accounts_in_message":[],"_revision_number":2},{"id":"7245a0d5da83695f95ebb437fedec2c948940d90","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2011-12-23 10:19:53.000000000","message":"Change has been successfully merged into the git repository.","accounts_in_message":[],"_revision_number":2}],"current_revision_number":2,"current_revision":"f2764375c37c005710943d25bd494558577f892c","revisions":{"252bdb3116515abf7d7def4519bb3f2209034a2e":{"kind":"REWORK","_number":1,"created":"2011-12-22 17:32:56.000000000","uploader":{"_account_id":1561,"name":"Russell Bryant","email":"rbryant@redhat.com","username":"russellb"},"ref":"refs/changes/61/2561/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/nova","ref":"refs/changes/61/2561/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/nova refs/changes/61/2561/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/nova refs/changes/61/2561/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/nova refs/changes/61/2561/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/nova refs/changes/61/2561/1"}}},"commit":{"parents":[{"commit":"01ab8af8f835181b28b1371e0b98dd6d33df0cfa","subject":"Merge \"Move createBackup server action into extension\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/01ab8af8f835181b28b1371e0b98dd6d33df0cfa"}]}],"author":{"name":"Russell Bryant","email":"rbryant@redhat.com","date":"2011-12-22 15:59:24.000000000","tz":-300},"committer":{"name":"Russell Bryant","email":"rbryant@redhat.com","date":"2011-12-22 17:32:52.000000000","tz":-300},"subject":"Help clarify rpc API with docs and a bit of code.","message":"Help clarify rpc API with docs and a bit of code.\n\nThe intent of this change is to help make the rpc API a bit easier to\nunderstand both for users of the API, and for implementors of the rpc\nabstraction.\n\n1) Add a Connection class in nova.rpc.common which defines the public\ninterface of the connection returned by nova.rpc.create_connection().\nUpdate the existing implementations to inherit from this class.\n\n2) Add documentation for the public methods in nova.rpc.\n\n3) Rename get_impl() to __get_impl() in nova.rpc.  This function is a\nprivate implemenation detail and should not be used outside of this\nmodule.  Also move it to the bottom of the file so that all of the\nimportant public API stuff comes first.\n\nChange-Id: Id78acb59474995b7c13b2b6e7c8cd5057ec8cb0f\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/252bdb3116515abf7d7def4519bb3f2209034a2e"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/252bdb3116515abf7d7def4519bb3f2209034a2e"}]},"parents_data":[{"branch_name":"refs/heads/master","commit_id":"01ab8af8f835181b28b1371e0b98dd6d33df0cfa","is_merged_in_target_branch":true}],"branch":"refs/heads/master"},"f2764375c37c005710943d25bd494558577f892c":{"kind":"REWORK","_number":2,"created":"2011-12-22 18:08:03.000000000","uploader":{"_account_id":1561,"name":"Russell Bryant","email":"rbryant@redhat.com","username":"russellb"},"ref":"refs/changes/61/2561/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/nova","ref":"refs/changes/61/2561/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/nova refs/changes/61/2561/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/nova refs/changes/61/2561/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/nova refs/changes/61/2561/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/nova refs/changes/61/2561/2"}}},"commit":{"parents":[{"commit":"01ab8af8f835181b28b1371e0b98dd6d33df0cfa","subject":"Merge \"Move createBackup server action into extension\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/01ab8af8f835181b28b1371e0b98dd6d33df0cfa"}]}],"author":{"name":"Russell Bryant","email":"rbryant@redhat.com","date":"2011-12-22 15:59:24.000000000","tz":-300},"committer":{"name":"Russell Bryant","email":"rbryant@redhat.com","date":"2011-12-22 17:51:04.000000000","tz":-300},"subject":"Help clarify rpc API with docs and a bit of code.","message":"Help clarify rpc API with docs and a bit of code.\n\nThe intent of this change is to help make the rpc API a bit easier to\nunderstand both for users of the API, and for implementors of the rpc\nabstraction.\n\n1) Add a Connection class in nova.rpc.common which defines the public\ninterface of the connection returned by nova.rpc.create_connection().\nUpdate the existing implementations to inherit from this class.\n\n2) Add documentation for the public methods in nova.rpc.\n\n3) Rename get_impl() to __get_impl() in nova.rpc.  This function is a\nprivate implemenation detail and should not be used outside of this\nmodule.  Also move it to the bottom of the file so that all of the\nimportant public API stuff comes first.\n\nChange-Id: Id78acb59474995b7c13b2b6e7c8cd5057ec8cb0f\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/f2764375c37c005710943d25bd494558577f892c"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/f2764375c37c005710943d25bd494558577f892c"}]},"parents_data":[{"branch_name":"refs/heads/master","commit_id":"01ab8af8f835181b28b1371e0b98dd6d33df0cfa","is_merged_in_target_branch":true}],"branch":"refs/heads/master"}},"requirements":[],"submit_records":[],"submit_requirements":[]}
