)]}'
{"trove/tests/api/configurations.py":[{"author":{"_account_id":7850,"name":"Kevin Conway","email":"kevinjacobconway@gmail.com","username":"kevinconway"},"change_message_id":"91f5fd3b6f04384346e4c2b84bebc807a43b3ec7","unresolved":false,"context_lines":[{"line_number":209,"context_line":"        # create a configuration with valid parameters"},{"line_number":210,"context_line":"        values \u003d json.dumps(CONFIG.trove_configurations_valid_values)"},{"line_number":211,"context_line":"        expected_values \u003d json.loads(values)"},{"line_number":212,"context_line":"        result \u003d instance_info.dbaas.configurations.create(CONFIG_NAME,"},{"line_number":213,"context_line":"                                                           values,"},{"line_number":214,"context_line":"                                                           CONFIG_DESC)"},{"line_number":215,"context_line":"        resp, body \u003d instance_info.dbaas.client.last_response"}],"source_content_type":"text/x-python","patch_set":1,"id":"1ae5cdf2_0f1610a7","line":212,"updated":"2014-06-27 15:58:03.000000000","message":"You also need to add \"datastore\u003dinstance_info.dbaas_datastore\" and \"datastore_version\u003dinstance_info.dbaas_datastore_version\".\n\nOtherwise the configuration will be created with the default datastore and version which may or may not match the datastore being tested.","commit_id":"44e471b03e5da658fbf4b084b4979b277193b6a6"},{"author":{"_account_id":2559,"name":"Joe Cruz","email":"jcruz7@gmail.com","username":"jcruz7"},"change_message_id":"3d9e9a25b0ed147284ea14892cf5b9e2c2b6a2d4","unresolved":false,"context_lines":[{"line_number":209,"context_line":"        # create a configuration with valid parameters"},{"line_number":210,"context_line":"        values \u003d json.dumps(CONFIG.trove_configurations_valid_values)"},{"line_number":211,"context_line":"        expected_values \u003d json.loads(values)"},{"line_number":212,"context_line":"        result \u003d instance_info.dbaas.configurations.create(CONFIG_NAME,"},{"line_number":213,"context_line":"                                                           values,"},{"line_number":214,"context_line":"                                                           CONFIG_DESC)"},{"line_number":215,"context_line":"        resp, body \u003d instance_info.dbaas.client.last_response"}],"source_content_type":"text/x-python","patch_set":1,"id":"1ae5cdf2_65209549","line":212,"in_reply_to":"1ae5cdf2_0f1610a7","updated":"2014-06-27 16:35:12.000000000","message":"Good idea.\nDone","commit_id":"44e471b03e5da658fbf4b084b4979b277193b6a6"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"71652424139d0808f2f664f82abf900637f755fe","unresolved":false,"context_lines":[{"line_number":207,"context_line":"    @test"},{"line_number":208,"context_line":"    def test_valid_configurations_create(self):"},{"line_number":209,"context_line":"        # create a configuration with valid parameters"},{"line_number":210,"context_line":"        values \u003d json.dumps(CONFIG.trove_configurations_valid_values)"},{"line_number":211,"context_line":"        expected_values \u003d json.loads(values)"},{"line_number":212,"context_line":"        result \u003d instance_info.dbaas.configurations.create("},{"line_number":213,"context_line":"            CONFIG_NAME,"}],"source_content_type":"text/x-python","patch_set":2,"id":"1ae5cdf2_45355943","line":210,"updated":"2014-06-27 16:41:50.000000000","message":"CONFIG.configurations_valid_values, becuase they has nothing common with Trove, only wil databases","commit_id":"b6ca6dc09bb2adbcfe35ca7361ebbe73b0176256"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"2d50257aae5e571689cfc48f60b64af043fd67c7","unresolved":false,"context_lines":[{"line_number":206,"context_line":"    @test"},{"line_number":207,"context_line":"    def test_configurations_create_value_out_of_bounds(self):"},{"line_number":208,"context_line":"        \"\"\"Test create configuration with value out of bounds.\"\"\""},{"line_number":209,"context_line":"        mysql_configs \u003d CONFIG.mysql_configurations"},{"line_number":210,"context_line":"        values \u003d json.dumps(mysql_configs.get(\u0027out_of_bounds_over\u0027))"},{"line_number":211,"context_line":"        assert_unprocessable(instance_info.dbaas.configurations.create,"},{"line_number":212,"context_line":"                             CONFIG_NAME, values, CONFIG_DESC)"}],"source_content_type":"text/x-python","patch_set":7,"id":"baada198_3442853e","line":209,"updated":"2014-07-11 14:19:26.000000000","message":"you have to use instance datastore type to load specific configuration parameters from conf, and do not call mysql directly","commit_id":"8f57c0a3dffe9a6f57e0b6e86519ae2420ccf0d6"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"2d50257aae5e571689cfc48f60b64af043fd67c7","unresolved":false,"context_lines":[{"line_number":238,"context_line":"        # test being able to update and insert new parameter name and values"},{"line_number":239,"context_line":"        # to an existing configuration"},{"line_number":240,"context_line":"        values \u003d json.dumps("},{"line_number":241,"context_line":"            CONFIG.mysql_configurations.get(\u0027appending_values\u0027))"},{"line_number":242,"context_line":"        # ensure updated timestamp is different than created"},{"line_number":243,"context_line":"        sleep(1)"},{"line_number":244,"context_line":"        instance_info.dbaas.configurations.edit(configuration_info.id,"}],"source_content_type":"text/x-python","patch_set":7,"id":"baada198_d4ef891c","line":241,"updated":"2014-07-11 14:19:26.000000000","message":"same","commit_id":"8f57c0a3dffe9a6f57e0b6e86519ae2420ccf0d6"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"2d50257aae5e571689cfc48f60b64af043fd67c7","unresolved":false,"context_lines":[{"line_number":398,"context_line":"        # test that changing a non-dynamic parameter is applied to instance"},{"line_number":399,"context_line":"        # and show that the instance requires a restart"},{"line_number":400,"context_line":"        values \u003d json.dumps("},{"line_number":401,"context_line":"            CONFIG.mysql_configurations.get(\u0027nondynamic_parameter\u0027))"},{"line_number":402,"context_line":"        instance_info.dbaas.configurations.update(configuration_info.id,"},{"line_number":403,"context_line":"                                                  values)"},{"line_number":404,"context_line":"        resp, body \u003d instance_info.dbaas.client.last_response"}],"source_content_type":"text/x-python","patch_set":7,"id":"baada198_14f661f9","line":401,"updated":"2014-07-11 14:19:26.000000000","message":"same","commit_id":"8f57c0a3dffe9a6f57e0b6e86519ae2420ccf0d6"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"1b678cf8e2aace90802514bd21c86a4ac23574f0","unresolved":false,"context_lines":[{"line_number":145,"context_line":"class ConfigurationsTestBase(object):"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"    def __init__(self):"},{"line_number":148,"context_line":"        datastore_config \u003d CONFIG.get(instance_info.dbaas_datastore)"},{"line_number":149,"context_line":"        self.expected_configs \u003d datastore_config.get(\u0027configurations\u0027)"},{"line_number":150,"context_line":""},{"line_number":151,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"baada198_60a438a6","line":148,"updated":"2014-07-11 15:30:22.000000000","message":"Please do not use datastores from CONF object, just use datastores/versions API.","commit_id":"dbcf35cf2540d100673ef8acaee4e28dac9283a7"},{"author":{"_account_id":2559,"name":"Joe Cruz","email":"jcruz7@gmail.com","username":"jcruz7"},"change_message_id":"7a458e93e50be68d8af713424b9078b4948394dd","unresolved":false,"context_lines":[{"line_number":145,"context_line":"class ConfigurationsTestBase(object):"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"    def __init__(self):"},{"line_number":148,"context_line":"        datastore_config \u003d CONFIG.get(instance_info.dbaas_datastore)"},{"line_number":149,"context_line":"        self.expected_configs \u003d datastore_config.get(\u0027configurations\u0027)"},{"line_number":150,"context_line":""},{"line_number":151,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"baada198_c6a88322","line":148,"in_reply_to":"baada198_60a438a6","updated":"2014-07-14 15:08:24.000000000","message":"so as I was changing this I realized that the dbaas_datastore value from the CONF object is being used through out the current tests (for example to create an instance).\n\nAlso if I were to use the datastores api I\u0027m not sure how I would select the datastore if there are multiple datastores and the instance has not been created at this point.\n\nI think since the current tests are using the CONF object for consistency I should use it.\n\nWhat were the reasons for not wishing to use the CONF object value?","commit_id":"dbcf35cf2540d100673ef8acaee4e28dac9283a7"},{"author":{"_account_id":4463,"name":"iccha-sethi","email":"iccha.sethi@rackspace.com","username":"iccha-sethi"},"change_message_id":"7fa8fde42ef648d0e785a97ee3c051fa2a84760e","unresolved":false,"context_lines":[{"line_number":145,"context_line":"class ConfigurationsTestBase(object):"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"    def __init__(self):"},{"line_number":148,"context_line":"        datastore_config \u003d CONFIG.get(instance_info.dbaas_datastore)"},{"line_number":149,"context_line":"        self.expected_configs \u003d datastore_config.get(\u0027configurations\u0027)"},{"line_number":150,"context_line":""},{"line_number":151,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"baada198_6fb11cdf","line":148,"in_reply_to":"baada198_69a06090","updated":"2014-07-15 15:16:18.000000000","message":"Also so far we have been using the datastore manager name to load config groups:\nhttps://github.com/openstack/trove/blob/master/trove/taskmanager/models.py#L256\nthis helps combats inconsistencies in datastore and version names.","commit_id":"dbcf35cf2540d100673ef8acaee4e28dac9283a7"},{"author":{"_account_id":4463,"name":"iccha-sethi","email":"iccha.sethi@rackspace.com","username":"iccha-sethi"},"change_message_id":"863c3a174b9fab7183690fe402fb420a799cb38e","unresolved":false,"context_lines":[{"line_number":145,"context_line":"class ConfigurationsTestBase(object):"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"    def __init__(self):"},{"line_number":148,"context_line":"        datastore_config \u003d CONFIG.get(instance_info.dbaas_datastore)"},{"line_number":149,"context_line":"        self.expected_configs \u003d datastore_config.get(\u0027configurations\u0027)"},{"line_number":150,"context_line":""},{"line_number":151,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"baada198_ef18ccce","line":148,"in_reply_to":"baada198_6fb11cdf","updated":"2014-07-15 15:18:00.000000000","message":"But the API call for datastore version show does not return the manager :(\nSo looks like a checkmate","commit_id":"dbcf35cf2540d100673ef8acaee4e28dac9283a7"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"36048f17974ae6be41a80f3ac269aa1849d1cb2b","unresolved":false,"context_lines":[{"line_number":145,"context_line":"class ConfigurationsTestBase(object):"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"    def __init__(self):"},{"line_number":148,"context_line":"        datastore_config \u003d CONFIG.get(instance_info.dbaas_datastore)"},{"line_number":149,"context_line":"        self.expected_configs \u003d datastore_config.get(\u0027configurations\u0027)"},{"line_number":150,"context_line":""},{"line_number":151,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"baada198_69a06090","line":148,"in_reply_to":"baada198_c6a88322","updated":"2014-07-14 19:53:16.000000000","message":"I\u0027ve been working on bug-fix that breaks dependency between tests and CONF datastores/versions. https://review.openstack.org/#/c/99682/\n\nI\u0027d it will be nice to see if you will use datastores/versions through given datastores API.\n\nHere\u0027s another reason:\n1. You\u0027re creating configuration for instance that has datastore and version.\n2. As regular user you have to query datastores/versions API to find suitable datastore and version for instance provisioning.\n\nSo, simply, you have to act like a user, you don\u0027t have an access to CONF object, you have only API nothing else.","commit_id":"dbcf35cf2540d100673ef8acaee4e28dac9283a7"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"af732463db02b3424cf2344740fde736c488eb65","unresolved":false,"context_lines":[{"line_number":145,"context_line":"class ConfigurationsTestBase(object):"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"    def __init__(self):"},{"line_number":148,"context_line":"        datastore_config \u003d CONFIG.get(instance_info.dbaas_datastore)"},{"line_number":149,"context_line":"        self.expected_configs \u003d datastore_config.get(\u0027configurations\u0027)"},{"line_number":150,"context_line":""},{"line_number":151,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"baada198_33b4df34","line":148,"in_reply_to":"baada198_ef18ccce","updated":"2014-07-15 20:55:38.000000000","message":"We are able to control test config, and that\u0027s why datastore name equals to datastore version manager. No, it\u0027s not a checkmate.\nSo, i still stand on use of datastores API call against CONFIG object attributes.","commit_id":"dbcf35cf2540d100673ef8acaee4e28dac9283a7"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"128cfc30f86e8a155e11d00a9d8563fe1c8e935e","unresolved":false,"context_lines":[{"line_number":149,"context_line":"        \"\"\"given and instance retrieve the expected test configurations for"},{"line_number":150,"context_line":"        instance\u0027s datastore\"\"\""},{"line_number":151,"context_line":"        instance \u003d instance_info.dbaas.instances.get(instance_id)"},{"line_number":152,"context_line":"        datastore_test_configs \u003d  CONFIG.get(instance.datastore)"},{"line_number":153,"context_line":"        return datastore_test_configs.get(\"configurations\")"},{"line_number":154,"context_line":""},{"line_number":155,"context_line":"    @staticmethod"}],"source_content_type":"text/x-python","patch_set":10,"id":"baada198_b8eabc0c","line":152,"updated":"2014-07-21 20:41:04.000000000","message":"instance.datastore is a dict, so you have to extract \u0027type\u0027:\n\ninstance.datastore[\u0027type\u0027]\n\nsee https://github.com/openstack/trove/blob/master/trove/instance/views.py#L39-L40","commit_id":"c08f716a7fc8ef9d61d903cad4c7c861735cdef7"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"128cfc30f86e8a155e11d00a9d8563fe1c8e935e","unresolved":false,"context_lines":[{"line_number":244,"context_line":"            CONFIG_NAME,"},{"line_number":245,"context_line":"            values,"},{"line_number":246,"context_line":"            CONFIG_DESC,"},{"line_number":247,"context_line":"            datastore\u003dinstance_info.dbaas_datastore,"},{"line_number":248,"context_line":"            datastore_version\u003dinstance_info.dbaas_datastore_version)"},{"line_number":249,"context_line":"        resp, body \u003d instance_info.dbaas.client.last_response"},{"line_number":250,"context_line":"        assert_equal(resp.status, 200)"}],"source_content_type":"text/x-python","patch_set":10,"id":"baada198_78bbc40e","line":247,"updated":"2014-07-21 20:41:04.000000000","message":"instance_info.dbaas_datastore also referres to CONFIG object,\nplease use datastores API to query appropriate datastore.","commit_id":"c08f716a7fc8ef9d61d903cad4c7c861735cdef7"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"128cfc30f86e8a155e11d00a9d8563fe1c8e935e","unresolved":false,"context_lines":[{"line_number":245,"context_line":"            values,"},{"line_number":246,"context_line":"            CONFIG_DESC,"},{"line_number":247,"context_line":"            datastore\u003dinstance_info.dbaas_datastore,"},{"line_number":248,"context_line":"            datastore_version\u003dinstance_info.dbaas_datastore_version)"},{"line_number":249,"context_line":"        resp, body \u003d instance_info.dbaas.client.last_response"},{"line_number":250,"context_line":"        assert_equal(resp.status, 200)"},{"line_number":251,"context_line":"        global configuration_info"}],"source_content_type":"text/x-python","patch_set":10,"id":"baada198_98b6d823","line":248,"updated":"2014-07-21 20:41:04.000000000","message":"same","commit_id":"c08f716a7fc8ef9d61d903cad4c7c861735cdef7"},{"author":{"_account_id":694,"name":"Tim Simpson","email":"tim.simpson@rackspace.com","username":"tim-simpson"},"change_message_id":"0c27d74d719709f1082d758d4bef02130a773c0f","unresolved":false,"context_lines":[{"line_number":172,"context_line":"        \"\"\"Test get expected configurations parameters.\"\"\""},{"line_number":173,"context_line":"        expected_attrs \u003d [\"configuration-parameters\"]"},{"line_number":174,"context_line":"        instance_info.dbaas.configuration_parameters.parameters("},{"line_number":175,"context_line":"            CONFIG.dbaas_datastore,"},{"line_number":176,"context_line":"            CONFIG.dbaas_datastore_version)"},{"line_number":177,"context_line":"        resp, body \u003d instance_info.dbaas.client.last_response"},{"line_number":178,"context_line":"        attrcheck \u003d AttrCheck()"}],"source_content_type":"text/x-python","patch_set":14,"id":"baada198_1cdf990d","line":175,"updated":"2014-07-23 19:46:31.000000000","message":"This needs to be switched back to instance_info.","commit_id":"f38cd65cc858a5bb6234e7ca53d3e95086acf8c8"}],"trove/tests/config.py":[{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"dbf10bb2ecba73e9d303bdbeb2ceccd7f75d7f63","unresolved":false,"context_lines":[{"line_number":92,"context_line":"            \"usage_endpoint\": USAGE_ENDPOINT,"},{"line_number":93,"context_line":"            \"root_on_create\": False,"},{"line_number":94,"context_line":"            \"trove_configurations_valid_values\":{"},{"line_number":95,"context_line":"                \"connect_timeout\": 120,"},{"line_number":96,"context_line":"                \"local_infile\": True,"},{"line_number":97,"context_line":"                \"collation_server\": \"latin1_swedish_ci\""},{"line_number":98,"context_line":"            },"}],"source_content_type":"text/x-python","patch_set":3,"id":"1ae5cdf2_49a9eb7a","line":95,"updated":"2014-06-27 21:32:34.000000000","message":"Please remove \"trove\" prefix. Another thing, configuration attribute should a string, not fully-baked dict. Because there\u0027s no reason to do Jason.load on already baked dict object. So please make this option as raw string","commit_id":"9a25372db55ba7096fa68378de9f422da72ab80e"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"f0c311095b75c65bb282e725dff932d66ef07edb","unresolved":false,"context_lines":[{"line_number":91,"context_line":"            \"trove_max_volumes_per_user\": 100,"},{"line_number":92,"context_line":"            \"usage_endpoint\": USAGE_ENDPOINT,"},{"line_number":93,"context_line":"            \"root_on_create\": False,"},{"line_number":94,"context_line":"            \"mysql_configurations_valid_values\": {"},{"line_number":95,"context_line":"                \"connect_timeout\": 120,"},{"line_number":96,"context_line":"                \"local_infile\": True,"},{"line_number":97,"context_line":"                \"collation_server\": \"latin1_swedish_ci\""}],"source_content_type":"text/x-python","patch_set":5,"id":"baada198_d6037f71","line":94,"updated":"2014-07-01 08:37:47.000000000","message":"As i can forsee, this code should be updated in next way:\n\"mysql\": {\n     \"configurations_valid_values\": ... ,\n     \"configurations_appending_values\": ... ,\n     \"configurations_nondynamic_parameter\": ... ,\n     \"configurations_out_of_bounds_under\": ... ,\n     \"configurations_out_of_bounds_over\": ...\n}\n\nThis change is required because you\u0027re pinning configuration values to mysql datastore that is incorrect in terms of multi-datastore support.","commit_id":"84747ec66ba8dbf2e0a8f80697791046962a8951"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"2d50257aae5e571689cfc48f60b64af043fd67c7","unresolved":false,"context_lines":[{"line_number":91,"context_line":"            \"trove_max_volumes_per_user\": 100,"},{"line_number":92,"context_line":"            \"usage_endpoint\": USAGE_ENDPOINT,"},{"line_number":93,"context_line":"            \"root_on_create\": False,"},{"line_number":94,"context_line":"            \"mysql_configurations\": {"},{"line_number":95,"context_line":"                \"valid_values\": {"},{"line_number":96,"context_line":"                    \"connect_timeout\": 120,"},{"line_number":97,"context_line":"                    \"local_infile\": True,"}],"source_content_type":"text/x-python","patch_set":7,"id":"baada198_543ff9b3","line":94,"updated":"2014-07-11 14:19:26.000000000","message":"the root key should not contain nothing common with datastore.\n\nit should be\n\n{{datastore}} : configurations: {....}","commit_id":"8f57c0a3dffe9a6f57e0b6e86519ae2420ccf0d6"}]}
