)]}'
{"id":"openstack%2Ftrove~33554","triplet_id":"openstack%2Ftrove~master~I6ca09803654d9e78362fde69185b5b9e05a5eb6b","project":"openstack/trove","branch":"master","topic":"bug/1177969","hashtags":[],"change_id":"I6ca09803654d9e78362fde69185b5b9e05a5eb6b","subject":"API Validation for Trove API","status":"MERGED","created":"2013-06-18 22:10:14.000000000","updated":"2013-07-03 21:53:08.000000000","submitted":"2013-07-03 21:53:08.000000000","submitter":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"total_comment_count":7,"unresolved_comment_count":0,"has_review_started":true,"meta_rev_id":"bcbd9d6af3df88177935d1e316cb8a5a0e42f668","_number":33554,"virtual_id_number":33554,"owner":{"_account_id":6156,"name":"Justin Hopper","email":"justin.hopper@hp.com","username":"justin-hopper"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"recommended":{"_account_id":7092,"name":"Deprecated Trove CI","email":"reddwarf-jenkins@googlegroups.com","username":"reddwarf","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":6156,"name":"Justin Hopper","email":"justin.hopper@hp.com","username":"justin-hopper"},{"value":0,"_account_id":5390,"name":"Steve Leon","username":"steve-leon","inactive":true},{"value":0,"_account_id":1375,"name":"Ed Cranford","email":"ed.cranford@gmail.com","username":"ed--cranford"},{"value":1,"date":"2013-07-02 01:33:17.000000000","_account_id":7092,"name":"Deprecated Trove CI","email":"reddwarf-jenkins@googlegroups.com","username":"reddwarf","tags":["SERVICE_USER"]},{"value":0,"_account_id":694,"name":"Tim Simpson","email":"tim.simpson@rackspace.com","username":"tim-simpson"},{"value":2,"date":"2013-07-03 21:53:08.000000000","_account_id":3,"name":"Jenkins","username":"jenkins"},{"value":0,"_account_id":739,"name":"Michael Basnight","email":"mbasnight@gmail.com","username":"hubcap"}],"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":694,"name":"Tim Simpson","email":"tim.simpson@rackspace.com","username":"tim-simpson"},"recommended":{"_account_id":1375,"name":"Ed Cranford","email":"ed.cranford@gmail.com","username":"ed--cranford"},"all":[{"value":0,"date":"2013-07-03 18:50:44.000000000","permitted_voting_range":{"min":0,"max":1},"_account_id":6156,"name":"Justin Hopper","email":"justin.hopper@hp.com","username":"justin-hopper"},{"value":0,"_account_id":5390,"name":"Steve Leon","username":"steve-leon","inactive":true},{"value":1,"date":"2013-07-03 18:26:27.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":1375,"name":"Ed Cranford","email":"ed.cranford@gmail.com","username":"ed--cranford"},{"value":0,"date":"2013-07-02 00:32:09.000000000","permitted_voting_range":{"min":0,"max":1},"_account_id":7092,"name":"Deprecated Trove CI","email":"reddwarf-jenkins@googlegroups.com","username":"reddwarf","tags":["SERVICE_USER"]},{"value":2,"date":"2013-07-03 18:36:31.000000000","_account_id":694,"name":"Tim Simpson","email":"tim.simpson@rackspace.com","username":"tim-simpson"},{"value":0,"_account_id":3,"name":"Jenkins","username":"jenkins"},{"value":2,"date":"2013-07-03 21:27:25.000000000","_account_id":739,"name":"Michael Basnight","email":"mbasnight@gmail.com","username":"hubcap"}],"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":"","value":1,"default_value":0,"optional":true},"Workflow":{"approved":{"_account_id":739,"name":"Michael Basnight","email":"mbasnight@gmail.com","username":"hubcap"},"all":[{"value":0,"_account_id":6156,"name":"Justin Hopper","email":"justin.hopper@hp.com","username":"justin-hopper"},{"value":0,"_account_id":5390,"name":"Steve Leon","username":"steve-leon","inactive":true},{"value":0,"_account_id":1375,"name":"Ed Cranford","email":"ed.cranford@gmail.com","username":"ed--cranford"},{"value":0,"_account_id":7092,"name":"Deprecated Trove CI","email":"reddwarf-jenkins@googlegroups.com","username":"reddwarf","tags":["SERVICE_USER"]},{"value":0,"date":"2013-07-03 18:36:31.000000000","_account_id":694,"name":"Tim Simpson","email":"tim.simpson@rackspace.com","username":"tim-simpson"},{"value":0,"_account_id":3,"name":"Jenkins","username":"jenkins"},{"value":1,"date":"2013-07-03 21:27:25.000000000","_account_id":739,"name":"Michael Basnight","email":"mbasnight@gmail.com","username":"hubcap"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":3,"name":"Jenkins","username":"jenkins"},{"_account_id":694,"name":"Tim Simpson","email":"tim.simpson@rackspace.com","username":"tim-simpson"},{"_account_id":739,"name":"Michael Basnight","email":"mbasnight@gmail.com","username":"hubcap"},{"_account_id":1375,"name":"Ed Cranford","email":"ed.cranford@gmail.com","username":"ed--cranford"},{"_account_id":5390,"name":"Steve Leon","username":"steve-leon","inactive":true},{"_account_id":6156,"name":"Justin Hopper","email":"justin.hopper@hp.com","username":"justin-hopper"},{"_account_id":7092,"name":"Deprecated Trove CI","email":"reddwarf-jenkins@googlegroups.com","username":"reddwarf","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2013-06-18 22:30:20.000000000","updated_by":{"_account_id":5390,"name":"Steve Leon","username":"steve-leon","inactive":true},"reviewer":{"_account_id":5390,"name":"Steve Leon","username":"steve-leon","inactive":true},"state":"REVIEWER"},{"updated":"2013-07-02 01:33:17.000000000","updated_by":{"_account_id":7092,"name":"Deprecated Trove CI","email":"reddwarf-jenkins@googlegroups.com","username":"reddwarf","tags":["SERVICE_USER"]},"reviewer":{"_account_id":7092,"name":"Deprecated Trove CI","email":"reddwarf-jenkins@googlegroups.com","username":"reddwarf","tags":["SERVICE_USER"]},"state":"REVIEWER"},{"updated":"2013-07-03 18:26:27.000000000","updated_by":{"_account_id":1375,"name":"Ed Cranford","email":"ed.cranford@gmail.com","username":"ed--cranford"},"reviewer":{"_account_id":1375,"name":"Ed Cranford","email":"ed.cranford@gmail.com","username":"ed--cranford"},"state":"REVIEWER"},{"updated":"2013-07-03 18:36:31.000000000","updated_by":{"_account_id":694,"name":"Tim Simpson","email":"tim.simpson@rackspace.com","username":"tim-simpson"},"reviewer":{"_account_id":694,"name":"Tim Simpson","email":"tim.simpson@rackspace.com","username":"tim-simpson"},"state":"REVIEWER"},{"updated":"2013-07-03 21:27:25.000000000","updated_by":{"_account_id":739,"name":"Michael Basnight","email":"mbasnight@gmail.com","username":"hubcap"},"reviewer":{"_account_id":739,"name":"Michael Basnight","email":"mbasnight@gmail.com","username":"hubcap"},"state":"REVIEWER"},{"updated":"2013-07-03 21:53:08.000000000","updated_by":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"reviewer":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"state":"REVIEWER"}],"messages":[{"id":"0cb232706c98f54ad35b2f313a43b988268420b0","author":{"_account_id":7092,"name":"Deprecated Trove CI","email":"reddwarf-jenkins@googlegroups.com","username":"reddwarf","tags":["SERVICE_USER"]},"date":"2013-06-18 22:10:18.000000000","message":"Patch Set 1:\n\nBuild Started https://rdjenkins.dyndns.org/job/Trove-Gate/366/ ","accounts_in_message":[],"_revision_number":1},{"id":"4724f2b952017298ef9b488c799d01106759c79a","author":{"_account_id":6156,"name":"Justin Hopper","email":"justin.hopper@hp.com","username":"justin-hopper"},"date":"2013-06-18 22:17:19.000000000","message":"Patch Set 1: (1 inline comment)\n\n","accounts_in_message":[],"_revision_number":1},{"id":"2ef48e8225fa39b9b6441b8ba949a73b10048903","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2013-06-18 22:26:14.000000000","message":"Patch Set 1: Doesn\u0027t seem to work\n\nBuild failed.  For information on how to proceed, see https://wiki.openstack.org/wiki/GerritJenkinsGithub#Test_Failures\n\n- http://logs.openstack.org/33554/1/check/gate-trove-requirements/1 : Incompatible requirement found; see https://wiki.openstack.org/wiki/Requirements in 6s\n- http://logs.openstack.org/33554/1/check/gate-trove-pep8/30 : SUCCESS in 1m 11s\n- http://logs.openstack.org/33554/1/check/gate-trove-python26/30 : SUCCESS in 2m 42s\n- http://logs.openstack.org/33554/1/check/gate-trove-python27/30 : SUCCESS in 2m 54s\n","accounts_in_message":[],"_revision_number":1},{"id":"a2d5562165c769af751c912637e12f9b0c381481","author":{"_account_id":5390,"name":"Steve Leon","username":"steve-leon","inactive":true},"date":"2013-06-18 22:30:20.000000000","message":"Patch Set 1:\n\nHi Justin, not sure if this has been discussed. But why not extract out all the schemas into a central location and have them referenced from there?\n\nIt seems it would be easier if we need to update the validation schemas.","accounts_in_message":[],"_revision_number":1},{"id":"3243bb0946c9e0ff6241948e8de2fe95018e6fa8","author":{"_account_id":7092,"name":"Deprecated Trove CI","email":"reddwarf-jenkins@googlegroups.com","username":"reddwarf","tags":["SERVICE_USER"]},"date":"2013-06-18 23:11:19.000000000","message":"Patch Set 1: Doesn\u0027t seem to work\n\nBuild Failed \n\nhttps://rdjenkins.dyndns.org/job/Trove-Gate/366/ : FAILURE","accounts_in_message":[],"_revision_number":1},{"id":"e18ec6fc4f6c3ce33b3873bba57024e0ee19f3b9","author":{"_account_id":7092,"name":"Deprecated Trove CI","email":"reddwarf-jenkins@googlegroups.com","username":"reddwarf","tags":["SERVICE_USER"]},"date":"2013-06-18 23:39:25.000000000","message":"Patch Set 1: No score\n\nBuild Started https://rdjenkins.dyndns.org/job/Trove-Gate/367/ ","accounts_in_message":[],"_revision_number":1},{"id":"c812f6c5261700d57e585b447da54838ccc5e16d","author":{"_account_id":7092,"name":"Deprecated Trove CI","email":"reddwarf-jenkins@googlegroups.com","username":"reddwarf","tags":["SERVICE_USER"]},"date":"2013-06-19 00:40:20.000000000","message":"Patch Set 1: Works for me\n\nBuild Successful \n\nhttps://rdjenkins.dyndns.org/job/Trove-Gate/367/ : SUCCESS","accounts_in_message":[],"_revision_number":1},{"id":"7ed3fe6ba20a755b296ac913d72ccac4cc39f4e8","author":{"_account_id":694,"name":"Tim Simpson","email":"tim.simpson@rackspace.com","username":"tim-simpson"},"date":"2013-06-20 15:25:22.000000000","message":"Patch Set 1: Do not merge\n\nI agree with Steve Leon- I want to discuss the idea of moving the schemas into some central spot. It can still be Python code, it would just be easier to parse if it was located together. I won\u0027t hold up the pull request for that.\n\nWhat does really bother me though is why are there zero integration tests for this? First, they would be easier to write and a more compelling way to illustrate the value this change brings. Second, QA recently added tests which had to be skipped because malformed JSON wasn\u0027t handled correctly. Bugs were added too. \n\nThe tests can be seen here:\nhttps://www.google.com/search?q\u003dopenstack+trove\u0026client\u003dubuntu\u0026channel\u003dcs\u0026aq\u003df\u0026oq\u003dopenstack+trove\u0026aqs\u003dchrome.0.57j60l3.3379\u0026sourceid\u003dchrome\u0026ie\u003dUTF-8\n\nIt seems like many of these should be enabled as part of this pull request since you\u0027re fixing the underlying problems that broke the tests originally.","accounts_in_message":[],"_revision_number":1},{"id":"a8d0fb36aba1d8a9392233c7ff3c8ea12ddb92f9","author":{"_account_id":6156,"name":"Justin Hopper","email":"justin.hopper@hp.com","username":"justin-hopper"},"date":"2013-06-26 21:46:10.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"36831350c9a8bb60fd3839eac265ce2785ec4f76","author":{"_account_id":7092,"name":"Deprecated Trove CI","email":"reddwarf-jenkins@googlegroups.com","username":"reddwarf","tags":["SERVICE_USER"]},"date":"2013-06-26 21:46:14.000000000","message":"Patch Set 2:\n\nBuild Started https://rdjenkins.dyndns.org/job/Trove-Gate/413/ ","accounts_in_message":[],"_revision_number":2},{"id":"a00190e033e7cf596efaddffe1efbf8ecf0814a6","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2013-06-26 21:52:03.000000000","message":"Patch Set 2: Doesn\u0027t seem to work\n\nBuild failed.  For information on how to proceed, see https://wiki.openstack.org/wiki/GerritJenkinsGithub#Test_Failures\n\n- http://logs.openstack.org/33554/2/check/gate-trove-requirements/3 : Incompatible requirement found; see https://wiki.openstack.org/wiki/Requirements in 4s\n- http://logs.openstack.org/33554/2/check/gate-trove-pep8/85 : SUCCESS in 2m 41s\n- http://logs.openstack.org/33554/2/check/gate-trove-python26/85 : SUCCESS in 2m 31s\n- http://logs.openstack.org/33554/2/check/gate-trove-python27/85 : SUCCESS in 1m 58s\n","accounts_in_message":[],"_revision_number":2},{"id":"355cbe247818c65aebda7f4cea9ade31a9860df8","author":{"_account_id":6156,"name":"Justin Hopper","email":"justin.hopper@hp.com","username":"justin-hopper"},"date":"2013-06-26 22:47:24.000000000","message":"Patch Set 2:\n\nTim,\n\nThere are several \"too big\", \"empty name\" tests already in the integration tests.  If we want to add more, I can do that though I feel that the integration tests should do a spot check while the unit tests can be more thorough (i.e. test every possible valid/invalid value.  \n\nThe link in the comment just did a Trove search in google which I am assuming is the wrong link.\n\nThanks,\n\nJustin","accounts_in_message":[],"_revision_number":2},{"id":"894a99fd2c622b81c47d097f9fa8fc4bc797bb27","author":{"_account_id":7092,"name":"Deprecated Trove CI","email":"reddwarf-jenkins@googlegroups.com","username":"reddwarf","tags":["SERVICE_USER"]},"date":"2013-06-26 22:47:39.000000000","message":"Patch Set 2: Doesn\u0027t seem to work\n\nBuild Failed \n\nhttps://rdjenkins.dyndns.org/job/Trove-Gate/413/ : FAILURE","accounts_in_message":[],"_revision_number":2},{"id":"9262c20417d5f616e96bf7ac5e8b4777f4bd5b77","author":{"_account_id":6156,"name":"Justin Hopper","email":"justin.hopper@hp.com","username":"justin-hopper"},"date":"2013-06-26 22:57:43.000000000","message":"Patch Set 2:\n\nTim,\n\nAlso as for the value this brings, it simply allows the developer to describe what is a valid schema, the framework itself checks the validity of the request object.  Therefore, the developer does not need to write validation \"code\".  There are other neat tricks such as generating a json object from the schema but that is something we aren\u0027t doing yet.\n\nThanks,\n\nJustin","accounts_in_message":[],"_revision_number":2},{"id":"0d2d0e909a854a064d36a023cc56b0ea8b2283a9","author":{"_account_id":6156,"name":"Justin Hopper","email":"justin.hopper@hp.com","username":"justin-hopper"},"date":"2013-06-26 23:32:37.000000000","message":"Uploaded patch set 3.","accounts_in_message":[],"_revision_number":3},{"id":"cd0485c10d19ae44757c5f9baaebceef922aae0a","author":{"_account_id":7092,"name":"Deprecated Trove CI","email":"reddwarf-jenkins@googlegroups.com","username":"reddwarf","tags":["SERVICE_USER"]},"date":"2013-06-26 23:32:41.000000000","message":"Patch Set 3:\n\nBuild Started https://rdjenkins.dyndns.org/job/Trove-Gate/415/ ","accounts_in_message":[],"_revision_number":3},{"id":"7c56988f6348c9a7340cf9de760b70a7d48af015","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2013-06-26 23:35:19.000000000","message":"Patch Set 3: Works for me\n\nBuild succeeded.\n\n- http://logs.openstack.org/33554/3/check/gate-trove-requirements/4 : SUCCESS in 5s\n- http://logs.openstack.org/33554/3/check/gate-trove-pep8/89 : SUCCESS in 1m 40s\n- http://logs.openstack.org/33554/3/check/gate-trove-python26/89 : SUCCESS in 2m 30s\n- http://logs.openstack.org/33554/3/check/gate-trove-python27/89 : SUCCESS in 1m 54s\n","accounts_in_message":[],"_revision_number":3},{"id":"ebe56952efa3269c264bf3e7fea3343f52e78519","author":{"_account_id":7092,"name":"Deprecated Trove CI","email":"reddwarf-jenkins@googlegroups.com","username":"reddwarf","tags":["SERVICE_USER"]},"date":"2013-06-27 00:33:41.000000000","message":"Patch Set 3: Doesn\u0027t seem to work\n\nBuild Failed \n\nhttps://rdjenkins.dyndns.org/job/Trove-Gate/415/ : FAILURE","accounts_in_message":[],"_revision_number":3},{"id":"87f7a465e0b0c6b91ba4c350bc4db1bc145c2d9e","author":{"_account_id":7092,"name":"Deprecated Trove CI","email":"reddwarf-jenkins@googlegroups.com","username":"reddwarf","tags":["SERVICE_USER"]},"date":"2013-06-27 00:34:31.000000000","message":"Patch Set 3: No score\n\nBuild Started https://rdjenkins.dyndns.org/job/Trove-Gate/416/ ","accounts_in_message":[],"_revision_number":3},{"id":"d6b4fe3917ef8ece389b5bf064c29a273b70b28b","author":{"_account_id":7092,"name":"Deprecated Trove CI","email":"reddwarf-jenkins@googlegroups.com","username":"reddwarf","tags":["SERVICE_USER"]},"date":"2013-06-27 01:35:31.000000000","message":"Patch Set 3: Doesn\u0027t seem to work\n\nBuild Failed \n\nhttps://rdjenkins.dyndns.org/job/Trove-Gate/416/ : FAILURE","accounts_in_message":[],"_revision_number":3},{"id":"33f8aece9d2a3e8272c5b48800273a1db8ca924c","author":{"_account_id":7092,"name":"Deprecated Trove CI","email":"reddwarf-jenkins@googlegroups.com","username":"reddwarf","tags":["SERVICE_USER"]},"date":"2013-06-27 04:10:59.000000000","message":"Patch Set 3: No score\n\nBuild Started https://rdjenkins.dyndns.org/job/Trove-Gate/418/ ","accounts_in_message":[],"_revision_number":3},{"id":"77ac6a8411714a3ab9acaf5f92b57d4762ada733","author":{"_account_id":7092,"name":"Deprecated Trove CI","email":"reddwarf-jenkins@googlegroups.com","username":"reddwarf","tags":["SERVICE_USER"]},"date":"2013-06-27 05:12:21.000000000","message":"Patch Set 3: Doesn\u0027t seem to work\n\nBuild Failed \n\nhttps://rdjenkins.dyndns.org/job/Trove-Gate/418/ : FAILURE","accounts_in_message":[],"_revision_number":3},{"id":"8fa888c141335301831768e20a0c893eebf37411","author":{"_account_id":7092,"name":"Deprecated Trove CI","email":"reddwarf-jenkins@googlegroups.com","username":"reddwarf","tags":["SERVICE_USER"]},"date":"2013-06-27 06:02:18.000000000","message":"Patch Set 3: No score\n\nBuild Started https://rdjenkins.dyndns.org/job/Trove-Gate/419/ ","accounts_in_message":[],"_revision_number":3},{"id":"2e734cc0c575ef425693dc3ecb097da6cfb64ec9","author":{"_account_id":7092,"name":"Deprecated Trove CI","email":"reddwarf-jenkins@googlegroups.com","username":"reddwarf","tags":["SERVICE_USER"]},"date":"2013-06-27 07:03:07.000000000","message":"Patch Set 3: Doesn\u0027t seem to work\n\nBuild Failed \n\nhttps://rdjenkins.dyndns.org/job/Trove-Gate/419/ : FAILURE","accounts_in_message":[],"_revision_number":3},{"id":"351875111fb32f67137d52686307aa58edc02701","author":{"_account_id":694,"name":"Tim Simpson","email":"tim.simpson@rackspace.com","username":"tim-simpson"},"date":"2013-06-28 15:19:43.000000000","message":"Patch Set 3:\n\nHi Justin,\n\nI\u0027m not questioning how this change provides value, I\u0027m saying that value would be better *illustrated* and proven by integration tests. I\u0027m acquainted with the feeling that unit tests are for more thorough checks while the integration tests just spot check things, which is true on projects where integration testing takes hours to run. However, fake mode runs them at the same speed of unit tests so the question is which form of testing would better illustrate the intent of this change.\n\nThe purpose of the change is to make sure if the user submits invalid JSON they get a polite error message back. The integration tests are designed to prove API responses like that.\n\nBoth kinds of tests have value though. The unit tests can make sure the validation framework you\u0027ve added work on various edge cases so other developers can plug it into their own code and know it will work or feel free to refactor code that uses it without fear it will break. The integration tests make sure that there\u0027s a point to adding the validation framework in the first place by proving that it will change the API changes as desired.\n\nSome integration tests were already added to Trove which show that malformed JSON is incorrectly handled. They were set to be skipped and can most likely be updated to be not skipped as part of your pull requests. \n\nhttps://github.com/openstack/trove/blob/master/trove/tests/api/mgmt/malformed_json.py\n\nThanks,\n\nTim","accounts_in_message":[],"_revision_number":3},{"id":"97501dbcae5eda9b8bcb3445f88caa1692d4b78b","author":{"_account_id":6156,"name":"Justin Hopper","email":"justin.hopper@hp.com","username":"justin-hopper"},"date":"2013-07-01 18:29:40.000000000","message":"Uploaded patch set 4.","accounts_in_message":[],"_revision_number":4},{"id":"486d15cda0889f4140ea9445a11001a872f15ae5","author":{"_account_id":7092,"name":"Deprecated Trove CI","email":"reddwarf-jenkins@googlegroups.com","username":"reddwarf","tags":["SERVICE_USER"]},"date":"2013-07-01 18:29:44.000000000","message":"Patch Set 4:\n\nBuild Started https://rdjenkins.dyndns.org/job/Trove-Gate/432/ ","accounts_in_message":[],"_revision_number":4},{"id":"573088827bf69826a106a530059605dda380914b","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2013-07-01 18:32:56.000000000","message":"Patch Set 4: Works for me\n\nBuild succeeded.\n\n- http://logs.openstack.org/33554/4/check/gate-trove-requirements/9 : SUCCESS in 6s\n- http://logs.openstack.org/33554/4/check/gate-trove-pep8/107 : SUCCESS in 1m 28s\n- http://logs.openstack.org/33554/4/check/gate-trove-python26/107 : SUCCESS in 2m 29s\n- http://logs.openstack.org/33554/4/check/gate-trove-python27/107 : SUCCESS in 3m 09s\n","accounts_in_message":[],"_revision_number":4},{"id":"30f6b98171073d956d619f53cdf0e33709cbf186","author":{"_account_id":7092,"name":"Deprecated Trove CI","email":"reddwarf-jenkins@googlegroups.com","username":"reddwarf","tags":["SERVICE_USER"]},"date":"2013-07-01 19:31:00.000000000","message":"Patch Set 4: Doesn\u0027t seem to work\n\nBuild Failed \n\nhttps://rdjenkins.dyndns.org/job/Trove-Gate/432/ : FAILURE","accounts_in_message":[],"_revision_number":4},{"id":"dc65288262f636c09f9f0d13967841094370f98a","author":{"_account_id":6156,"name":"Justin Hopper","email":"justin.hopper@hp.com","username":"justin-hopper"},"date":"2013-07-01 21:11:49.000000000","message":"Uploaded patch set 5.","accounts_in_message":[],"_revision_number":5},{"id":"6a491a0a8d18241f8696fff59afb3c5f9a80cc47","author":{"_account_id":7092,"name":"Deprecated Trove CI","email":"reddwarf-jenkins@googlegroups.com","username":"reddwarf","tags":["SERVICE_USER"]},"date":"2013-07-01 21:11:53.000000000","message":"Patch Set 5:\n\nBuild Started https://rdjenkins.dyndns.org/job/Trove-Gate/435/ ","accounts_in_message":[],"_revision_number":5},{"id":"3237ec671a9f3de628a0f5ba5ec6936cc4d5b440","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2013-07-01 21:14:30.000000000","message":"Patch Set 5: Works for me\n\nBuild succeeded.\n\n- http://logs.openstack.org/33554/5/check/gate-trove-requirements/10 : SUCCESS in 5s\n- http://logs.openstack.org/33554/5/check/gate-trove-pep8/109 : SUCCESS in 1m 22s\n- http://logs.openstack.org/33554/5/check/gate-trove-python26/109 : SUCCESS in 2m 34s\n- http://logs.openstack.org/33554/5/check/gate-trove-python27/109 : SUCCESS in 1m 49s\n","accounts_in_message":[],"_revision_number":5},{"id":"749ab0f557097789466ea12c9feebb05c02fe97b","author":{"_account_id":7092,"name":"Deprecated Trove CI","email":"reddwarf-jenkins@googlegroups.com","username":"reddwarf","tags":["SERVICE_USER"]},"date":"2013-07-01 22:13:00.000000000","message":"Patch Set 5: Doesn\u0027t seem to work\n\nBuild Failed \n\nhttps://rdjenkins.dyndns.org/job/Trove-Gate/435/ : FAILURE","accounts_in_message":[],"_revision_number":5},{"id":"c6c52201200e5fdb6f2caaacae6b7ed7a0fcbe2b","author":{"_account_id":6156,"name":"Justin Hopper","email":"justin.hopper@hp.com","username":"justin-hopper"},"date":"2013-07-01 22:18:17.000000000","message":"Patch Set 5:\n\nreverify no bug","accounts_in_message":[],"_revision_number":5},{"id":"a5bf4e22aecd3d3d07433264da78bf517b8b80cf","author":{"_account_id":6156,"name":"Justin Hopper","email":"justin.hopper@hp.com","username":"justin-hopper"},"date":"2013-07-01 22:37:45.000000000","message":"Patch Set 5:\n\nreverify no bug","accounts_in_message":[],"_revision_number":5},{"id":"37dbdcba072430a5b887cae109a0641d6cee22a3","author":{"_account_id":7092,"name":"Deprecated Trove CI","email":"reddwarf-jenkins@googlegroups.com","username":"reddwarf","tags":["SERVICE_USER"]},"date":"2013-07-01 22:44:05.000000000","message":"Patch Set 5: No score\n\nBuild Started https://rdjenkins.dyndns.org/job/Trove-Gate/436/ ","accounts_in_message":[],"_revision_number":5},{"id":"f0ea015bf9c91054071d8dd40326b25186227678","author":{"_account_id":7092,"name":"Deprecated Trove CI","email":"reddwarf-jenkins@googlegroups.com","username":"reddwarf","tags":["SERVICE_USER"]},"date":"2013-07-01 23:45:06.000000000","message":"Patch Set 5: Doesn\u0027t seem to work\n\nBuild Failed \n\nhttps://rdjenkins.dyndns.org/job/Trove-Gate/436/ : FAILURE","accounts_in_message":[],"_revision_number":5},{"id":"05fc759129bd753a989e1eef0d881e512ca5fdcd","author":{"_account_id":6156,"name":"Justin Hopper","email":"justin.hopper@hp.com","username":"justin-hopper"},"date":"2013-07-02 00:32:05.000000000","message":"Uploaded patch set 6.","accounts_in_message":[],"_revision_number":6},{"id":"07749c0e46b8f14a23942aa04ddbd3a3be0ceb16","author":{"_account_id":7092,"name":"Deprecated Trove CI","email":"reddwarf-jenkins@googlegroups.com","username":"reddwarf","tags":["SERVICE_USER"]},"date":"2013-07-02 00:32:09.000000000","message":"Patch Set 6:\n\nBuild Started https://rdjenkins.dyndns.org/job/Trove-Gate/438/ ","accounts_in_message":[],"_revision_number":6},{"id":"c2bb048f3685621d1112e55b1f2e19168b07ad07","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2013-07-02 00:35:03.000000000","message":"Patch Set 6: Works for me\n\nBuild succeeded.\n\n- http://logs.openstack.org/33554/6/check/gate-trove-requirements/11 : SUCCESS in 7s\n- http://logs.openstack.org/33554/6/check/gate-trove-pep8/112 : SUCCESS in 1m 24s\n- http://logs.openstack.org/33554/6/check/gate-trove-python26/112 : SUCCESS in 2m 54s\n- http://logs.openstack.org/33554/6/check/gate-trove-python27/112 : SUCCESS in 1m 55s\n","accounts_in_message":[],"_revision_number":6},{"id":"187a23e949096256b53ca304e4754c4f47aa26aa","author":{"_account_id":7092,"name":"Deprecated Trove CI","email":"reddwarf-jenkins@googlegroups.com","username":"reddwarf","tags":["SERVICE_USER"]},"date":"2013-07-02 01:33:17.000000000","message":"Patch Set 6: Works for me\n\nBuild Successful \n\nhttps://rdjenkins.dyndns.org/job/Trove-Gate/438/ : SUCCESS","accounts_in_message":[],"_revision_number":6},{"id":"60fdb5f780b4f68ccb8a4f19978f4141cc0e0ff0","author":{"_account_id":1375,"name":"Ed Cranford","email":"ed.cranford@gmail.com","username":"ed--cranford"},"date":"2013-07-03 18:26:27.000000000","message":"Patch Set 6: Looks good to me, but someone else must approve\n\n","accounts_in_message":[],"_revision_number":6},{"id":"927d5d12aa0df0e18dbcc3a60c6052809c38f53c","author":{"_account_id":694,"name":"Tim Simpson","email":"tim.simpson@rackspace.com","username":"tim-simpson"},"date":"2013-07-03 18:36:31.000000000","message":"Patch Set 6: Looks good to me (core reviewer)\n\n(3 inline comments)\n\nThis looks amazing Justin! Sorry to give you a hard time about it but I really wanted to see those tests- it really makes it clear how the user will see it and it looks awesome. Great work!","accounts_in_message":[],"_revision_number":6},{"id":"6fdceed105d3cf3f0d5178db5b51b5e2d5a9821d","author":{"_account_id":6156,"name":"Justin Hopper","email":"justin.hopper@hp.com","username":"justin-hopper"},"date":"2013-07-03 18:50:44.000000000","message":"Patch Set 6: (3 inline comments)\n\nTim,\n\nNot a problem at all - was good exposure for me with the integration tests. Glad this is shaping up to be a nice enhancement.  it helped to uncover a few bugs with our tests and some disconnects with our documentation.  It will definitely keep us honest going forward.\n\nOne take away from this, from my perspective, is to drop the nested \"action\" type apis and simply move the action in place of the generic \"action\" verb in the url.  For example instead of /instance/x-y-z/action -\u003e /instance/x-y-z/restart  and in cases of resize we should simple PUT the instance def with the new volume or flavorRef.\n\nCheers,\n\nJustin","accounts_in_message":[],"_revision_number":6},{"id":"21d6dd89ac36eb337def0a31a6d6a115de47acc7","author":{"_account_id":739,"name":"Michael Basnight","email":"mbasnight@gmail.com","username":"hubcap"},"date":"2013-07-03 21:27:25.000000000","message":"Patch Set 6: Looks good to me (core reviewer); Approved\n\n","accounts_in_message":[],"_revision_number":6},{"id":"af017b4b78a3cbc4502e8a922028ee62c6cfc1fc","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2013-07-03 21:27:27.000000000","message":"Patch Set 6: No score\n\nStarting gate jobs.\nhttp://status.openstack.org/zuul/","accounts_in_message":[],"_revision_number":6},{"id":"04b613d8b099ae761a337d92e367e465288df40b","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2013-07-03 21:53:08.000000000","message":"Patch Set 6: Verified\n\nBuild succeeded.\n\n- http://logs.openstack.org/33554/6/gate/gate-trove-requirements/13 : SUCCESS in 5s\n- http://logs.openstack.org/33554/6/gate/gate-trove-pep8/125 : SUCCESS in 1m 19s\n- http://logs.openstack.org/33554/6/gate/gate-trove-python26/125 : SUCCESS in 3m 37s\n- http://logs.openstack.org/33554/6/gate/gate-trove-python27/125 : SUCCESS in 3m 47s\n","accounts_in_message":[],"_revision_number":6},{"id":"e6f095cbf7aed6a75673691810730b605dcd8576","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2013-07-03 21:53:08.000000000","message":"Change has been successfully merged into the git repository.","accounts_in_message":[],"_revision_number":6}],"current_revision_number":6,"current_revision":"ccdf59f21e5c2771577b2087e33b81daf6033b6d","revisions":{"5bde50bc0ce3b70f40f1d595dc5e4b6339f6da59":{"kind":"REWORK","_number":1,"created":"2013-06-18 22:10:14.000000000","uploader":{"_account_id":6156,"name":"Justin Hopper","email":"justin.hopper@hp.com","username":"justin-hopper"},"ref":"refs/changes/54/33554/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/trove","ref":"refs/changes/54/33554/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/trove refs/changes/54/33554/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/trove refs/changes/54/33554/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/trove refs/changes/54/33554/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/trove refs/changes/54/33554/1"}}},"commit":{"parents":[{"commit":"d311f4e42fef828c3acee721807c992b996351d1","subject":"Merge \"Fixed restore to wait for full mysqld shutdown before attempting restart\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/trove/commit/d311f4e42fef828c3acee721807c992b996351d1"}]}],"author":{"name":"justin-hopper","email":"justin.hopper@hp.com","date":"2013-06-18 19:38:38.000000000","tz":-420},"committer":{"name":"justin-hopper","email":"justin.hopper@hp.com","date":"2013-06-18 22:09:41.000000000","tz":-420},"subject":"API Validation for Trove API","message":"API Validation for Trove API\n\n    Replaced validation with new and improved json schema validation\n\nImplements: json-schema-support\n\nChange-Id: I6ca09803654d9e78362fde69185b5b9e05a5eb6b\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/trove/commit/5bde50bc0ce3b70f40f1d595dc5e4b6339f6da59"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/trove/commit/5bde50bc0ce3b70f40f1d595dc5e4b6339f6da59"}]},"parents_data":[{"branch_name":"refs/heads/master","commit_id":"d311f4e42fef828c3acee721807c992b996351d1","is_merged_in_target_branch":true}],"branch":"refs/heads/master"},"6c227fd448cbb7d2716b54a05ab29bbaba5a7236":{"kind":"REWORK","_number":2,"created":"2013-06-26 21:46:10.000000000","uploader":{"_account_id":6156,"name":"Justin Hopper","email":"justin.hopper@hp.com","username":"justin-hopper"},"ref":"refs/changes/54/33554/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/trove","ref":"refs/changes/54/33554/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/trove refs/changes/54/33554/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/trove refs/changes/54/33554/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/trove refs/changes/54/33554/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/trove refs/changes/54/33554/2"}}},"commit":{"parents":[{"commit":"cbbd02481125b01787609c3af162e9e1d4d12280","subject":"Merge \"Start using Hacking\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/trove/commit/cbbd02481125b01787609c3af162e9e1d4d12280"}]}],"author":{"name":"justin-hopper","email":"justin.hopper@hp.com","date":"2013-06-18 19:38:38.000000000","tz":-420},"committer":{"name":"justin-hopper","email":"justin.hopper@hp.com","date":"2013-06-26 21:45:40.000000000","tz":-420},"subject":"API Validation for Trove API","message":"API Validation for Trove API\n\n    Replaced validation with new and improved json schema validation\n\nImplements: json-schema-support\n\nChange-Id: I6ca09803654d9e78362fde69185b5b9e05a5eb6b\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/trove/commit/6c227fd448cbb7d2716b54a05ab29bbaba5a7236"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/trove/commit/6c227fd448cbb7d2716b54a05ab29bbaba5a7236"}]},"parents_data":[{"branch_name":"refs/heads/master","commit_id":"cbbd02481125b01787609c3af162e9e1d4d12280","is_merged_in_target_branch":true}],"branch":"refs/heads/master"},"dbd0745d4ef042ab102783d0d5ade81995d36049":{"kind":"REWORK","_number":3,"created":"2013-06-26 23:32:37.000000000","uploader":{"_account_id":6156,"name":"Justin Hopper","email":"justin.hopper@hp.com","username":"justin-hopper"},"ref":"refs/changes/54/33554/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/trove","ref":"refs/changes/54/33554/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/trove refs/changes/54/33554/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/trove refs/changes/54/33554/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/trove refs/changes/54/33554/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/trove refs/changes/54/33554/3"}}},"commit":{"parents":[{"commit":"cbbd02481125b01787609c3af162e9e1d4d12280","subject":"Merge \"Start using Hacking\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/trove/commit/cbbd02481125b01787609c3af162e9e1d4d12280"}]}],"author":{"name":"justin-hopper","email":"justin.hopper@hp.com","date":"2013-06-18 19:38:38.000000000","tz":-420},"committer":{"name":"justin-hopper","email":"justin.hopper@hp.com","date":"2013-06-26 23:32:21.000000000","tz":-420},"subject":"API Validation for Trove API","message":"API Validation for Trove API\n\n    Replaced validation with new and improved json schema validation\n\nImplements: json-schema-support\n\nChange-Id: I6ca09803654d9e78362fde69185b5b9e05a5eb6b\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/trove/commit/dbd0745d4ef042ab102783d0d5ade81995d36049"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/trove/commit/dbd0745d4ef042ab102783d0d5ade81995d36049"}]},"parents_data":[{"branch_name":"refs/heads/master","commit_id":"cbbd02481125b01787609c3af162e9e1d4d12280","is_merged_in_target_branch":true}],"branch":"refs/heads/master"},"89326624acac9c604809748b2c45f9598a0449be":{"kind":"REWORK","_number":4,"created":"2013-07-01 18:29:40.000000000","uploader":{"_account_id":6156,"name":"Justin Hopper","email":"justin.hopper@hp.com","username":"justin-hopper"},"ref":"refs/changes/54/33554/4","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/trove","ref":"refs/changes/54/33554/4","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/trove refs/changes/54/33554/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/trove refs/changes/54/33554/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/trove refs/changes/54/33554/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/trove refs/changes/54/33554/4"}}},"commit":{"parents":[{"commit":"eafc62f61b1a3b1294f557f676e33f831af0ce77","subject":"Merge \"Fixed backups GET and DELETE to restrict access to the owner of backup\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/trove/commit/eafc62f61b1a3b1294f557f676e33f831af0ce77"}]}],"author":{"name":"justin-hopper","email":"justin.hopper@hp.com","date":"2013-06-18 19:38:38.000000000","tz":-420},"committer":{"name":"justin-hopper","email":"justin.hopper@hp.com","date":"2013-07-01 18:29:08.000000000","tz":-420},"subject":"API Validation for Trove API","message":"API Validation for Trove API\n\n    Replaced validation with new and improved json schema validation\n    Fixed malformed json schema bug #1177969\n\nImplements: json-schema-support\n\nChange-Id: I6ca09803654d9e78362fde69185b5b9e05a5eb6b\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/trove/commit/89326624acac9c604809748b2c45f9598a0449be"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/trove/commit/89326624acac9c604809748b2c45f9598a0449be"}]},"parents_data":[{"branch_name":"refs/heads/master","commit_id":"eafc62f61b1a3b1294f557f676e33f831af0ce77","is_merged_in_target_branch":true}],"branch":"refs/heads/master"},"f22d4a6c40d8443069305ed9bf04fd2004e09ba7":{"kind":"REWORK","_number":5,"created":"2013-07-01 21:11:49.000000000","uploader":{"_account_id":6156,"name":"Justin Hopper","email":"justin.hopper@hp.com","username":"justin-hopper"},"ref":"refs/changes/54/33554/5","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/trove","ref":"refs/changes/54/33554/5","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/trove refs/changes/54/33554/5 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/trove refs/changes/54/33554/5 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/trove refs/changes/54/33554/5 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/trove refs/changes/54/33554/5"}}},"commit":{"parents":[{"commit":"eafc62f61b1a3b1294f557f676e33f831af0ce77","subject":"Merge \"Fixed backups GET and DELETE to restrict access to the owner of backup\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/trove/commit/eafc62f61b1a3b1294f557f676e33f831af0ce77"}]}],"author":{"name":"justin-hopper","email":"justin.hopper@hp.com","date":"2013-06-18 19:38:38.000000000","tz":-420},"committer":{"name":"justin-hopper","email":"justin.hopper@hp.com","date":"2013-07-01 21:11:13.000000000","tz":-420},"subject":"API Validation for Trove API","message":"API Validation for Trove API\n\n    Replaced validation with new and improved json schema validation\n    Fixed malformed json schema bug #1177969\n    Fixed integration test for create_user; correct databases\n\nImplements: json-schema-support\n\nChange-Id: I6ca09803654d9e78362fde69185b5b9e05a5eb6b\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/trove/commit/f22d4a6c40d8443069305ed9bf04fd2004e09ba7"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/trove/commit/f22d4a6c40d8443069305ed9bf04fd2004e09ba7"}]},"parents_data":[{"branch_name":"refs/heads/master","commit_id":"eafc62f61b1a3b1294f557f676e33f831af0ce77","is_merged_in_target_branch":true}],"branch":"refs/heads/master"},"ccdf59f21e5c2771577b2087e33b81daf6033b6d":{"kind":"REWORK","_number":6,"created":"2013-07-02 00:32:05.000000000","uploader":{"_account_id":6156,"name":"Justin Hopper","email":"justin.hopper@hp.com","username":"justin-hopper"},"ref":"refs/changes/54/33554/6","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/trove","ref":"refs/changes/54/33554/6","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/trove refs/changes/54/33554/6 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/trove refs/changes/54/33554/6 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/trove refs/changes/54/33554/6 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/trove refs/changes/54/33554/6"}}},"commit":{"parents":[{"commit":"eafc62f61b1a3b1294f557f676e33f831af0ce77","subject":"Merge \"Fixed backups GET and DELETE to restrict access to the owner of backup\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/trove/commit/eafc62f61b1a3b1294f557f676e33f831af0ce77"}]}],"author":{"name":"justin-hopper","email":"justin.hopper@hp.com","date":"2013-06-18 19:38:38.000000000","tz":-420},"committer":{"name":"justin-hopper","email":"justin.hopper@hp.com","date":"2013-07-02 00:31:23.000000000","tz":-420},"subject":"API Validation for Trove API","message":"API Validation for Trove API\n\n    Replaced validation with new and improved json schema validation\n    Fixed malformed json schema bug #1177969\n    Fixed integration test for create_user; correct databases\n    Fixed integration for create_users; invalid character_set param\n\nImplements: json-schema-support\n\nChange-Id: I6ca09803654d9e78362fde69185b5b9e05a5eb6b\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/trove/commit/ccdf59f21e5c2771577b2087e33b81daf6033b6d"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/trove/commit/ccdf59f21e5c2771577b2087e33b81daf6033b6d"}]},"parents_data":[{"branch_name":"refs/heads/master","commit_id":"eafc62f61b1a3b1294f557f676e33f831af0ce77","is_merged_in_target_branch":true}],"branch":"refs/heads/master"}},"requirements":[],"submit_records":[],"submit_requirements":[]}
