)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},"change_message_id":"137cbd7fce1b20c3750ee2130264a08743e62736","unresolved":false,"context_lines":[{"line_number":14,"context_line":"- conditional logging via rendering config.template;"},{"line_number":15,"context_line":"- tests."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"Partionaly implements: blueprint dbinstance-log"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Change-Id: I0ad7def9ec041c4a83a89558b7b3db389e03623a"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":23,"id":"AAAAXH%2F%2Fb1U%3D","line":17,"updated":"2014-04-21 20:47:56.000000000","message":"partially?","commit_id":"617b9f5e4341597de7daed9ef449b50ec4e3a02f"}],"etc/trove/trove-taskmanager.conf.sample":[{"author":{"_account_id":7806,"name":"Sushil Kumar","email":"skm.net@gmail.com","username":"sushilkm"},"change_message_id":"e58fdf866d6b44e64f9d472e505e007b4a350234","unresolved":false,"context_lines":[{"line_number":92,"context_line":"template_path \u003d /etc/trove/templates/"},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"# \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d Configuration templates parameter section \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":95,"context_line":"allow_database_logging \u003d True"},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"# \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d notifer queue kombu connection options \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":98,"context_line":""}],"source_content_type":"application/octet-stream","patch_set":3,"id":"AAAAUH%2F%2F9%2BI%3D","line":95,"updated":"2014-01-06 03:53:23.000000000","message":"default should be false, because one has to sacrifice the performance for enabling the database logging.","commit_id":"3b863c5ae7a94550b32cd48a2237698c720ca9a3"},{"author":{"_account_id":739,"name":"Michael Basnight","email":"mbasnight@gmail.com","username":"hubcap"},"change_message_id":"e96df0e094a616b998a61b5777858f1789748c5a","unresolved":false,"context_lines":[{"line_number":92,"context_line":"template_path \u003d /etc/trove/templates/"},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"# \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d Configuration templates parameter section \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":95,"context_line":"allow_database_logging \u003d True"},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"# \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d notifer queue kombu connection options \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":98,"context_line":""}],"source_content_type":"application/octet-stream","patch_set":7,"id":"AAAAUH%2F%2BseE%3D","line":95,"updated":"2014-01-23 03:31:25.000000000","message":"I read the previous arguments. Default it to false. Its changing the behavior of the app and well, we dont want to spring that on users. I know you read the manual, but thats no substitute for real world scenarios with lots of data.","commit_id":"b7f88ff8ec414cf7be05035153f05d4edb3141ba"}],"trove/common/cfg.py":[{"author":{"_account_id":7806,"name":"Sushil Kumar","email":"skm.net@gmail.com","username":"sushilkm"},"change_message_id":"e58fdf866d6b44e64f9d472e505e007b4a350234","unresolved":false,"context_lines":[{"line_number":241,"context_line":"                default\u003d[\u0027atom\u0027, \u0027json\u0027, \u0027xml\u0027],"},{"line_number":242,"context_line":"                help\u003d\u0027Filetype endings not to be reattached to an id \u0027"},{"line_number":243,"context_line":"                     \u0027by the utils method correct_id_with_req.\u0027),"},{"line_number":244,"context_line":"    cfg.BoolOpt(\u0027allow_database_logging\u0027, default\u003dTrue,"},{"line_number":245,"context_line":"                help\u003d\u0027Allow logging inside trove instance\u0027),"},{"line_number":246,"context_line":"]"},{"line_number":247,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAUH%2F%2F9%2BQ%3D","line":244,"updated":"2014-01-06 03:53:23.000000000","message":"default should be false, because one has to sacrifice the performance for enabling the database logging.","commit_id":"3b863c5ae7a94550b32cd48a2237698c720ca9a3"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"f89a7337ca8000a78e7ae14b3a92af03e86ad20a","unresolved":false,"context_lines":[{"line_number":241,"context_line":"                default\u003d[\u0027atom\u0027, \u0027json\u0027, \u0027xml\u0027],"},{"line_number":242,"context_line":"                help\u003d\u0027Filetype endings not to be reattached to an id \u0027"},{"line_number":243,"context_line":"                     \u0027by the utils method correct_id_with_req.\u0027),"},{"line_number":244,"context_line":"    cfg.BoolOpt(\u0027allow_database_logging\u0027, default\u003dTrue,"},{"line_number":245,"context_line":"                help\u003d\u0027Allow logging inside trove instance\u0027),"},{"line_number":246,"context_line":"]"},{"line_number":247,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAUH%2F%2F9Zg%3D","line":244,"in_reply_to":"AAAAUH%2F%2F9%2BQ%3D","updated":"2014-01-06 07:39:04.000000000","message":"Only slow-querry log is a performance killer (read mysql docs about that), other types of logs doesn\u0027t affects performance.\nIn this key i disagree about defual:False.\nThey _only_ good way is to do not allow slow-querry log at all.","commit_id":"3b863c5ae7a94550b32cd48a2237698c720ca9a3"},{"author":{"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},"change_message_id":"137cbd7fce1b20c3750ee2130264a08743e62736","unresolved":false,"context_lines":[{"line_number":282,"context_line":"    cfg.IntOpt(\u0027usage_timeout\u0027, default\u003d400,"},{"line_number":283,"context_line":"               help\u003d\u0027Timeout to wait for a guest to become active.\u0027),"},{"line_number":284,"context_line":"    cfg.BoolOpt(\u0027allow_database_logging\u0027, default\u003dFalse,"},{"line_number":285,"context_line":"                help\u003d\u0027Allow logging inside mysql instance\u0027),"},{"line_number":286,"context_line":"]"},{"line_number":287,"context_line":""},{"line_number":288,"context_line":"# Percona"}],"source_content_type":"text/x-python","patch_set":23,"id":"AAAAXH%2F%2Fb00%3D","line":285,"updated":"2014-04-21 20:47:56.000000000","message":"Suggest you use the capitalization MySQL.","commit_id":"617b9f5e4341597de7daed9ef449b50ec4e3a02f"},{"author":{"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},"change_message_id":"137cbd7fce1b20c3750ee2130264a08743e62736","unresolved":false,"context_lines":[{"line_number":311,"context_line":"    cfg.IntOpt(\u0027usage_timeout\u0027, default\u003d450,"},{"line_number":312,"context_line":"               help\u003d\u0027Timeout to wait for a guest to become active.\u0027),"},{"line_number":313,"context_line":"    cfg.BoolOpt(\u0027allow_database_logging\u0027, default\u003dFalse,"},{"line_number":314,"context_line":"                help\u003d\u0027Allow logging inside cassandra instance\u0027),"},{"line_number":315,"context_line":"]"},{"line_number":316,"context_line":""},{"line_number":317,"context_line":"# Redis"}],"source_content_type":"text/x-python","patch_set":23,"id":"AAAAXH%2F%2Fb08%3D","line":314,"updated":"2014-04-21 20:47:56.000000000","message":"Not cassandra. Should be MySQL or Percona; preferably Percona.","commit_id":"617b9f5e4341597de7daed9ef449b50ec4e3a02f"},{"author":{"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},"change_message_id":"137cbd7fce1b20c3750ee2130264a08743e62736","unresolved":false,"context_lines":[{"line_number":335,"context_line":"    cfg.IntOpt(\u0027usage_timeout\u0027, default\u003d450,"},{"line_number":336,"context_line":"               help\u003d\u0027Timeout to wait for a guest to become active.\u0027),"},{"line_number":337,"context_line":"    cfg.BoolOpt(\u0027allow_database_logging\u0027, default\u003dFalse,"},{"line_number":338,"context_line":"                help\u003d\u0027Allow logging inside redis instance\u0027),"},{"line_number":339,"context_line":"]"},{"line_number":340,"context_line":""},{"line_number":341,"context_line":"# Cassandra"}],"source_content_type":"text/x-python","patch_set":23,"id":"AAAAXH%2F%2Fb0Y%3D","line":338,"updated":"2014-04-21 20:47:56.000000000","message":"Suggest you call it Redis (capitalization).","commit_id":"617b9f5e4341597de7daed9ef449b50ec4e3a02f"},{"author":{"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},"change_message_id":"137cbd7fce1b20c3750ee2130264a08743e62736","unresolved":false,"context_lines":[{"line_number":359,"context_line":"    cfg.IntOpt(\u0027usage_timeout\u0027, default\u003d600,"},{"line_number":360,"context_line":"               help\u003d\u0027Timeout to wait for a guest to become active.\u0027),"},{"line_number":361,"context_line":"    cfg.BoolOpt(\u0027allow_database_logging\u0027, default\u003dFalse,"},{"line_number":362,"context_line":"                help\u003d\u0027Allow logging inside cassandra instance\u0027),"},{"line_number":363,"context_line":"]"},{"line_number":364,"context_line":""},{"line_number":365,"context_line":"#Couchbase"}],"source_content_type":"text/x-python","patch_set":23,"id":"AAAAXH%2F%2Fbzs%3D","line":362,"updated":"2014-04-21 20:47:56.000000000","message":"Cassandra? (capitalization)","commit_id":"617b9f5e4341597de7daed9ef449b50ec4e3a02f"},{"author":{"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},"change_message_id":"137cbd7fce1b20c3750ee2130264a08743e62736","unresolved":false,"context_lines":[{"line_number":385,"context_line":"    cfg.IntOpt(\u0027usage_timeout\u0027, default\u003d450,"},{"line_number":386,"context_line":"               help\u003d\u0027Timeout to wait for a guest to become active.\u0027),"},{"line_number":387,"context_line":"    cfg.BoolOpt(\u0027allow_database_logging\u0027, default\u003dFalse,"},{"line_number":388,"context_line":"                help\u003d\u0027Allow logging inside cassandra instance\u0027),"},{"line_number":389,"context_line":"]"},{"line_number":390,"context_line":""},{"line_number":391,"context_line":"# MongoDB"}],"source_content_type":"text/x-python","patch_set":23,"id":"AAAAXH%2F%2Fb0A%3D","line":388,"updated":"2014-04-21 20:47:56.000000000","message":"Couchbase, maybe?","commit_id":"617b9f5e4341597de7daed9ef449b50ec4e3a02f"},{"author":{"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},"change_message_id":"137cbd7fce1b20c3750ee2130264a08743e62736","unresolved":false,"context_lines":[{"line_number":409,"context_line":"    cfg.IntOpt(\u0027usage_timeout\u0027, default\u003d450,"},{"line_number":410,"context_line":"               help\u003d\u0027Timeout to wait for a guest to become active.\u0027),"},{"line_number":411,"context_line":"    cfg.BoolOpt(\u0027allow_database_logging\u0027, default\u003dFalse,"},{"line_number":412,"context_line":"                help\u003d\u0027Allow logging inside cassandra instance\u0027),"},{"line_number":413,"context_line":"]"},{"line_number":414,"context_line":""},{"line_number":415,"context_line":"CONF \u003d cfg.CONF"}],"source_content_type":"text/x-python","patch_set":23,"id":"AAAAXH%2F%2Fbzo%3D","line":412,"updated":"2014-04-21 20:47:56.000000000","message":"MongoDB?","commit_id":"617b9f5e4341597de7daed9ef449b50ec4e3a02f"},{"author":{"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},"change_message_id":"ac28d6f20860dfa3f4ce5bb385fc17ff13664a35","unresolved":false,"context_lines":[{"line_number":312,"context_line":"    cfg.IntOpt(\u0027usage_timeout\u0027, default\u003d450,"},{"line_number":313,"context_line":"               help\u003d\u0027Timeout to wait for a guest to become active.\u0027),"},{"line_number":314,"context_line":"    cfg.BoolOpt(\u0027allow_database_logging\u0027, default\u003dFalse,"},{"line_number":315,"context_line":"                help\u003d\u0027Allow logging inside Percona instance\u0027),"},{"line_number":316,"context_line":"]"},{"line_number":317,"context_line":""},{"line_number":318,"context_line":"# Redis"}],"source_content_type":"text/x-python","patch_set":24,"id":"AAAAXH%2F%2FRFY%3D","line":315,"updated":"2014-04-22 21:50:15.000000000","message":"why is this not a common option?","commit_id":"44e98c8cf97a4666c06e2927132d1a5fab770a4c"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"a8b82d330d458bba8e1ff663757a513dbcedf0a2","unresolved":false,"context_lines":[{"line_number":312,"context_line":"    cfg.IntOpt(\u0027usage_timeout\u0027, default\u003d450,"},{"line_number":313,"context_line":"               help\u003d\u0027Timeout to wait for a guest to become active.\u0027),"},{"line_number":314,"context_line":"    cfg.BoolOpt(\u0027allow_database_logging\u0027, default\u003dFalse,"},{"line_number":315,"context_line":"                help\u003d\u0027Allow logging inside Percona instance\u0027),"},{"line_number":316,"context_line":"]"},{"line_number":317,"context_line":""},{"line_number":318,"context_line":"# Redis"}],"source_content_type":"text/x-python","patch_set":24,"id":"AAAAXH%2F%2FMfI%3D","line":315,"in_reply_to":"AAAAXH%2F%2FMrE%3D","updated":"2014-04-23 12:27:24.000000000","message":"We decided to make it per datastore to give to the deployers an ability to decide which datastore can do that, and which can\u0027t.\n\nDefault is false - because in some cases( if deployers doesn\u0027t write explicilty in conf file) logging causes perfomance issues.\n\nThat is why it was made specific datastore. Same thing with root_on_create.","commit_id":"44e98c8cf97a4666c06e2927132d1a5fab770a4c"},{"author":{"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},"change_message_id":"246b85352e26f9dd182c7ff9cf839b51923104a2","unresolved":false,"context_lines":[{"line_number":312,"context_line":"    cfg.IntOpt(\u0027usage_timeout\u0027, default\u003d450,"},{"line_number":313,"context_line":"               help\u003d\u0027Timeout to wait for a guest to become active.\u0027),"},{"line_number":314,"context_line":"    cfg.BoolOpt(\u0027allow_database_logging\u0027, default\u003dFalse,"},{"line_number":315,"context_line":"                help\u003d\u0027Allow logging inside Percona instance\u0027),"},{"line_number":316,"context_line":"]"},{"line_number":317,"context_line":""},{"line_number":318,"context_line":"# Redis"}],"source_content_type":"text/x-python","patch_set":24,"id":"AAAAXH%2F%2FMrE%3D","line":315,"in_reply_to":"AAAAXH%2F%2FO7Y%3D","updated":"2014-04-23 12:03:05.000000000","message":"I don\u0027t get it ...\n\n(a) in what context did community say this should be per-datastore?\n(b) the value is FALSE for all data stores, why can\u0027t it be a common?","commit_id":"44e98c8cf97a4666c06e2927132d1a5fab770a4c"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"454260ba12ffbfafe7e3302b94956014ebfc9476","unresolved":false,"context_lines":[{"line_number":312,"context_line":"    cfg.IntOpt(\u0027usage_timeout\u0027, default\u003d450,"},{"line_number":313,"context_line":"               help\u003d\u0027Timeout to wait for a guest to become active.\u0027),"},{"line_number":314,"context_line":"    cfg.BoolOpt(\u0027allow_database_logging\u0027, default\u003dFalse,"},{"line_number":315,"context_line":"                help\u003d\u0027Allow logging inside Percona instance\u0027),"},{"line_number":316,"context_line":"]"},{"line_number":317,"context_line":""},{"line_number":318,"context_line":"# Redis"}],"source_content_type":"text/x-python","patch_set":24,"id":"AAAAXH%2F%2FO7Y%3D","line":315,"in_reply_to":"AAAAXH%2F%2FRFY%3D","updated":"2014-04-23 06:25:48.000000000","message":"Because community decided to have this attribute specific for datastore, because couchbade by the default has no logging at all, so, by setting common attribute we would be possibly block this feature for other datastores.","commit_id":"44e98c8cf97a4666c06e2927132d1a5fab770a4c"}],"trove/common/template.py":[{"author":{"_account_id":739,"name":"Michael Basnight","email":"mbasnight@gmail.com","username":"hubcap"},"change_message_id":"0def7a5cbd18f80a77effec73a7992adbb5610be","unresolved":false,"context_lines":[{"line_number":32,"context_line":"    \"\"\""},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"    def __init__(self, datastore_manager, flavor_dict,"},{"line_number":35,"context_line":"                 instance_id, allow_database_logging):"},{"line_number":36,"context_line":"        \"\"\"Constructor"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"        :param datastore_manager: The datastore manager."}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAATn%2F8pss%3D","line":35,"updated":"2013-12-23 17:26:11.000000000","message":"If this is a cfg value, why do we even pass it in here, and instead not just look it up here?","commit_id":"75d5362f97e01138c08277b1bc6c27da4cbc940e"},{"author":{"_account_id":6268,"name":"Robert Myers","email":"myer0052@gmail.com","username":"rmyers"},"change_message_id":"799ee0a06c24a4baa669f05d122149e95339175d","unresolved":false,"context_lines":[{"line_number":31,"context_line":"        rendering on the guest"},{"line_number":32,"context_line":"    \"\"\""},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"    def __init__(self, datastore_manager, flavor_dict,"},{"line_number":35,"context_line":"                 instance_id):"},{"line_number":36,"context_line":"        \"\"\"Constructor"},{"line_number":37,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAT3%2F%2F0PI%3D","line":34,"updated":"2013-12-30 22:12:36.000000000","message":"I see no reason to change this line.","commit_id":"3b863c5ae7a94550b32cd48a2237698c720ca9a3"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"177cbc2f661498e79f056d09a6d2adab49dac060","unresolved":false,"context_lines":[{"line_number":31,"context_line":"        rendering on the guest"},{"line_number":32,"context_line":"    \"\"\""},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"    def __init__(self, datastore_manager, flavor_dict,"},{"line_number":35,"context_line":"                 instance_id):"},{"line_number":36,"context_line":"        \"\"\"Constructor"},{"line_number":37,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAT3%2F%2F0MA%3D","line":34,"in_reply_to":"AAAAT3%2F%2F0PI%3D","updated":"2013-12-30 22:34:46.000000000","message":"agreed","commit_id":"3b863c5ae7a94550b32cd48a2237698c720ca9a3"},{"author":{"_account_id":7806,"name":"Sushil Kumar","email":"skm.net@gmail.com","username":"sushilkm"},"change_message_id":"e58fdf866d6b44e64f9d472e505e007b4a350234","unresolved":false,"context_lines":[{"line_number":32,"context_line":"    \"\"\""},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"    def __init__(self, datastore_manager, flavor_dict,"},{"line_number":35,"context_line":"                 instance_id):"},{"line_number":36,"context_line":"        \"\"\"Constructor"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"        :param datastore_manager: The datastore manager."}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAUH%2F%2F%2BAU%3D","line":35,"updated":"2014-01-06 03:53:23.000000000","message":"no need to change this, this should pass the tests as it is.","commit_id":"3b863c5ae7a94550b32cd48a2237698c720ca9a3"},{"author":{"_account_id":7806,"name":"Sushil Kumar","email":"skm.net@gmail.com","username":"sushilkm"},"change_message_id":"e58fdf866d6b44e64f9d472e505e007b4a350234","unresolved":false,"context_lines":[{"line_number":47,"context_line":"        template_filename \u003d \"%s/config.template\" % datastore_manager"},{"line_number":48,"context_line":"        self.template \u003d ENV.get_template(template_filename)"},{"line_number":49,"context_line":"        self.instance_id \u003d instance_id"},{"line_number":50,"context_line":"        self.allow_database_logging \u003d CONF.allow_database_logging"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"    def render(self):"},{"line_number":53,"context_line":"        \"\"\"Renders the jinja template"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAUH%2F%2F%2BAE%3D","line":50,"updated":"2014-01-06 03:53:23.000000000","message":"No need for initialization to be used for using config values, could be directly used in the render call.","commit_id":"3b863c5ae7a94550b32cd48a2237698c720ca9a3"},{"author":{"_account_id":7806,"name":"Sushil Kumar","email":"skm.net@gmail.com","username":"sushilkm"},"change_message_id":"e58fdf866d6b44e64f9d472e505e007b4a350234","unresolved":false,"context_lines":[{"line_number":58,"context_line":"        server_id \u003d self._calculate_unique_id()"},{"line_number":59,"context_line":"        self.config_contents \u003d self.template.render("},{"line_number":60,"context_line":"            flavor\u003dself.flavor_dict, server_id\u003dserver_id,"},{"line_number":61,"context_line":"            allow_database_logging\u003dself.allow_database_logging)"},{"line_number":62,"context_line":"        return self.config_contents"},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"    def _calculate_unique_id(self):"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAUH%2F%2F9%2F8%3D","line":61,"updated":"2014-01-06 03:53:23.000000000","message":"it could be simply CONF.allow_database_logging instead of first initialization to self.allow_database_logging, saving extra initialization.","commit_id":"3b863c5ae7a94550b32cd48a2237698c720ca9a3"},{"author":{"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},"change_message_id":"137cbd7fce1b20c3750ee2130264a08743e62736","unresolved":false,"context_lines":[{"line_number":71,"context_line":"            else self.datastore_manager).allow_database_logging"},{"line_number":72,"context_line":"        self.config_contents \u003d template.render("},{"line_number":73,"context_line":"            flavor\u003dself.flavor_dict, server_id\u003dserver_id,"},{"line_number":74,"context_line":"            allow_database_logging\u003dyes_or_not,"},{"line_number":75,"context_line":"            **kwargs)"},{"line_number":76,"context_line":"        return self.config_contents"},{"line_number":77,"context_line":""}],"source_content_type":"text/x-python","patch_set":23,"id":"AAAAXH%2F%2FbzM%3D","line":74,"updated":"2014-04-21 20:47:56.000000000","message":"seems like this can be logically simplified as allow_database_logging\u003dConf.get(\u0027mysql\u0027 if not ...).allow_database_logging)\n\nwithout the use of the \u0027yes_or_not\u0027","commit_id":"617b9f5e4341597de7daed9ef449b50ec4e3a02f"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"a0bd67ef697712b403b560196f5a9150dc1bfad7","unresolved":false,"context_lines":[{"line_number":71,"context_line":"            else self.datastore_manager).allow_database_logging"},{"line_number":72,"context_line":"        self.config_contents \u003d template.render("},{"line_number":73,"context_line":"            flavor\u003dself.flavor_dict, server_id\u003dserver_id,"},{"line_number":74,"context_line":"            allow_database_logging\u003dyes_or_not,"},{"line_number":75,"context_line":"            **kwargs)"},{"line_number":76,"context_line":"        return self.config_contents"},{"line_number":77,"context_line":""}],"source_content_type":"text/x-python","patch_set":23,"id":"AAAAXH%2F%2FbnU%3D","line":74,"in_reply_to":"AAAAXH%2F%2FbzM%3D","updated":"2014-04-21 20:56:30.000000000","message":"i prefer to leave at as it is","commit_id":"617b9f5e4341597de7daed9ef449b50ec4e3a02f"},{"author":{"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},"change_message_id":"7146b413eb10addf9ac213909bf038c42f5fb11d","unresolved":false,"context_lines":[{"line_number":66,"context_line":"        template \u003d ENV.get_template(self.template_name %"},{"line_number":67,"context_line":"                                    self.datastore_manager)"},{"line_number":68,"context_line":"        server_id \u003d self._calculate_unique_id()"},{"line_number":69,"context_line":"        yes_or_not \u003d CONF.get("},{"line_number":70,"context_line":"            \u0027mysql\u0027 if not self.datastore_manager"},{"line_number":71,"context_line":"            else self.datastore_manager).allow_database_logging"},{"line_number":72,"context_line":"        self.config_contents \u003d template.render("}],"source_content_type":"text/x-python","patch_set":24,"id":"AAAAXH%2F%2FWAw%3D","line":69,"updated":"2014-04-22 12:13:36.000000000","message":"if you insist on having a variable here, at least call it something more descriptive than yes_or_not. Like maybe calling it allow_database_logging would make it intuitive?","commit_id":"44e98c8cf97a4666c06e2927132d1a5fab770a4c"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"454260ba12ffbfafe7e3302b94956014ebfc9476","unresolved":false,"context_lines":[{"line_number":66,"context_line":"        template \u003d ENV.get_template(self.template_name %"},{"line_number":67,"context_line":"                                    self.datastore_manager)"},{"line_number":68,"context_line":"        server_id \u003d self._calculate_unique_id()"},{"line_number":69,"context_line":"        yes_or_not \u003d CONF.get("},{"line_number":70,"context_line":"            \u0027mysql\u0027 if not self.datastore_manager"},{"line_number":71,"context_line":"            else self.datastore_manager).allow_database_logging"},{"line_number":72,"context_line":"        self.config_contents \u003d template.render("}],"source_content_type":"text/x-python","patch_set":24,"id":"AAAAXH%2F%2FO6A%3D","line":69,"in_reply_to":"AAAAXH%2F%2FWAw%3D","updated":"2014-04-23 06:25:48.000000000","message":"As for me it\u0027s more than intuitive, some who will read the code will understand what\u0027s going on since render call explicitly shows that:\n\nallow_database_logging\u003dyes_or_not","commit_id":"44e98c8cf97a4666c06e2927132d1a5fab770a4c"}],"trove/templates/mysql/config.template":[{"author":{"_account_id":1925,"name":"Vipul Sabhaya","email":"vipuls@gmail.com","username":"vipuls"},"change_message_id":"aac124592d614a1f45f6839abe73df3afabb24b7","unresolved":false,"context_lines":[{"line_number":49,"context_line":"log_slow_queries \u003d /var/log/mysql/mysql-slow.log"},{"line_number":50,"context_line":"long_query_time \u003d 2"},{"line_number":51,"context_line":"log-queries-not-using-indexes"},{"line_number":52,"context_line":"log-bin \u003d /var/log/mysql/mysql-bin.log"},{"line_number":53,"context_line":"read_only \u003d 1"},{"line_number":54,"context_line":"binlog-format \u003d STATEMENT"},{"line_number":55,"context_line":"log-error \u003d /var/log/mysql/mysql-error.log"}],"source_content_type":"application/octet-stream","patch_set":4,"id":"AAAAUH%2F%2FvJ4%3D","line":52,"updated":"2014-01-09 01:43:52.000000000","message":"The bin log shouldn\u0027t really be something that is considered \u0027logging\u0027 -- since it\u0027s not a log that you\u0027d use to diagnose issues with.  I\u0027d argue that that needs to be left out of this setting.","commit_id":"57eb1d69e994dbdefdff05fc87df58f911439bf0"},{"author":{"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},"change_message_id":"137cbd7fce1b20c3750ee2130264a08743e62736","unresolved":false,"context_lines":[{"line_number":51,"context_line":"log_slow_queries \u003d /var/log/mysql/mysql-slow.log"},{"line_number":52,"context_line":"long_query_time \u003d 2"},{"line_number":53,"context_line":"log-queries-not-using-indexes"},{"line_number":54,"context_line":"log-error \u003d /var/log/mysql/mysql-error.log"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"{% endif %}"},{"line_number":57,"context_line":""}],"source_content_type":"application/octet-stream","patch_set":23,"id":"AAAAXH%2F%2FbvM%3D","line":54,"updated":"2014-04-21 20:47:56.000000000","message":"the variable is called log_error NOT log-error. The default is to call the file \u0027error.log\u0027.\n\nThis (below) from my.cnf on a stock install of MySQL on Ubuntu.\n\n#\n# * Logging and Replication\n#\n# Both location gets rotated by the cronjob.\n# Be aware that this log type is a performance killer.\n# As of 5.1 you can enable the log at runtime!\n#general_log_file        \u003d /var/log/mysql/mysql.log\n#general_log             \u003d 1\n#\n# Error log - should be very few entries.\n#\nlog_error \u003d /var/log/mysql/error.log\n#\n# Here you can see queries with especially long duration\n#log_slow_queries       \u003d /var/log/mysql/mysql-slow.log\n#long_query_time \u003d 2\n#log-queries-not-using-indexes","commit_id":"617b9f5e4341597de7daed9ef449b50ec4e3a02f"}],"trove/templates/percona/config.template":[{"author":{"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},"change_message_id":"137cbd7fce1b20c3750ee2130264a08743e62736","unresolved":false,"context_lines":[{"line_number":52,"context_line":"long_query_time \u003d 2"},{"line_number":53,"context_line":"log-queries-not-using-indexes"},{"line_number":54,"context_line":"log-error \u003d /var/log/mysql/mysql-error.log"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"{% endif %}"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":"[mysqldump]"}],"source_content_type":"application/octet-stream","patch_set":23,"id":"AAAAXH%2F%2FbuI%3D","line":55,"updated":"2014-04-21 20:47:56.000000000","message":"Same comments as for mysql file.\n\nthe variable is log_error not log-error. default name is error.log.\n\n#\n# * Logging and Replication\n#\n# Both location gets rotated by the cronjob.\n# Be aware that this log type is a performance killer.\n# As of 5.1 you can enable the log at runtime!\n#general_log_file        \u003d /var/log/mysql/mysql.log\n#general_log             \u003d 1\n#\n# Error log - should be very few entries.\n#\nlog_error \u003d /var/log/mysql/error.log\n#\n# Here you can see queries with especially long duration\n#log_slow_queries       \u003d /var/log/mysql/mysql-slow.log\n#long_query_time \u003d 2\n#log-queries-not-using-indexes","commit_id":"617b9f5e4341597de7daed9ef449b50ec4e3a02f"}],"trove/templates/redis/config.template":[{"author":{"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},"change_message_id":"137cbd7fce1b20c3750ee2130264a08743e62736","unresolved":false,"context_lines":[{"line_number":40,"context_line":"client-output-buffer-limit slave 256mb 64mb 60"},{"line_number":41,"context_line":"client-output-buffer-limit pubsub 32mb 8mb 60"},{"line_number":42,"context_line":"{% if allow_database_logging %}"},{"line_number":43,"context_line":"logfile /var/log/redis/server.log"},{"line_number":44,"context_line":"{% endif %}"}],"source_content_type":"application/octet-stream","patch_set":23,"id":"AAAAXH%2F%2FbtU%3D","line":43,"updated":"2014-04-21 20:47:56.000000000","message":"documentation suggest naming the file /var/log/redis/redis_\u003cport\u003e.log\n\nhttp://redis.io/topics/quickstart","commit_id":"617b9f5e4341597de7daed9ef449b50ec4e3a02f"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"a0bd67ef697712b403b560196f5a9150dc1bfad7","unresolved":false,"context_lines":[{"line_number":40,"context_line":"client-output-buffer-limit slave 256mb 64mb 60"},{"line_number":41,"context_line":"client-output-buffer-limit pubsub 32mb 8mb 60"},{"line_number":42,"context_line":"{% if allow_database_logging %}"},{"line_number":43,"context_line":"logfile /var/log/redis/server.log"},{"line_number":44,"context_line":"{% endif %}"}],"source_content_type":"application/octet-stream","patch_set":23,"id":"AAAAXH%2F%2Fbmc%3D","line":43,"in_reply_to":"AAAAXH%2F%2FbtU%3D","updated":"2014-04-21 20:56:30.000000000","message":"it doesn\u0027t affects the actual functionality, and it\u0027s rea;;y doesn\u0027t matter how to name the file.","commit_id":"617b9f5e4341597de7daed9ef449b50ec4e3a02f"}],"trove/tests/config.py":[{"author":{"_account_id":7806,"name":"Sushil Kumar","email":"skm.net@gmail.com","username":"sushilkm"},"change_message_id":"e58fdf866d6b44e64f9d472e505e007b4a350234","unresolved":false,"context_lines":[{"line_number":85,"context_line":"            \"trove_max_volumes_per_user\": 100,"},{"line_number":86,"context_line":"            \"usage_endpoint\": USAGE_ENDPOINT,"},{"line_number":87,"context_line":"            \"root_on_create\": False,"},{"line_number":88,"context_line":"            \"allow_database_logging\": True"},{"line_number":89,"context_line":"        }"},{"line_number":90,"context_line":"        self._frozen_values \u003d FrozenDict(self._values)"},{"line_number":91,"context_line":"        self._users \u003d None"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAUH%2F%2F9%2FQ%3D","line":88,"updated":"2014-01-06 03:53:23.000000000","message":"Do we really need a new entry here, or we can do with mocking the conf values while testing the method.\n\nNot a -1 but just suggesting different path, you may implement as per your choice.","commit_id":"3b863c5ae7a94550b32cd48a2237698c720ca9a3"}],"trove/tests/unittests/common/test_template.py":[{"author":{"_account_id":1925,"name":"Vipul Sabhaya","email":"vipuls@gmail.com","username":"vipuls"},"change_message_id":"1878ee9519d8b1fb3e8cdbacbb516b84bfc06f8d","unresolved":false,"context_lines":[{"line_number":72,"context_line":"        self.assertIn(\u0027general_log_file\u0027, rendered_true)"},{"line_number":73,"context_line":"        self.assertIn(\u0027log_slow_queries\u0027, rendered_true)"},{"line_number":74,"context_line":"        self.assertIn(\u0027log-bin\u0027, rendered_true)"},{"line_number":75,"context_line":"        self.assertIn(\u0027log-error\u0027, rendered_true)"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"class HeatTemplateLoadTest(testtools.TestCase):"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAT3%2F%2FqMI%3D","line":75,"updated":"2014-01-03 23:30:01.000000000","message":"How about a test for the case where logging is disabled.","commit_id":"3b863c5ae7a94550b32cd48a2237698c720ca9a3"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"c78d29ffee251f7f31021bff23fe344d735d2110","unresolved":false,"context_lines":[{"line_number":72,"context_line":"        self.assertIn(\u0027general_log_file\u0027, rendered_true)"},{"line_number":73,"context_line":"        self.assertIn(\u0027log_slow_queries\u0027, rendered_true)"},{"line_number":74,"context_line":"        self.assertIn(\u0027log-bin\u0027, rendered_true)"},{"line_number":75,"context_line":"        self.assertIn(\u0027log-error\u0027, rendered_true)"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"class HeatTemplateLoadTest(testtools.TestCase):"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAUH%2F%2F%2Fwo%3D","line":75,"in_reply_to":"AAAAT3%2F%2FqMI%3D","updated":"2014-01-04 09:10:19.000000000","message":"Ok","commit_id":"3b863c5ae7a94550b32cd48a2237698c720ca9a3"},{"author":{"_account_id":7806,"name":"Sushil Kumar","email":"skm.net@gmail.com","username":"sushilkm"},"change_message_id":"e58fdf866d6b44e64f9d472e505e007b4a350234","unresolved":false,"context_lines":[{"line_number":72,"context_line":"        self.assertIn(\u0027general_log_file\u0027, rendered_true)"},{"line_number":73,"context_line":"        self.assertIn(\u0027log_slow_queries\u0027, rendered_true)"},{"line_number":74,"context_line":"        self.assertIn(\u0027log-bin\u0027, rendered_true)"},{"line_number":75,"context_line":"        self.assertIn(\u0027log-error\u0027, rendered_true)"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"class HeatTemplateLoadTest(testtools.TestCase):"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAUH%2F%2F9%2F0%3D","line":75,"in_reply_to":"AAAAT3%2F%2FqMI%3D","updated":"2014-01-06 03:53:23.000000000","message":"Yeah, its worthy to have both the tests since, we are writing the new tests.","commit_id":"3b863c5ae7a94550b32cd48a2237698c720ca9a3"},{"author":{"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},"change_message_id":"137cbd7fce1b20c3750ee2130264a08743e62736","unresolved":false,"context_lines":[{"line_number":1,"context_line":"#   Copyright 2013 OpenStack Foundation"},{"line_number":2,"context_line":"#   Copyright 2013 Rackspace Hosting"},{"line_number":3,"context_line":"#   Copyright 2013 Hewlett-Packard Development Company, L.P."},{"line_number":4,"context_line":"#   Copyright 2014 Mirantis Inc."},{"line_number":5,"context_line":"#   All Rights Reserved."},{"line_number":6,"context_line":"#"},{"line_number":7,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-python","patch_set":23,"id":"AAAAXH%2F%2Fbsc%3D","line":4,"updated":"2014-04-21 20:47:56.000000000","message":"in another review you\u0027d responded that the headers are not to be changed. How come we\u0027re seeing a change here?","commit_id":"617b9f5e4341597de7daed9ef449b50ec4e3a02f"},{"author":{"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},"change_message_id":"137cbd7fce1b20c3750ee2130264a08743e62736","unresolved":false,"context_lines":[{"line_number":68,"context_line":"        self.validate_template(config.render(), \"query_cache_size\","},{"line_number":69,"context_line":"                               self.flavor_dict, self.server_id)"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"    def test_render_mysql_logging_success(self):"},{"line_number":72,"context_line":"        template.CONF.get(\u0027mysql\u0027).allow_database_logging \u003d True"},{"line_number":73,"context_line":"        config_true \u003d template.SingleInstanceConfigTemplate("},{"line_number":74,"context_line":"            \u0027mysql\u0027, self.flavor_dict, self.server_id)"}],"source_content_type":"text/x-python","patch_set":23,"id":"AAAAXH%2F%2Fbpk%3D","line":71,"updated":"2014-04-21 20:47:56.000000000","message":"clearly the testing is insufficient because a MySQL instance with this config file would not have actually logged any errors to the file. \n\nsuggest you add testing that launches a server and runs some queries and generates some errors.","commit_id":"617b9f5e4341597de7daed9ef449b50ec4e3a02f"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"a0bd67ef697712b403b560196f5a9150dc1bfad7","unresolved":false,"context_lines":[{"line_number":68,"context_line":"        self.validate_template(config.render(), \"query_cache_size\","},{"line_number":69,"context_line":"                               self.flavor_dict, self.server_id)"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"    def test_render_mysql_logging_success(self):"},{"line_number":72,"context_line":"        template.CONF.get(\u0027mysql\u0027).allow_database_logging \u003d True"},{"line_number":73,"context_line":"        config_true \u003d template.SingleInstanceConfigTemplate("},{"line_number":74,"context_line":"            \u0027mysql\u0027, self.flavor_dict, self.server_id)"}],"source_content_type":"text/x-python","patch_set":23,"id":"AAAAXH%2F%2Fbl0%3D","line":71,"in_reply_to":"AAAAXH%2F%2Fbpk%3D","updated":"2014-04-21 20:56:30.000000000","message":"this is a unit test, it\u0027s only tests how jinja renders the files, also we\u0027re not testing how does mysql logs the errors.","commit_id":"617b9f5e4341597de7daed9ef449b50ec4e3a02f"},{"author":{"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},"change_message_id":"137cbd7fce1b20c3750ee2130264a08743e62736","unresolved":false,"context_lines":[{"line_number":75,"context_line":"        rendered_true \u003d config_true.render()"},{"line_number":76,"context_line":"        self.assertIn(\u0027general_log_file\u0027, rendered_true)"},{"line_number":77,"context_line":"        self.assertIn(\u0027log_slow_queries\u0027, rendered_true)"},{"line_number":78,"context_line":"        self.assertIn(\u0027log-error\u0027, rendered_true)"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"    def test_render_redis_logging_success(self):"},{"line_number":81,"context_line":"        template.CONF.get(\u0027redis\u0027).allow_database_logging \u003d True"}],"source_content_type":"text/x-python","patch_set":23,"id":"AAAAXH%2F%2Fbss%3D","line":78,"updated":"2014-04-21 20:47:56.000000000","message":"incorrect name; log_error is the right name.","commit_id":"617b9f5e4341597de7daed9ef449b50ec4e3a02f"},{"author":{"_account_id":9664,"name":"amrith","email":"amrith.kumar@gmail.com","username":"amrith"},"change_message_id":"137cbd7fce1b20c3750ee2130264a08743e62736","unresolved":false,"context_lines":[{"line_number":93,"context_line":""},{"line_number":94,"context_line":"        self.assertNotIn(\u0027general_log_file\u0027, rendered_false)"},{"line_number":95,"context_line":"        self.assertNotIn(\u0027log_slow_queries\u0027, rendered_false)"},{"line_number":96,"context_line":"        self.assertNotIn(\u0027log-error\u0027, rendered_false)"},{"line_number":97,"context_line":""},{"line_number":98,"context_line":"    def test_render_redis_logging_success_no_logs(self):"},{"line_number":99,"context_line":"        template.CONF.get(\u0027redis\u0027).allow_database_logging \u003d False"}],"source_content_type":"text/x-python","patch_set":23,"id":"AAAAXH%2F%2Fbsg%3D","line":96,"updated":"2014-04-21 20:47:56.000000000","message":"wrong name, log_error is the right name.","commit_id":"617b9f5e4341597de7daed9ef449b50ec4e3a02f"}]}
