)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"10eafd670d4ea34ea09a2e29b5f7df9e2526c086","unresolved":false,"context_lines":[{"line_number":12,"context_line":"1. Keeps the same behaviour with existing code"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"2. Enables the config variable [DEFAULT]datastore_options"},{"line_number":15,"context_line":"   for trove-taskmanger.conf or similar configuration files,"},{"line_number":16,"context_line":"   which are loaded with --config-file\u003d in command line."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"   For an experimental datastore perspective,"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":9,"id":"AAAAW3%2F%2F0jA%3D","line":15,"updated":"2014-04-10 07:33:26.000000000","message":"To be honest, not only for the taskmanager. Example:\nAPI service requires network port for security groups API.\n\nPlease update the commit message to reflect whole situation.","commit_id":"e4e1cbad9df98a38ee055c40c57a634581202b9a"}],"trove/cmd/api.py":[{"author":{"_account_id":5293,"name":"Nikhil","email":"SlickNik@gmail.com","username":"slicknik"},"change_message_id":"fde2fab6382eb62ea8ed72b493db6f65c055f957","unresolved":false,"context_lines":[{"line_number":34,"context_line":""},{"line_number":35,"context_line":"def main():"},{"line_number":36,"context_line":"    cfg.parse_args(sys.argv)"},{"line_number":37,"context_line":"    cfg.load_datastore_opts()"},{"line_number":38,"context_line":"    logging.setup(None)"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"    debug_utils.setup()"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAWH%2F%2FuHo%3D","line":37,"updated":"2014-03-14 08:39:37.000000000","message":"Do we need to explicitly call this? Shouldn\u0027t the loading happen implicitly as part of the module import?\n\n(If the intention was to support loading datastore_opts dynamically from args, we should probably look into updating parse_args to do this)","commit_id":"fc2b48c185d8d8663281b5bcb3b196c18ed11968"},{"author":{"_account_id":8311,"name":"SnowDust","email":"nilakhya.chatterjee@globallogic.com","username":"nilc"},"change_message_id":"a9833639429d8b847c2cd4692eba00cce893ca5c","unresolved":false,"context_lines":[{"line_number":34,"context_line":""},{"line_number":35,"context_line":"def main():"},{"line_number":36,"context_line":"    cfg.parse_args(sys.argv)"},{"line_number":37,"context_line":"    cfg.load_datastore_opts()"},{"line_number":38,"context_line":"    logging.setup(None)"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"    debug_utils.setup()"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAWH%2F%2FstM%3D","line":37,"in_reply_to":"AAAAWH%2F%2FuHo%3D","updated":"2014-03-14 12:25:43.000000000","message":"intention was to support loading datastore_opts dynamically from args, we should probably look into updating parse_args to do this\n\nRight you observed it correctly. will do the change","commit_id":"fc2b48c185d8d8663281b5bcb3b196c18ed11968"}],"trove/common/cfg.py":[{"author":{"_account_id":5293,"name":"Nikhil","email":"SlickNik@gmail.com","username":"slicknik"},"change_message_id":"fde2fab6382eb62ea8ed72b493db6f65c055f957","unresolved":false,"context_lines":[{"line_number":290,"context_line":"             project\u003d\u0027trove\u0027,"},{"line_number":291,"context_line":"             default_config_files\u003ddefault_config_files)"},{"line_number":292,"context_line":""},{"line_number":293,"context_line":"load_datastore_opts()"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAWH%2F%2FuFs%3D","line":293,"updated":"2014-03-14 08:39:37.000000000","message":"Probably want to move this up to where the other opts are being registered.","commit_id":"fc2b48c185d8d8663281b5bcb3b196c18ed11968"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"b5e87705bd7ca21affa67cc75c86c60ffe81ffcf","unresolved":false,"context_lines":[{"line_number":262,"context_line":"                    \u0027max_header_line may need to be increased when using \u0027"},{"line_number":263,"context_line":"                    \u0027large tokens (typically those generated by the \u0027"},{"line_number":264,"context_line":"                    \u0027Keystone v3 API with big service catalogs\u0027),"},{"line_number":265,"context_line":"    cfg.DictOpt(\u0027datastore_options\u0027, default\u003ddatastore_options_definition,"},{"line_number":266,"context_line":"                    help\u003d\u0027Load datastore specific configuration options.\u0027"},{"line_number":267,"context_line":"                    \u0027Using module paths to load config from\u0027),"},{"line_number":268,"context_line":"    ]"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAWH%2F9yPE%3D","line":265,"updated":"2014-04-02 06:35:57.000000000","message":"To which service this option belongs ?","commit_id":"d944355e571a1f2b64c1ceb73488cc9bd926ee98"},{"author":{"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},"change_message_id":"1b679cdc8c72d98a48da79ee05665bb6b37b9ac2","unresolved":false,"context_lines":[{"line_number":294,"context_line":"    # having datastore_options definitions"},{"line_number":295,"context_line":"    load_datastore_opts()"},{"line_number":296,"context_line":""},{"line_number":297,"context_line":"load_datastore_opts()"}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAW3%2F%2F%2F%2Fc%3D","line":297,"updated":"2014-04-08 22:35:45.000000000","message":"It would improve readability if this line (297) were not all by its lonesome.","commit_id":"c0ed9fec784819e8f12a976223150a36badbdde0"},{"author":{"_account_id":6162,"name":"Dan Nguyen","email":"dan.nguyens.mail@gmail.com","username":"daniel-a-nguyen"},"change_message_id":"3d422e73fb0f33313c48df1a3b5d8e1438883ee8","unresolved":false,"context_lines":[{"line_number":294,"context_line":"    # having datastore_options definitions"},{"line_number":295,"context_line":"    load_datastore_opts()"},{"line_number":296,"context_line":""},{"line_number":297,"context_line":"load_datastore_opts()"}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAW3%2F%2F%2BNE%3D","line":297,"in_reply_to":"AAAAW3%2F%2F%2F%2Fc%3D","updated":"2014-04-09 06:25:14.000000000","message":"I\u0027d fine with a comment :)","commit_id":"c0ed9fec784819e8f12a976223150a36badbdde0"}],"trove/guestagent/datastore/cassandra/options.py":[{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"b5e87705bd7ca21affa67cc75c86c60ffe81ffcf","unresolved":false,"context_lines":[{"line_number":1,"context_line":"from oslo.config import cfg"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# Cassandra"},{"line_number":4,"context_line":"cassandra_group \u003d cfg.OptGroup("}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAWH%2F9yOg%3D","line":1,"updated":"2014-04-02 06:35:57.000000000","message":"missing header","commit_id":"d944355e571a1f2b64c1ceb73488cc9bd926ee98"}],"trove/guestagent/datastore/couchbase/options.py":[{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"b5e87705bd7ca21affa67cc75c86c60ffe81ffcf","unresolved":false,"context_lines":[{"line_number":1,"context_line":"from oslo.config import cfg"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"#Couchbase"},{"line_number":4,"context_line":"couchbase_group \u003d cfg.OptGroup("}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAWH%2F9yOc%3D","line":1,"updated":"2014-04-02 06:35:57.000000000","message":"missing header","commit_id":"d944355e571a1f2b64c1ceb73488cc9bd926ee98"}],"trove/guestagent/datastore/mongodb/options.py":[{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"b5e87705bd7ca21affa67cc75c86c60ffe81ffcf","unresolved":false,"context_lines":[{"line_number":1,"context_line":"from oslo.config import cfg"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# MongoDB"},{"line_number":4,"context_line":"mongodb_group \u003d cfg.OptGroup("}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAWH%2F9yOY%3D","line":1,"updated":"2014-04-02 06:35:57.000000000","message":"missing header","commit_id":"d944355e571a1f2b64c1ceb73488cc9bd926ee98"},{"author":{"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},"change_message_id":"1b679cdc8c72d98a48da79ee05665bb6b37b9ac2","unresolved":false,"context_lines":[{"line_number":16,"context_line":"from oslo.config import cfg"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"# MongoDB"},{"line_number":19,"context_line":"mongodb_group \u003d cfg.OptGroup("},{"line_number":20,"context_line":"    \u0027mongodb\u0027, title\u003d\u0027MongoDB options\u0027,"},{"line_number":21,"context_line":"    help\u003d\"Oslo option group designed for MongoDB datastore\")"},{"line_number":22,"context_line":"mongodb_opts \u003d ["}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAW3%2F%2F%2F%2Bg%3D","line":19,"updated":"2014-04-08 22:35:45.000000000","message":"The comments in the file about mysql variants applies equally to MongoDB variants. TokuMX is a good example of a MongoDB variant that one would like to have a datastore for.\n\nA better abstraction for variants would be valuable. Is it within the scope of this blueprint to make this possible?","commit_id":"c0ed9fec784819e8f12a976223150a36badbdde0"},{"author":{"_account_id":8311,"name":"SnowDust","email":"nilakhya.chatterjee@globallogic.com","username":"nilc"},"change_message_id":"1becd01827528be43063201e8cef2e7008068422","unresolved":false,"context_lines":[{"line_number":16,"context_line":"from oslo.config import cfg"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"# MongoDB"},{"line_number":19,"context_line":"mongodb_group \u003d cfg.OptGroup("},{"line_number":20,"context_line":"    \u0027mongodb\u0027, title\u003d\u0027MongoDB options\u0027,"},{"line_number":21,"context_line":"    help\u003d\"Oslo option group designed for MongoDB datastore\")"},{"line_number":22,"context_line":"mongodb_opts \u003d ["}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAW3%2F%2F%2BEY%3D","line":19,"in_reply_to":"AAAAW3%2F%2F%2F%2Bg%3D","updated":"2014-04-09 06:52:53.000000000","message":"amrith, makes sense\n\nthe patch set is however limited to refactoring the current implementation, however, the management of code among datastore varients is a good point to talk.\n\nLets talk it using a ML/BP as not all audience looks at the review. \n\nI will soon create a BP that captures your mentions thanks for suggesting this change.","commit_id":"c0ed9fec784819e8f12a976223150a36badbdde0"}],"trove/guestagent/datastore/mysql/options.py":[{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"b5e87705bd7ca21affa67cc75c86c60ffe81ffcf","unresolved":false,"context_lines":[{"line_number":1,"context_line":"from oslo.config import cfg"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# Mysql"},{"line_number":4,"context_line":"mysql_group \u003d cfg.OptGroup("}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAWH%2F9yOU%3D","line":1,"updated":"2014-04-02 06:35:57.000000000","message":"missing header","commit_id":"d944355e571a1f2b64c1ceb73488cc9bd926ee98"},{"author":{"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},"change_message_id":"1b679cdc8c72d98a48da79ee05665bb6b37b9ac2","unresolved":false,"context_lines":[{"line_number":16,"context_line":"from oslo.config import cfg"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"# Mysql"},{"line_number":19,"context_line":"mysql_group \u003d cfg.OptGroup("},{"line_number":20,"context_line":"    \u0027mysql\u0027, title\u003d\u0027MySQL options\u0027,"},{"line_number":21,"context_line":"    help\u003d\"Oslo option group designed for MySQL datastore\")"},{"line_number":22,"context_line":"mysql_opts \u003d ["}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAWn%2F%2F2%2FM%3D","line":19,"updated":"2014-04-08 22:35:45.000000000","message":"We speak of Trove being pluggable for datastores so adding a new datastore should be easy, as should maintaining them.\n\nThere are likely going to be many more variants of MySQL (MariaDB, ...). This implementation appears to lead to a lot of duplicated code.\n\nIs there some way to reduce the duplicated code and yet keep MySQL and Percona (and in the future MariaDB) seperate?\n\nOne possibility is to have a mysql/options.py and also a mysql/percona-variant.py and a mysql/mysql-variant.py and in the future a mysql/mariadb-variant.py or some such.\n\nOr do we believe that there is no value in this kind of separation and we\u0027d just put mariadb as another hunk of duplicated code here?","commit_id":"c0ed9fec784819e8f12a976223150a36badbdde0"},{"author":{"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},"change_message_id":"1b679cdc8c72d98a48da79ee05665bb6b37b9ac2","unresolved":false,"context_lines":[{"line_number":33,"context_line":"    cfg.StrOpt(\u0027mount_point\u0027, default\u003d\u0027/var/lib/mysql\u0027,"},{"line_number":34,"context_line":"               help\u003d\"Filesystem path for mounting \""},{"line_number":35,"context_line":"                    \"volumes if volume support is enabled\"),"},{"line_number":36,"context_line":"    cfg.BoolOpt(\u0027root_on_create\u0027, default\u003dFalse,"},{"line_number":37,"context_line":"                help\u003d\u0027Enable the automatic creation of the root user for the \u0027"},{"line_number":38,"context_line":"                \u0027service during instance-create. The generated password for \u0027"},{"line_number":39,"context_line":"                \u0027the root user is immediately returned in the response of \u0027"}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAWn%2F%2F2%2Bc%3D","line":36,"updated":"2014-04-08 22:35:45.000000000","message":"Is there a notion, among data stores of a set of configuration options that will exist for all data stores and some which are unique to a data store? \n\nIt looks like all have tcp_ports and udp_ports but only MySQL and Percona have \u0027root_on_create\u0027. Is this by design? Or is this out of the scope of the present change to rationalize this kind of thing?","commit_id":"c0ed9fec784819e8f12a976223150a36badbdde0"}],"trove/guestagent/datastore/redis/options.py":[{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"b5e87705bd7ca21affa67cc75c86c60ffe81ffcf","unresolved":false,"context_lines":[{"line_number":1,"context_line":"from oslo.config import cfg"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# Redis"},{"line_number":4,"context_line":"redis_group \u003d cfg.OptGroup("}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAWH%2F9yOM%3D","line":1,"updated":"2014-04-02 06:35:57.000000000","message":"missing header","commit_id":"d944355e571a1f2b64c1ceb73488cc9bd926ee98"}]}
