)]}'
{"alarm.sql":[{"author":{"_account_id":2419,"name":"Roland Hochmuth","email":"roland.hochmuth@hpe.com","username":"roland-hochmuth-s"},"change_message_id":"250b7b3cb0589307ab243fa3a2e35cd0e8d6b988","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":16,"id":"3a57f1b5_b9e4790d","updated":"2016-02-10 00:11:41.000000000","message":"So this SQL file is a new file which is essentially a copy of:\n\nhttps://github.com/hpcloud-mon/ansible-monasca-schema/blob/master/templates/mon_mysql.sql.j2\n\nwithout the MySQL specific terms, which makes sense because you are adding support for databases that aren\u0027t MySQL, such as PostgreSQL.\n\nI think it would be better to place this file in the same root directory as the rest of the sql code, such as\n\nmonasca_api/common/repositories/sql, rather than the root directory.\n\nAlso, as this schema applies to alarms and notification methods and potentially other areas it might be better to call it monasca.sql.\n\nWere there any other changes to the schema? I\u0027m just wondering how well this would run with MySQL?\n\nAlso, since you have a models.py file, where the schema is specified is sqlalchemy, is this file still necessary or should it be removed?","commit_id":"0ee6ecf24d29e4a5ed24ed27eca5ac0109718815"},{"author":{"_account_id":16170,"name":"Michal Zielonka","email":"michal.zielonka@ts.fujitsu.com","username":"michal.zielonka"},"change_message_id":"6cd578b7b2d4f2d50f9e066b0169a24c64ca617c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":16,"id":"dae33548_c03cfc31","in_reply_to":"3a57f1b5_b9e4790d","updated":"2016-02-15 12:10:18.000000000","message":"Done","commit_id":"0ee6ecf24d29e4a5ed24ed27eca5ac0109718815"},{"author":{"_account_id":2419,"name":"Roland Hochmuth","email":"roland.hochmuth@hpe.com","username":"roland-hochmuth-s"},"change_message_id":"250b7b3cb0589307ab243fa3a2e35cd0e8d6b988","unresolved":false,"context_lines":[{"line_number":111,"context_line":"CREATE TABLE `schema_migrations` ("},{"line_number":112,"context_line":"  `version` varchar(255) NOT NULL"},{"line_number":113,"context_line":");"},{"line_number":114,"context_line":"CREATE TABLE `stream_definition` ("},{"line_number":115,"context_line":"  `id` varchar(36) NOT NULL,"},{"line_number":116,"context_line":"  `tenant_id` varchar(36) NOT NULL,"},{"line_number":117,"context_line":"  `name` varchar(190) NOT NULL DEFAULT \u0027\u0027,"}],"source_content_type":"text/x-sql","patch_set":16,"id":"3a57f1b5_59c8e574","line":114,"range":{"start_line":114,"start_character":0,"end_line":114,"end_character":6},"updated":"2016-02-10 00:11:41.000000000","message":"You can delete everything from here to","commit_id":"0ee6ecf24d29e4a5ed24ed27eca5ac0109718815"},{"author":{"_account_id":2419,"name":"Roland Hochmuth","email":"roland.hochmuth@hpe.com","username":"roland-hochmuth-s"},"change_message_id":"250b7b3cb0589307ab243fa3a2e35cd0e8d6b988","unresolved":false,"context_lines":[{"line_number":143,"context_line":"  `updated_at` DATETIME NOT NULL,"},{"line_number":144,"context_line":"  `deleted_at` DATETIME DEFAULT NULL,"},{"line_number":145,"context_line":"  PRIMARY KEY (`id`)"},{"line_number":146,"context_line":");"},{"line_number":147,"context_line":""},{"line_number":148,"context_line":"insert into `alarm_state` values (\u0027UNDETERMINED\u0027);"},{"line_number":149,"context_line":"insert into `alarm_state` values (\u0027OK\u0027);"}],"source_content_type":"text/x-sql","patch_set":16,"id":"3a57f1b5_f9867112","line":146,"range":{"start_line":146,"start_character":0,"end_line":146,"end_character":2},"updated":"2016-02-10 00:11:41.000000000","message":"here.\n\nI think we got ahead of ourslves by adding the stream and events schemas to this schema.","commit_id":"0ee6ecf24d29e4a5ed24ed27eca5ac0109718815"},{"author":{"_account_id":2419,"name":"Roland Hochmuth","email":"roland.hochmuth@hpe.com","username":"roland-hochmuth-s"},"change_message_id":"250b7b3cb0589307ab243fa3a2e35cd0e8d6b988","unresolved":false,"context_lines":[{"line_number":159,"context_line":"insert into `notification_method_type` values (\u0027PAGERDUTY\u0027);"},{"line_number":160,"context_line":""},{"line_number":161,"context_line":"insert into `stream_actions_action_type` values (\u0027FIRE\u0027);"},{"line_number":162,"context_line":"insert into `stream_actions_action_type` values (\u0027EXPIRE\u0027);"},{"line_number":163,"context_line":""},{"line_number":164,"context_line":""},{"line_number":165,"context_line":"END TRANSACTION;"}],"source_content_type":"text/x-sql","patch_set":16,"id":"3a57f1b5_7973614e","line":162,"range":{"start_line":162,"start_character":0,"end_line":162,"end_character":6},"updated":"2016-02-10 00:11:41.000000000","message":"You can also remove the two lines above this one too.","commit_id":"0ee6ecf24d29e4a5ed24ed27eca5ac0109718815"}],"devstack/files/monasca-api/python/api-config.conf":[{"author":{"_account_id":2419,"name":"Roland Hochmuth","email":"roland.hochmuth@hpe.com","username":"roland-hochmuth-s"},"change_message_id":"250b7b3cb0589307ab243fa3a2e35cd0e8d6b988","unresolved":false,"context_lines":[{"line_number":48,"context_line":"alarms_driver \u003d monasca_api.common.repositories.sql.alarms_repository:AlarmsRepository"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"# The driver to use for the notifications repository"},{"line_number":51,"context_line":"notifications_driver \u003d monasca_api.common.repositories.sql.notifications_repository:NotificationsRepository"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"[dispatcher]"},{"line_number":54,"context_line":"driver \u003d v2_reference"}],"source_content_type":"text/plain","patch_set":16,"id":"3a57f1b5_79c1212e","line":51,"range":{"start_line":51,"start_character":0,"end_line":51,"end_character":20},"updated":"2016-02-10 00:11:41.000000000","message":"I would prefer not changing the defaults from mysql to sql if we are going to remove mysql implementation, which we should discuss.","commit_id":"0ee6ecf24d29e4a5ed24ed27eca5ac0109718815"},{"author":{"_account_id":16170,"name":"Michal Zielonka","email":"michal.zielonka@ts.fujitsu.com","username":"michal.zielonka"},"change_message_id":"6cd578b7b2d4f2d50f9e066b0169a24c64ca617c","unresolved":false,"context_lines":[{"line_number":48,"context_line":"alarms_driver \u003d monasca_api.common.repositories.sql.alarms_repository:AlarmsRepository"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"# The driver to use for the notifications repository"},{"line_number":51,"context_line":"notifications_driver \u003d monasca_api.common.repositories.sql.notifications_repository:NotificationsRepository"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"[dispatcher]"},{"line_number":54,"context_line":"driver \u003d v2_reference"}],"source_content_type":"text/plain","patch_set":16,"id":"3a57f1b5_8d019bb1","line":51,"range":{"start_line":51,"start_character":0,"end_line":51,"end_character":20},"in_reply_to":"3a57f1b5_79c1212e","updated":"2016-02-15 12:10:18.000000000","message":"I left this because I want to run this code with devstack job.","commit_id":"0ee6ecf24d29e4a5ed24ed27eca5ac0109718815"},{"author":{"_account_id":2419,"name":"Roland Hochmuth","email":"roland.hochmuth@hpe.com","username":"roland-hochmuth-s"},"change_message_id":"250b7b3cb0589307ab243fa3a2e35cd0e8d6b988","unresolved":false,"context_lines":[{"line_number":101,"context_line":"database_name \u003d mon"},{"line_number":102,"context_line":""},{"line_number":103,"context_line":"[database]"},{"line_number":104,"context_line":"url \u003d \"mysql://monapi:password@127.0.0.1/mon\""},{"line_number":105,"context_line":""},{"line_number":106,"context_line":"# [mysql]"},{"line_number":107,"context_line":"# database_name \u003d mon"}],"source_content_type":"text/plain","patch_set":16,"id":"3a57f1b5_b9f55984","line":104,"range":{"start_line":104,"start_character":6,"end_line":104,"end_character":7},"updated":"2016-02-10 00:11:41.000000000","message":"From a deployment perspective if a single url preferred over specifying each parameter separately.","commit_id":"0ee6ecf24d29e4a5ed24ed27eca5ac0109718815"},{"author":{"_account_id":16170,"name":"Michal Zielonka","email":"michal.zielonka@ts.fujitsu.com","username":"michal.zielonka"},"change_message_id":"6cd578b7b2d4f2d50f9e066b0169a24c64ca617c","unresolved":false,"context_lines":[{"line_number":101,"context_line":"database_name \u003d mon"},{"line_number":102,"context_line":""},{"line_number":103,"context_line":"[database]"},{"line_number":104,"context_line":"url \u003d \"mysql://monapi:password@127.0.0.1/mon\""},{"line_number":105,"context_line":""},{"line_number":106,"context_line":"# [mysql]"},{"line_number":107,"context_line":"# database_name \u003d mon"}],"source_content_type":"text/plain","patch_set":16,"id":"3a57f1b5_ed1fef05","line":104,"range":{"start_line":104,"start_character":6,"end_line":104,"end_character":7},"in_reply_to":"3a57f1b5_b9f55984","updated":"2016-02-15 12:10:18.000000000","message":"I added also option for giving this parameters separately.","commit_id":"0ee6ecf24d29e4a5ed24ed27eca5ac0109718815"},{"author":{"_account_id":11515,"name":"Syd Logan","email":"syd.logan@broadcom.com","username":"slogan621"},"change_message_id":"bb4559c5d426a504c418aa25b5f10112ad9a39ce","unresolved":false,"context_lines":[{"line_number":103,"context_line":"[database]"},{"line_number":104,"context_line":"url \u003d \"mysql+pymysql://monapi:password@127.0.0.1/mon\""},{"line_number":105,"context_line":""},{"line_number":106,"context_line":"# [mysql]"},{"line_number":107,"context_line":"# database_name \u003d mon"},{"line_number":108,"context_line":"# hostname \u003d 127.0.0.1"},{"line_number":109,"context_line":"# username \u003d monapi"}],"source_content_type":"text/plain","patch_set":26,"id":"bae84128_808fbd73","line":106,"updated":"2016-02-24 23:07:45.000000000","message":"Consider deleting these lines. You can get what they were using git if needed","commit_id":"abb59f00c10439d9f5c2ee0982f929de90329e2e"},{"author":{"_account_id":16222,"name":"witek","email":"witold.bedyk@suse.com","username":"witek"},"change_message_id":"49eac9ce22506e3b5217ed52421c71d4cb948522","unresolved":false,"context_lines":[{"line_number":103,"context_line":"[database]"},{"line_number":104,"context_line":"url \u003d \"mysql+pymysql://monapi:password@127.0.0.1/mon\""},{"line_number":105,"context_line":""},{"line_number":106,"context_line":"# [mysql]"},{"line_number":107,"context_line":"# database_name \u003d mon"},{"line_number":108,"context_line":"# hostname \u003d 127.0.0.1"},{"line_number":109,"context_line":"# username \u003d monapi"}],"source_content_type":"text/plain","patch_set":26,"id":"bae84128_5de561a6","line":106,"in_reply_to":"bae84128_808fbd73","updated":"2016-02-26 09:53:00.000000000","message":"I think we can remove them in near future.","commit_id":"abb59f00c10439d9f5c2ee0982f929de90329e2e"}],"devstack/plugin.sh":[{"author":{"_account_id":2419,"name":"Roland Hochmuth","email":"roland.hochmuth@hpe.com","username":"roland-hochmuth-s"},"change_message_id":"250b7b3cb0589307ab243fa3a2e35cd0e8d6b988","unresolved":false,"context_lines":[{"line_number":726,"context_line":"    PIP_VIRTUAL_ENV\u003d/opt/monasca-api"},{"line_number":727,"context_line":""},{"line_number":728,"context_line":"    pip_install gunicorn"},{"line_number":729,"context_line":"    pip_install MySQL-python"},{"line_number":730,"context_line":""},{"line_number":731,"context_line":"    (cd \"${MONASCA_BASE}\"/monasca-api ; sudo python setup.py sdist)"},{"line_number":732,"context_line":""}],"source_content_type":"text/x-sh","patch_set":16,"id":"3a57f1b5_d9593590","line":729,"range":{"start_line":729,"start_character":4,"end_line":729,"end_character":15},"updated":"2016-02-10 00:11:41.000000000","message":"I guess I\u0027m confused why you are adding a pip install of MySQL-python here.\n\n1. You did the conversion for MySQL to pymysql in a recent review which has merged.\n\n2. Even if you were to install MySQL-python, wouldn\u0027t it be done in requirements.txt?","commit_id":"0ee6ecf24d29e4a5ed24ed27eca5ac0109718815"},{"author":{"_account_id":16170,"name":"Michal Zielonka","email":"michal.zielonka@ts.fujitsu.com","username":"michal.zielonka"},"change_message_id":"6cd578b7b2d4f2d50f9e066b0169a24c64ca617c","unresolved":false,"context_lines":[{"line_number":726,"context_line":"    PIP_VIRTUAL_ENV\u003d/opt/monasca-api"},{"line_number":727,"context_line":""},{"line_number":728,"context_line":"    pip_install gunicorn"},{"line_number":729,"context_line":"    pip_install MySQL-python"},{"line_number":730,"context_line":""},{"line_number":731,"context_line":"    (cd \"${MONASCA_BASE}\"/monasca-api ; sudo python setup.py sdist)"},{"line_number":732,"context_line":""}],"source_content_type":"text/x-sh","patch_set":16,"id":"dae33548_805f9471","line":729,"range":{"start_line":729,"start_character":4,"end_line":729,"end_character":15},"in_reply_to":"3a57f1b5_d9593590","updated":"2016-02-15 12:10:18.000000000","message":"Done","commit_id":"0ee6ecf24d29e4a5ed24ed27eca5ac0109718815"}],"etc/api-config.conf":[{"author":{"_account_id":2419,"name":"Roland Hochmuth","email":"roland.hochmuth@hpe.com","username":"roland-hochmuth-s"},"change_message_id":"250b7b3cb0589307ab243fa3a2e35cd0e8d6b988","unresolved":false,"context_lines":[{"line_number":48,"context_line":"alarms_driver \u003d monasca_api.common.repositories.sql.alarms_repository:AlarmsRepository"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"# The driver to use for the notifications repository"},{"line_number":51,"context_line":"notifications_driver \u003d monasca_api.common.repositories.sql.notifications_repository:NotificationsRepository"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"[dispatcher]"},{"line_number":54,"context_line":"driver \u003d v2_reference"}],"source_content_type":"text/plain","patch_set":16,"id":"3a57f1b5_d9d055cc","line":51,"range":{"start_line":51,"start_character":0,"end_line":51,"end_character":20},"updated":"2016-02-10 00:11:41.000000000","message":"Was hoping to keep the default as mysql.","commit_id":"0ee6ecf24d29e4a5ed24ed27eca5ac0109718815"},{"author":{"_account_id":16170,"name":"Michal Zielonka","email":"michal.zielonka@ts.fujitsu.com","username":"michal.zielonka"},"change_message_id":"6cd578b7b2d4f2d50f9e066b0169a24c64ca617c","unresolved":false,"context_lines":[{"line_number":48,"context_line":"alarms_driver \u003d monasca_api.common.repositories.sql.alarms_repository:AlarmsRepository"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"# The driver to use for the notifications repository"},{"line_number":51,"context_line":"notifications_driver \u003d monasca_api.common.repositories.sql.notifications_repository:NotificationsRepository"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"[dispatcher]"},{"line_number":54,"context_line":"driver \u003d v2_reference"}],"source_content_type":"text/plain","patch_set":16,"id":"dae33548_c0ffdc32","line":51,"range":{"start_line":51,"start_character":0,"end_line":51,"end_character":20},"in_reply_to":"3a57f1b5_d9d055cc","updated":"2016-02-15 12:10:18.000000000","message":"Done","commit_id":"0ee6ecf24d29e4a5ed24ed27eca5ac0109718815"},{"author":{"_account_id":11515,"name":"Syd Logan","email":"syd.logan@broadcom.com","username":"slogan621"},"change_message_id":"bb4559c5d426a504c418aa25b5f10112ad9a39ce","unresolved":false,"context_lines":[{"line_number":120,"context_line":"password \u003d password"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"# [database]"},{"line_number":123,"context_line":"# url \u003d \"mysql+pymysql://monapi:password@127.0.0.1/mon\""},{"line_number":124,"context_line":"# host \u003d 127.0.0.1"},{"line_number":125,"context_line":"# username \u003d monapi"},{"line_number":126,"context_line":"# password \u003d password"}],"source_content_type":"text/plain","patch_set":26,"id":"bae84128_80c33d37","line":123,"updated":"2016-02-24 23:07:45.000000000","message":"why are these lines commented out? Will devstack or something else modify these lines and/or remove the comments?","commit_id":"abb59f00c10439d9f5c2ee0982f929de90329e2e"},{"author":{"_account_id":16222,"name":"witek","email":"witold.bedyk@suse.com","username":"witek"},"change_message_id":"49eac9ce22506e3b5217ed52421c71d4cb948522","unresolved":false,"context_lines":[{"line_number":120,"context_line":"password \u003d password"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"# [database]"},{"line_number":123,"context_line":"# url \u003d \"mysql+pymysql://monapi:password@127.0.0.1/mon\""},{"line_number":124,"context_line":"# host \u003d 127.0.0.1"},{"line_number":125,"context_line":"# username \u003d monapi"},{"line_number":126,"context_line":"# password \u003d password"}],"source_content_type":"text/plain","patch_set":26,"id":"bae84128_1d0c7941","line":123,"in_reply_to":"bae84128_80c33d37","updated":"2016-02-26 09:53:00.000000000","message":"Devstack plugin takes configuration from devstack/files/monasca-api/python/api-config.conf","commit_id":"abb59f00c10439d9f5c2ee0982f929de90329e2e"}],"monasca_api/common/repositories/mysql/alarms_repository.py":[{"author":{"_account_id":11515,"name":"Syd Logan","email":"syd.logan@broadcom.com","username":"slogan621"},"change_message_id":"bb4559c5d426a504c418aa25b5f10112ad9a39ce","unresolved":false,"context_lines":[{"line_number":15,"context_line":"from datetime import datetime"},{"line_number":16,"context_line":"from time import time"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"from oslo_log import log"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"from monasca_api.common.repositories import alarms_repository"},{"line_number":21,"context_line":"from monasca_api.common.repositories import exceptions"}],"source_content_type":"text/x-python","patch_set":26,"id":"bae84128_80485dcd","line":18,"updated":"2016-02-24 23:07:45.000000000","message":"Is this change necessary?","commit_id":"abb59f00c10439d9f5c2ee0982f929de90329e2e"},{"author":{"_account_id":16222,"name":"witek","email":"witold.bedyk@suse.com","username":"witek"},"change_message_id":"49eac9ce22506e3b5217ed52421c71d4cb948522","unresolved":false,"context_lines":[{"line_number":15,"context_line":"from datetime import datetime"},{"line_number":16,"context_line":"from time import time"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"from oslo_log import log"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"from monasca_api.common.repositories import alarms_repository"},{"line_number":21,"context_line":"from monasca_api.common.repositories import exceptions"}],"source_content_type":"text/x-python","patch_set":26,"id":"bae84128_0809d931","line":18,"in_reply_to":"bae84128_80485dcd","updated":"2016-02-26 09:53:00.000000000","message":"http://docs.openstack.org/developer/hacking/#import-order-template","commit_id":"abb59f00c10439d9f5c2ee0982f929de90329e2e"}],"monasca_api/common/repositories/notifications_repository.py":[{"author":{"_account_id":2419,"name":"Roland Hochmuth","email":"roland.hochmuth@hpe.com","username":"roland-hochmuth-s"},"change_message_id":"250b7b3cb0589307ab243fa3a2e35cd0e8d6b988","unresolved":false,"context_lines":[{"line_number":21,"context_line":"class NotificationsRepository(object):"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"    @abc.abstractmethod"},{"line_number":24,"context_line":"    def create_notification(self, tenant_id, name, notification_type,"},{"line_number":25,"context_line":"                            address):"},{"line_number":26,"context_line":"        return"},{"line_number":27,"context_line":""}],"source_content_type":"text/x-python","patch_set":16,"id":"3a57f1b5_7f9021ed","line":24,"range":{"start_line":24,"start_character":8,"end_line":24,"end_character":27},"updated":"2016-02-10 00:11:41.000000000","message":"You modified the signature on this method by removing \"id\". I looked at the existing code in the NotificationsRepository and I  see that the NotificationRepository for the MySQL implementation didn\u0027t  have this in the parameter name.\n\nSo, I\u0027m assuming that you resolved a bug that we had that somehow was going undetected in that the interface didn\u0027t match the implementation.","commit_id":"0ee6ecf24d29e4a5ed24ed27eca5ac0109718815"},{"author":{"_account_id":2419,"name":"Roland Hochmuth","email":"roland.hochmuth@hpe.com","username":"roland-hochmuth-s"},"change_message_id":"250b7b3cb0589307ab243fa3a2e35cd0e8d6b988","unresolved":false,"context_lines":[{"line_number":22,"context_line":""},{"line_number":23,"context_line":"    @abc.abstractmethod"},{"line_number":24,"context_line":"    def create_notification(self, tenant_id, name, notification_type,"},{"line_number":25,"context_line":"                            address):"},{"line_number":26,"context_line":"        return"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"    @abc.abstractmethod"}],"source_content_type":"text/x-python","patch_set":16,"id":"3a57f1b5_dfb5957e","line":25,"range":{"start_line":25,"start_character":28,"end_line":25,"end_character":35},"updated":"2016-02-10 00:11:41.000000000","message":"You modified the signature on this method by removing \"id\". I looked at the existing code in the NotificationsRepository and I  see that the NotificationRepository for the MySQL implementation didn\u0027t  have this in the parameter name.\n\nSo, I\u0027m assuming that you resolved a bug that we had that somehow was going undetected in that the interface didn\u0027t match the implementation.","commit_id":"0ee6ecf24d29e4a5ed24ed27eca5ac0109718815"},{"author":{"_account_id":2419,"name":"Roland Hochmuth","email":"roland.hochmuth@hpe.com","username":"roland-hochmuth-s"},"change_message_id":"250b7b3cb0589307ab243fa3a2e35cd0e8d6b988","unresolved":false,"context_lines":[{"line_number":38,"context_line":"        return"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"    @abc.abstractmethod"},{"line_number":41,"context_line":"    def update_notification(self, _id, tenant_id, name, notification_type,"},{"line_number":42,"context_line":"                            address):"},{"line_number":43,"context_line":"        return"}],"source_content_type":"text/x-python","patch_set":16,"id":"3a57f1b5_1f956de3","line":41,"range":{"start_line":41,"start_character":34,"end_line":41,"end_character":37},"updated":"2016-02-10 00:11:41.000000000","message":"I don\u0027t think you should add an \"_\" here.","commit_id":"0ee6ecf24d29e4a5ed24ed27eca5ac0109718815"},{"author":{"_account_id":16170,"name":"Michal Zielonka","email":"michal.zielonka@ts.fujitsu.com","username":"michal.zielonka"},"change_message_id":"6cd578b7b2d4f2d50f9e066b0169a24c64ca617c","unresolved":false,"context_lines":[{"line_number":38,"context_line":"        return"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"    @abc.abstractmethod"},{"line_number":41,"context_line":"    def update_notification(self, _id, tenant_id, name, notification_type,"},{"line_number":42,"context_line":"                            address):"},{"line_number":43,"context_line":"        return"}],"source_content_type":"text/x-python","patch_set":16,"id":"dae33548_0091c4f0","line":41,"range":{"start_line":41,"start_character":34,"end_line":41,"end_character":37},"in_reply_to":"3a57f1b5_1f956de3","updated":"2016-02-15 12:10:18.000000000","message":"Done","commit_id":"0ee6ecf24d29e4a5ed24ed27eca5ac0109718815"}],"monasca_api/common/repositories/sql/__init__.py":[{"author":{"_account_id":2419,"name":"Roland Hochmuth","email":"roland.hochmuth@hpe.com","username":"roland-hochmuth-s"},"change_message_id":"250b7b3cb0589307ab243fa3a2e35cd0e8d6b988","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":16,"id":"3a57f1b5_7ce4af3a","updated":"2016-02-10 00:11:41.000000000","message":"You might want to take a look at some of the other openstack projects, but I think the convention for the directory name is often \"sqlalchemy\" in all it\u0027s verbose glory, for example, https://github.com/openstack/nova/tree/master/nova/db/sqlalchemy, or \"sqa\" as in, https://github.com/openstack/murano/tree/master/murano/db.","commit_id":"0ee6ecf24d29e4a5ed24ed27eca5ac0109718815"}],"monasca_api/common/repositories/sql/alarm_definitions_repository.py":[{"author":{"_account_id":2419,"name":"Roland Hochmuth","email":"roland.hochmuth@hpe.com","username":"roland-hochmuth-s"},"change_message_id":"250b7b3cb0589307ab243fa3a2e35cd0e8d6b988","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright 2014 Hewlett-Packard"},{"line_number":2,"context_line":"#"},{"line_number":3,"context_line":"# Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":4,"context_line":"# not use this file except in compliance with the License. You may obtain"}],"source_content_type":"text/x-python","patch_set":16,"id":"3a57f1b5_799041ed","line":1,"range":{"start_line":1,"start_character":2,"end_line":1,"end_character":11},"updated":"2016-02-10 00:11:41.000000000","message":"I\u0027m assuming you should change this copyright to Fujitsu, 2016.","commit_id":"0ee6ecf24d29e4a5ed24ed27eca5ac0109718815"}],"monasca_api/common/repositories/sql/alarms_repository.py":[{"author":{"_account_id":2419,"name":"Roland Hochmuth","email":"roland.hochmuth@hpe.com","username":"roland-hochmuth-s"},"change_message_id":"250b7b3cb0589307ab243fa3a2e35cd0e8d6b988","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright 2014 Hewlett-Packard"},{"line_number":2,"context_line":"#"},{"line_number":3,"context_line":"# Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":4,"context_line":"# not use this file except in compliance with the License. You may obtain"}],"source_content_type":"text/x-python","patch_set":16,"id":"3a57f1b5_b97479cf","line":1,"range":{"start_line":1,"start_character":2,"end_line":1,"end_character":11},"updated":"2016-02-10 00:11:41.000000000","message":"Please change copyright.","commit_id":"0ee6ecf24d29e4a5ed24ed27eca5ac0109718815"}],"monasca_api/common/repositories/sql/models.py":[{"author":{"_account_id":2419,"name":"Roland Hochmuth","email":"roland.hochmuth@hpe.com","username":"roland-hochmuth-s"},"change_message_id":"250b7b3cb0589307ab243fa3a2e35cd0e8d6b988","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# -*- coding: utf-8 -*-"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# Copyright 2015 Robin Hood"},{"line_number":4,"context_line":"#"},{"line_number":5,"context_line":"# Licensed under the Apache License, Version 2.0 (the \"License\");"},{"line_number":6,"context_line":"# you may not use this file except in compliance with the License."}],"source_content_type":"text/x-python","patch_set":16,"id":"3a57f1b5_d93a95e7","line":3,"range":{"start_line":3,"start_character":2,"end_line":3,"end_character":11},"updated":"2016-02-10 00:11:41.000000000","message":"robber of the rich and giver to the poor","commit_id":"0ee6ecf24d29e4a5ed24ed27eca5ac0109718815"}],"monasca_api/common/repositories/sqla/notifications_repository.py":[{"author":{"_account_id":11515,"name":"Syd Logan","email":"syd.logan@broadcom.com","username":"slogan621"},"change_message_id":"bb4559c5d426a504c418aa25b5f10112ad9a39ce","unresolved":false,"context_lines":[{"line_number":165,"context_line":"                               b_tenant_id\u003dtenant_id,"},{"line_number":166,"context_line":"                               b_id\u003dnotification_id).fetchone()"},{"line_number":167,"context_line":""},{"line_number":168,"context_line":"            if row is not None:"},{"line_number":169,"context_line":"                return dict(row)"},{"line_number":170,"context_line":"            else:"},{"line_number":171,"context_line":"                raise exceptions.DoesNotExistException"}],"source_content_type":"text/x-python","patch_set":26,"id":"bae84128_11c2dd84","line":168,"updated":"2016-02-24 23:07:45.000000000","message":"nit: wouldn\u0027t \"if row:\" also work here?","commit_id":"abb59f00c10439d9f5c2ee0982f929de90329e2e"},{"author":{"_account_id":16222,"name":"witek","email":"witold.bedyk@suse.com","username":"witek"},"change_message_id":"49eac9ce22506e3b5217ed52421c71d4cb948522","unresolved":false,"context_lines":[{"line_number":165,"context_line":"                               b_tenant_id\u003dtenant_id,"},{"line_number":166,"context_line":"                               b_id\u003dnotification_id).fetchone()"},{"line_number":167,"context_line":""},{"line_number":168,"context_line":"            if row is not None:"},{"line_number":169,"context_line":"                return dict(row)"},{"line_number":170,"context_line":"            else:"},{"line_number":171,"context_line":"                raise exceptions.DoesNotExistException"}],"source_content_type":"text/x-python","patch_set":26,"id":"9aed3d3a_13a0f39e","line":168,"in_reply_to":"bae84128_11c2dd84","updated":"2016-02-26 09:53:00.000000000","message":"Done","commit_id":"abb59f00c10439d9f5c2ee0982f929de90329e2e"},{"author":{"_account_id":20033,"name":"Artur Basiak","email":"artur.basiak@ts.fujitsu.com","username":"abasiak"},"change_message_id":"67a73e9bb940c15881f69fb25722407c742a6c90","unresolved":false,"context_lines":[{"line_number":165,"context_line":"                               b_tenant_id\u003dtenant_id,"},{"line_number":166,"context_line":"                               b_id\u003dnotification_id).fetchone()"},{"line_number":167,"context_line":""},{"line_number":168,"context_line":"            if row:"},{"line_number":169,"context_line":"                return dict(row)"},{"line_number":170,"context_line":"            else:"},{"line_number":171,"context_line":"                raise exceptions.DoesNotExistException"}],"source_content_type":"text/x-python","patch_set":27,"id":"9aed3d3a_964a2782","line":168,"updated":"2016-02-26 12:49:09.000000000","message":"Did you check that __nonzero__() method is not overridden?\nPlease create classes:\n\n class B():\n   def __nonzero__(self):\n       return False \n class A():\n   pass\n\nThen check:\n   bb \u003d B()\n   aa \u003d A()\n   if aa:\n      print(\u0027True\u0027)\n   if bb: ##will never enter if block\n      print(\u0027True\u0027) \n   if bb is not None: ##that will work\n      print(\u0027True\u0027)\n\nIs SQLAlchemyCore most of magic methods are overridden so you should be careful with them.","commit_id":"d91d6f40c071c24b920f470bedb0dd2eb5f2af6b"},{"author":{"_account_id":16222,"name":"witek","email":"witold.bedyk@suse.com","username":"witek"},"change_message_id":"9b8f63150965f59751a8e154767062495e07e101","unresolved":false,"context_lines":[{"line_number":165,"context_line":"                               b_tenant_id\u003dtenant_id,"},{"line_number":166,"context_line":"                               b_id\u003dnotification_id).fetchone()"},{"line_number":167,"context_line":""},{"line_number":168,"context_line":"            if row:"},{"line_number":169,"context_line":"                return dict(row)"},{"line_number":170,"context_line":"            else:"},{"line_number":171,"context_line":"                raise exceptions.DoesNotExistException"}],"source_content_type":"text/x-python","patch_set":27,"id":"9aed3d3a_401bb11b","line":168,"in_reply_to":"9aed3d3a_964a2782","updated":"2016-02-26 14:05:34.000000000","message":"I agree that it is better to be explicit here. Especially that the result could depend on the DBAPI used. I revert to the previous patch set.","commit_id":"d91d6f40c071c24b920f470bedb0dd2eb5f2af6b"}],"monasca_api/common/repositories/sqla/sql_repository.py":[{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"d3c23473381cf8812969bf6fcc7b0a581569a19c","unresolved":false,"context_lines":[{"line_number":47,"context_line":"                    database_conf \u003d dict(self.conf.database)"},{"line_number":48,"context_line":"                    if \u0027url\u0027 in database_conf:"},{"line_number":49,"context_line":"                        del database_conf[\u0027url\u0027]"},{"line_number":50,"context_line":"                    url \u003d URL(**database_conf)"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"            from sqlalchemy import create_engine"},{"line_number":53,"context_line":"            self._db_engine \u003d create_engine(url, echo\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":19,"id":"dae33548_074ecd95","line":50,"updated":"2016-02-16 10:06:51.000000000","message":"In conf.database, \"query\" option could be added, because URL function also accept this entry parameter","commit_id":"e51feed20046897819d1287e3a8dafdd6349be1c"}]}
