)]}'
{"ceilometer/alarm/storage/impl_sqlalchemy.py":[{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"d20cf61911ee21dc7745acb146c9dba77c64ce92","unresolved":false,"context_lines":[{"line_number":81,"context_line":"    )"},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"    def __init__(self, url):"},{"line_number":84,"context_line":"        # FIXME(Alexei_987) oslo.config compatiblity hack"},{"line_number":85,"context_line":"        old_url \u003d cfg.CONF.database.connection"},{"line_number":86,"context_line":"        cfg.CONF.set_override(\u0027connection\u0027, url, group\u003d\u0027database\u0027)"},{"line_number":87,"context_line":"        self._engine_facade \u003d db_session.EngineFacade.from_config(cfg.CONF)"}],"source_content_type":"text/x-python","patch_set":3,"id":"1abeadc6_3749f58b","line":84,"updated":"2014-08-26 11:37:17.000000000","message":"hey Alexei, thanks so much for looking at this again... i was thinking to just use:\n\nself._engine_facade \u003d db_session.EngineFacade(url, **dict(conf.database.items()))\n\ninstead of: self._engine_facade \u003d sqlalchemy_session.EngineFacade.from_config(url, cfg.CONF)\n\ndoes that not work? i haven\u0027t tried it myself.","commit_id":"b16ab1ac3ffe0c01f7ad4aa86dc316439de38884"},{"author":{"_account_id":7763,"name":"Alexei Kornienko","email":"akornienko@mirantis.com","username":"akornienko"},"change_message_id":"7f23976d6ff3036d98644467385f2eefb1fefba7","unresolved":false,"context_lines":[{"line_number":81,"context_line":"    )"},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"    def __init__(self, url):"},{"line_number":84,"context_line":"        # FIXME(Alexei_987) oslo.config compatiblity hack"},{"line_number":85,"context_line":"        old_url \u003d cfg.CONF.database.connection"},{"line_number":86,"context_line":"        cfg.CONF.set_override(\u0027connection\u0027, url, group\u003d\u0027database\u0027)"},{"line_number":87,"context_line":"        self._engine_facade \u003d db_session.EngineFacade.from_config(cfg.CONF)"}],"source_content_type":"text/x-python","patch_set":3,"id":"1abeadc6_9b7cb374","line":84,"in_reply_to":"1abeadc6_3749f58b","updated":"2014-08-26 11:42:17.000000000","message":"It may work but I\u0027m a bit against such approach. There is a dedicated factory method that knows how to build engine facade from config object. If we\u0027ll just pass conf values as keyword arguments there is no guarantee that it will be compatible with parameter\u0027s renaming, etc. \n\nIMHO we should move in a direction when we\u0027ll be able to use separate option groups for different connections in oslo.config. This will allow us to remove this hack and continue creating object from config (but in a proper way).","commit_id":"b16ab1ac3ffe0c01f7ad4aa86dc316439de38884"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"538cffd94b89c91aadcc99b2049f02d5369dffcd","unresolved":false,"context_lines":[{"line_number":81,"context_line":"    )"},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"    def __init__(self, url):"},{"line_number":84,"context_line":"        # FIXME(Alexei_987) oslo.config compatiblity hack"},{"line_number":85,"context_line":"        old_url \u003d cfg.CONF.database.connection"},{"line_number":86,"context_line":"        cfg.CONF.set_override(\u0027connection\u0027, url, group\u003d\u0027database\u0027)"},{"line_number":87,"context_line":"        self._engine_facade \u003d db_session.EngineFacade.from_config(cfg.CONF)"}],"source_content_type":"text/x-python","patch_set":3,"id":"1abeadc6_9eb66189","line":84,"in_reply_to":"1abeadc6_9b7cb374","updated":"2014-08-26 12:31:07.000000000","message":"this seems super hacky for no reason tbh... i understand the guarantee issue but i guess from my pov, a param renaming anywhere will always break something regardless of conf or not. if params do change, i\u0027d hope oslo.db would have some means of backward compatibility.","commit_id":"b16ab1ac3ffe0c01f7ad4aa86dc316439de38884"},{"author":{"_account_id":7763,"name":"Alexei Kornienko","email":"akornienko@mirantis.com","username":"akornienko"},"change_message_id":"b969e9f7bbb7b865cba4af54381476a30eb3a818","unresolved":false,"context_lines":[{"line_number":81,"context_line":"    )"},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"    def __init__(self, url):"},{"line_number":84,"context_line":"        # FIXME(Alexei_987) oslo.config compatiblity hack"},{"line_number":85,"context_line":"        old_url \u003d cfg.CONF.database.connection"},{"line_number":86,"context_line":"        cfg.CONF.set_override(\u0027connection\u0027, url, group\u003d\u0027database\u0027)"},{"line_number":87,"context_line":"        self._engine_facade \u003d db_session.EngineFacade.from_config(cfg.CONF)"}],"source_content_type":"text/x-python","patch_set":3,"id":"1abeadc6_812e06f9","line":84,"in_reply_to":"1abeadc6_9eb66189","updated":"2014-08-26 12:49:25.000000000","message":"Done","commit_id":"b16ab1ac3ffe0c01f7ad4aa86dc316439de38884"}]}
