)]}'
{"id":"openstack%2Ftrove~234461","triplet_id":"openstack%2Ftrove~master~I603cf2ddebab1d7a5c874cd66431f803aaee2d42","project":"openstack/trove","branch":"master","topic":"bp/datastore-manager-refactor","hashtags":[],"change_id":"I603cf2ddebab1d7a5c874cd66431f803aaee2d42","subject":"Refactor the datastore manager classes","status":"MERGED","created":"2015-10-13 22:39:50.000000000","updated":"2015-11-02 12:38:33.000000000","submitted":"2015-11-02 12:38:32.000000000","submitter":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"total_comment_count":13,"unresolved_comment_count":0,"has_review_started":true,"meta_rev_id":"44c4006e927094dcc3892b69af424efad41721f8","_number":234461,"virtual_id_number":234461,"owner":{"_account_id":10215,"name":"Peter Stachowski","email":"peter@tesora.com","username":"peterstac"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"all":[{"value":0,"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},{"value":0,"_account_id":4240,"name":"Craig Vyvial","email":"cp16net@gmail.com","username":"cp16net"},{"value":2,"date":"2015-11-02 12:38:32.000000000","_account_id":3,"name":"Jenkins","username":"jenkins"},{"value":0,"date":"2015-10-29 18:42:00.000000000","_account_id":10215,"name":"Peter Stachowski","email":"peter@tesora.com","username":"peterstac"},{"value":0,"_account_id":10440,"name":"Alex Tomic","email":"atomic777@gmail.com","username":"atomic77"},{"value":0,"_account_id":5293,"name":"Nikhil","email":"SlickNik@gmail.com","username":"slicknik"}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","default_value":0,"optional":true},"Code-Review":{"approved":{"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},"all":[{"value":2,"date":"2015-10-30 06:46:02.000000000","_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},{"value":2,"date":"2015-10-30 06:56:14.000000000","_account_id":4240,"name":"Craig Vyvial","email":"cp16net@gmail.com","username":"cp16net"},{"value":0,"_account_id":3,"name":"Jenkins","username":"jenkins"},{"value":0,"_account_id":10215,"name":"Peter Stachowski","email":"peter@tesora.com","username":"peterstac"},{"value":1,"date":"2015-10-30 06:46:11.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":10440,"name":"Alex Tomic","email":"atomic777@gmail.com","username":"atomic77"},{"value":2,"date":"2015-11-02 11:08:31.000000000","_account_id":5293,"name":"Nikhil","email":"SlickNik@gmail.com","username":"slicknik"}],"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":{"approved":{"_account_id":5293,"name":"Nikhil","email":"SlickNik@gmail.com","username":"slicknik"},"all":[{"value":0,"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},{"value":0,"_account_id":4240,"name":"Craig Vyvial","email":"cp16net@gmail.com","username":"cp16net"},{"value":0,"_account_id":3,"name":"Jenkins","username":"jenkins"},{"value":0,"_account_id":10215,"name":"Peter Stachowski","email":"peter@tesora.com","username":"peterstac"},{"value":0,"_account_id":10440,"name":"Alex Tomic","email":"atomic777@gmail.com","username":"atomic77"},{"value":1,"date":"2015-11-02 11:08:31.000000000","_account_id":5293,"name":"Nikhil","email":"SlickNik@gmail.com","username":"slicknik"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true},"Backport-Candidate":{"all":[{"value":0,"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},{"value":0,"_account_id":4240,"name":"Craig Vyvial","email":"cp16net@gmail.com","username":"cp16net"},{"value":0,"_account_id":3,"name":"Jenkins","username":"jenkins"},{"value":0,"_account_id":10215,"name":"Peter Stachowski","email":"peter@tesora.com","username":"peterstac"},{"value":0,"_account_id":10440,"name":"Alex Tomic","email":"atomic777@gmail.com","username":"atomic77"},{"value":0,"_account_id":5293,"name":"Nikhil","email":"SlickNik@gmail.com","username":"slicknik"}],"values":{"-1":"Not A Backport Candidate"," 0":"Backport Review Needed","+1":"Proposed Backport"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":3,"name":"Jenkins","username":"jenkins"},{"_account_id":4240,"name":"Craig Vyvial","email":"cp16net@gmail.com","username":"cp16net"},{"_account_id":5293,"name":"Nikhil","email":"SlickNik@gmail.com","username":"slicknik"},{"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},{"_account_id":10215,"name":"Peter Stachowski","email":"peter@tesora.com","username":"peterstac"},{"_account_id":10440,"name":"Alex Tomic","email":"atomic777@gmail.com","username":"atomic77"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2015-10-30 06:46:02.000000000","updated_by":{"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},"reviewer":{"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},"state":"REVIEWER"},{"updated":"2015-10-30 06:46:11.000000000","updated_by":{"_account_id":10440,"name":"Alex Tomic","email":"atomic777@gmail.com","username":"atomic77"},"reviewer":{"_account_id":10440,"name":"Alex Tomic","email":"atomic777@gmail.com","username":"atomic77"},"state":"REVIEWER"},{"updated":"2015-10-30 06:56:14.000000000","updated_by":{"_account_id":4240,"name":"Craig Vyvial","email":"cp16net@gmail.com","username":"cp16net"},"reviewer":{"_account_id":4240,"name":"Craig Vyvial","email":"cp16net@gmail.com","username":"cp16net"},"state":"REVIEWER"},{"updated":"2015-11-02 11:08:31.000000000","updated_by":{"_account_id":5293,"name":"Nikhil","email":"SlickNik@gmail.com","username":"slicknik"},"reviewer":{"_account_id":5293,"name":"Nikhil","email":"SlickNik@gmail.com","username":"slicknik"},"state":"REVIEWER"},{"updated":"2015-11-02 12:38:32.000000000","updated_by":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"reviewer":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"state":"REVIEWER"}],"messages":[{"id":"a26044b3a847f031df5e8a711860034844186d39","author":{"_account_id":10215,"name":"Peter Stachowski","email":"peter@tesora.com","username":"peterstac"},"date":"2015-10-13 22:39:50.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"d9f6c54febd1717185639f554e3898f624be1795","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2015-10-14 00:51:07.000000000","message":"Patch Set 1: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see http://docs.openstack.org/infra/manual/developers.html#automated-testing\n\n- gate-trove-pep8 http://logs.openstack.org/61/234461/1/check/gate-trove-pep8/6708ee2/ : SUCCESS in 2m 56s\n- gate-trove-docs http://docs-draft.openstack.org/61/234461/1/check/gate-trove-docs/125d610//doc/build/html/ : SUCCESS in 3m 16s\n- gate-trove-python27 http://logs.openstack.org/61/234461/1/check/gate-trove-python27/c136a58/ : FAILURE in 50m 26s\n- gate-trove-functional-dsvm-mysql http://logs.openstack.org/61/234461/1/check/gate-trove-functional-dsvm-mysql/74d624f/ : SUCCESS in 1h 35m 41s\n- gate-tempest-dsvm-trove http://logs.openstack.org/61/234461/1/check/gate-tempest-dsvm-trove/212ee78/ : SUCCESS in 31m 54s","accounts_in_message":[],"_revision_number":1},{"id":"317a23e81ef50553b8c26cf800e41edf7018d1c4","author":{"_account_id":10215,"name":"Peter Stachowski","email":"peter@tesora.com","username":"peterstac"},"date":"2015-10-16 02:55:24.000000000","message":"Patch Set 1:\n\nrecheck","accounts_in_message":[],"_revision_number":1},{"id":"7903f0e4ef69fd804c4c9eee0f1d77a86eb9e677","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2015-10-16 04:20:36.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\n\n- gate-trove-pep8 http://logs.openstack.org/61/234461/1/check/gate-trove-pep8/3907846/ : SUCCESS in 2m 52s\n- gate-trove-docs http://docs-draft.openstack.org/61/234461/1/check/gate-trove-docs/4090e33//doc/build/html/ : SUCCESS in 3m 02s\n- gate-trove-python27 http://logs.openstack.org/61/234461/1/check/gate-trove-python27/8905796/ : SUCCESS in 9m 53s\n- gate-trove-functional-dsvm-mysql http://logs.openstack.org/61/234461/1/check/gate-trove-functional-dsvm-mysql/4a2a0a8/ : SUCCESS in 1h 25m 05s\n- gate-tempest-dsvm-trove http://logs.openstack.org/61/234461/1/check/gate-tempest-dsvm-trove/e253ed0/ : SUCCESS in 22m 57s","accounts_in_message":[],"_revision_number":1},{"id":"49ec3e3a6fa46f29a7e2292c7349b200ea93bced","author":{"_account_id":4240,"name":"Craig Vyvial","email":"cp16net@gmail.com","username":"cp16net"},"date":"2015-10-29 03:47:57.000000000","message":"Patch Set 1: Code-Review-1\n\n(3 comments)\n\nupdate the comments we all went over together","accounts_in_message":[],"_revision_number":1},{"id":"fcfb7d03e52967ebefd97d78d25ee4c76ef6434f","author":{"_account_id":10215,"name":"Peter Stachowski","email":"peter@tesora.com","username":"peterstac"},"date":"2015-10-29 06:32:36.000000000","message":"Patch Set 1:\n\n(3 comments)","accounts_in_message":[],"_revision_number":1},{"id":"b4c24d5479f66061d82cc5969e287d66c67ef2fd","author":{"_account_id":10215,"name":"Peter Stachowski","email":"peter@tesora.com","username":"peterstac"},"date":"2015-10-29 09:43:28.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"a7c600d996ab55120c211d25c1187b134ae55c7a","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2015-10-29 10:17:32.000000000","message":"Patch Set 2: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see http://docs.openstack.org/infra/manual/developers.html#automated-testing\n\n- gate-trove-pep8 http://logs.openstack.org/61/234461/2/check/gate-trove-pep8/11606f8/ : SUCCESS in 2m 44s\n- gate-trove-docs http://docs-draft.openstack.org/61/234461/2/check/gate-trove-docs/a1a6a8c//doc/build/html/ : SUCCESS in 3m 00s\n- gate-trove-python27 http://logs.openstack.org/61/234461/2/check/gate-trove-python27/b6e3ef6/ : SUCCESS in 10m 09s\n- gate-trove-functional-dsvm-mysql http://logs.openstack.org/61/234461/2/check/gate-trove-functional-dsvm-mysql/788f2d0/ : FAILURE in 25m 18s\n- gate-tempest-dsvm-trove http://logs.openstack.org/61/234461/2/check/gate-tempest-dsvm-trove/c4e7192/ : SUCCESS in 28m 38s","accounts_in_message":[],"_revision_number":2},{"id":"847968fdfbdbb3982c3eb0252ab09365e79bf031","author":{"_account_id":10215,"name":"Peter Stachowski","email":"peter@tesora.com","username":"peterstac"},"date":"2015-10-29 18:42:00.000000000","message":"Patch Set 2:\n\nrecheck","accounts_in_message":[],"_revision_number":2},{"id":"d1fa436649aaa237aab72db928bb6112e8586d31","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2015-10-29 20:20:15.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\n\n- gate-trove-pep8 http://logs.openstack.org/61/234461/2/check/gate-trove-pep8/3d1b422/ : SUCCESS in 2m 16s\n- gate-trove-docs http://docs-draft.openstack.org/61/234461/2/check/gate-trove-docs/107a97a//doc/build/html/ : SUCCESS in 2m 16s\n- gate-trove-python27 http://logs.openstack.org/61/234461/2/check/gate-trove-python27/f11812c/ : SUCCESS in 9m 24s\n- gate-trove-functional-dsvm-mysql http://logs.openstack.org/61/234461/2/check/gate-trove-functional-dsvm-mysql/2dcf52d/ : SUCCESS in 1h 38m 09s\n- gate-tempest-dsvm-trove http://logs.openstack.org/61/234461/2/check/gate-tempest-dsvm-trove/c481444/ : SUCCESS in 32m 43s","accounts_in_message":[],"_revision_number":2},{"id":"d91e6c50323bb75cae9ad56bd1fe6c6bce84a54f","author":{"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},"date":"2015-10-30 06:46:02.000000000","message":"Patch Set 2: Code-Review+2\n\n(3 comments)\n\nOK with me.","accounts_in_message":[],"_revision_number":2},{"id":"f36d3b17336ca5cd475008085e9bf52c8710fa70","author":{"_account_id":10440,"name":"Alex Tomic","email":"atomic777@gmail.com","username":"atomic77"},"date":"2015-10-30 06:46:11.000000000","message":"Patch Set 2: Code-Review+1","accounts_in_message":[],"_revision_number":2},{"id":"63739724a1e3d2c013658eb086f77c02832828db","author":{"_account_id":4240,"name":"Craig Vyvial","email":"cp16net@gmail.com","username":"cp16net"},"date":"2015-10-30 06:56:14.000000000","message":"Patch Set 2: Code-Review+2\n\n(1 comment)","accounts_in_message":[],"_revision_number":2},{"id":"c45ee8a76d6114d0a2876746bd57131293fc719c","author":{"_account_id":10215,"name":"Peter Stachowski","email":"peter@tesora.com","username":"peterstac"},"date":"2015-10-31 19:58:17.000000000","message":"Patch Set 2:\n\n(3 comments)","accounts_in_message":[],"_revision_number":2},{"id":"6addac6aa3a80393ec2aced2347c9e6763f7e8a1","author":{"_account_id":5293,"name":"Nikhil","email":"SlickNik@gmail.com","username":"slicknik"},"date":"2015-11-02 11:08:31.000000000","message":"Patch Set 2: Code-Review+2 Workflow+1\n\nWe discussed this in detail at the Mitaka Summit.","accounts_in_message":[],"_revision_number":2},{"id":"396c8bcdde8858e7f4aef826e621b578997f1b2b","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2015-11-02 11:08:37.000000000","message":"Patch Set 2: -Verified\n\nStarting gate jobs.\nhttp://status.openstack.org/zuul/","accounts_in_message":[],"_revision_number":2},{"id":"c9e8fa116bcaf10b9bbc58541f3de0dc6f7f392d","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2015-11-02 12:38:32.000000000","message":"Patch Set 2: Verified+2\n\nBuild succeeded (gate pipeline).\n\n- gate-trove-docs http://docs-draft.openstack.org/61/234461/2/gate/gate-trove-docs/3bbde3a//doc/build/html/ : SUCCESS in 3m 05s\n- gate-trove-pep8 http://logs.openstack.org/61/234461/2/gate/gate-trove-pep8/8b8fc67/ : SUCCESS in 3m 05s\n- gate-trove-python27 http://logs.openstack.org/61/234461/2/gate/gate-trove-python27/15b7d35/ : SUCCESS in 9m 35s\n- gate-trove-functional-dsvm-mysql http://logs.openstack.org/61/234461/2/gate/gate-trove-functional-dsvm-mysql/d2dd20d/ : SUCCESS in 1h 29m 48s\n- gate-tempest-dsvm-trove http://logs.openstack.org/61/234461/2/gate/gate-tempest-dsvm-trove/fa78731/ : SUCCESS in 30m 23s","accounts_in_message":[],"_revision_number":2},{"id":"46c1191911412f9d735e4e435d05358fb9025f08","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2015-11-02 12:38:33.000000000","message":"Change has been successfully merged into the git repository.","accounts_in_message":[],"_revision_number":2}],"current_revision_number":2,"current_revision":"1faa4d427d5fec782e740a2095dc6629bb8a33d7","revisions":{"bdc0783b61aca78438e06e96376344afb453ec3a":{"kind":"REWORK","_number":1,"created":"2015-10-13 22:39:50.000000000","uploader":{"_account_id":10215,"name":"Peter Stachowski","email":"peter@tesora.com","username":"peterstac"},"ref":"refs/changes/61/234461/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/trove","ref":"refs/changes/61/234461/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/trove refs/changes/61/234461/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/trove refs/changes/61/234461/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/trove refs/changes/61/234461/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/trove refs/changes/61/234461/1"}}},"commit":{"parents":[{"commit":"1cb7dc77920d2e95285c3b6cb25048443096b017","subject":"Merge \"Fix promote for Redis datastore\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/trove/commit/1cb7dc77920d2e95285c3b6cb25048443096b017"}]}],"author":{"name":"Peter Stachowski","email":"peter@tesora.com","date":"2015-09-18 22:15:01.000000000","tz":-240},"committer":{"name":"Peter Stachowski","email":"peter@tesora.com","date":"2015-10-13 22:39:21.000000000","tz":-240},"subject":"Refactor the datastore manager classes","message":"Refactor the datastore manager classes\n\nThere is a large amount of boiler-plate code in each datastore manager.\nAs more managers are added, the time involved in maintaining all this\ncode wil continue to grow. To alleviate this, a base manager class\nhas been added where all common code can reside.\n\nThe initial refactoring just moved some of the obvious code (such as\nrpc_ping and update_status) into the base class, along with defining\nproperties that can be used to further abstract functionality\ngoing forward.\n\nThe issue of having instances move in-and-out of ACTIVE state has\nalso been fixed by adding a flag file that is written by the base\nclass once prepare has finished successfully.\n\nCloses-Bug: #1482795\nCloses-Bug: #1487233\nPartially Implements: blueprint datastore-manager-refactor\nChange-Id: I603cf2ddebab1d7a5c874cd66431f803aaee2d42\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/trove/commit/bdc0783b61aca78438e06e96376344afb453ec3a"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/trove/commit/bdc0783b61aca78438e06e96376344afb453ec3a"}]},"branch":"refs/heads/master"},"1faa4d427d5fec782e740a2095dc6629bb8a33d7":{"kind":"REWORK","_number":2,"created":"2015-10-29 09:43:28.000000000","uploader":{"_account_id":10215,"name":"Peter Stachowski","email":"peter@tesora.com","username":"peterstac"},"ref":"refs/changes/61/234461/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/trove","ref":"refs/changes/61/234461/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/trove refs/changes/61/234461/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/trove refs/changes/61/234461/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/trove refs/changes/61/234461/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/trove refs/changes/61/234461/2"}}},"commit":{"parents":[{"commit":"1cb7dc77920d2e95285c3b6cb25048443096b017","subject":"Merge \"Fix promote for Redis datastore\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/trove/commit/1cb7dc77920d2e95285c3b6cb25048443096b017"}]}],"author":{"name":"Peter Stachowski","email":"peter@tesora.com","date":"2015-09-18 22:15:01.000000000","tz":-240},"committer":{"name":"Peter Stachowski","email":"peter@tesora.com","date":"2015-10-29 09:43:08.000000000","tz":-240},"subject":"Refactor the datastore manager classes","message":"Refactor the datastore manager classes\n\nThere is a large amount of boiler-plate code in each datastore manager.\nAs more managers are added, the time involved in maintaining all this\ncode wil continue to grow. To alleviate this, a base manager class\nhas been added where all common code can reside.\n\nThe initial refactoring just moved some of the obvious code (such as\nrpc_ping and update_status) into the base class, along with defining\nproperties that can be used to further abstract functionality\ngoing forward.\n\nThe issue of having instances move in-and-out of ACTIVE state has\nalso been fixed by adding a flag file that is written by the base\nclass once prepare has finished successfully.\n\nCloses-Bug: #1482795\nCloses-Bug: #1487233\nPartially Implements: blueprint datastore-manager-refactor\nChange-Id: I603cf2ddebab1d7a5c874cd66431f803aaee2d42\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/trove/commit/1faa4d427d5fec782e740a2095dc6629bb8a33d7"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/trove/commit/1faa4d427d5fec782e740a2095dc6629bb8a33d7"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[],"submit_requirements":[]}
