)]}'
{"oslo/db/sqlalchemy/session.py":[{"author":{"_account_id":7491,"name":"Viktor Serhieiev","email":"viktor.sergeyev@gmail.com","username":"vsergeyev"},"change_message_id":"fbb4cec3b66964c1555e0055fad31ac873c2ac5c","unresolved":false,"context_lines":[{"line_number":873,"context_line":"        \"\"\"Get the engine instance (note, that it\u0027s shared).\"\"\""},{"line_number":874,"context_line":""},{"line_number":875,"context_line":"        if use_slave and self._slave_engine:"},{"line_number":876,"context_line":"            return self._slave_engine"},{"line_number":877,"context_line":""},{"line_number":878,"context_line":"        return self._engine"},{"line_number":879,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"7adec928_abacbc8d","line":876,"updated":"2014-05-22 10:47:39.000000000","message":"In this case user can create EngineFacade() object without slave connection and get an error, when call get_engine() or get_session() with use_slave\u003dTrue. IMO there is a sense to inform user, that something went wrong, or raise a human-readable exception. What do you think about this?","commit_id":"5cc0fc7817d448aae83c50e3aee01af2d8577718"},{"author":{"_account_id":6849,"name":"Roman Podoliaka","email":"roman.podoliaka@gmail.com","username":"rpodolyaka"},"change_message_id":"9b488531747038d087fa15b12373ea167874e80c","unresolved":false,"context_lines":[{"line_number":873,"context_line":"        \"\"\"Get the engine instance (note, that it\u0027s shared).\"\"\""},{"line_number":874,"context_line":""},{"line_number":875,"context_line":"        if use_slave and self._slave_engine:"},{"line_number":876,"context_line":"            return self._slave_engine"},{"line_number":877,"context_line":""},{"line_number":878,"context_line":"        return self._engine"},{"line_number":879,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"7adec928_667669da","line":876,"in_reply_to":"7adec928_abacbc8d","updated":"2014-05-22 11:43:24.000000000","message":"I\u0027d rather stick to Nova behavior here: if the caller asks for the slave engine and it\u0027s been created, return it, if it hasn\u0027t been created, then return the master engine. But yeah, this is a good catch as I forgot to initialize _slave_engine/_slave_session_maker attributes, thanks!","commit_id":"5cc0fc7817d448aae83c50e3aee01af2d8577718"},{"author":{"_account_id":7491,"name":"Viktor Serhieiev","email":"viktor.sergeyev@gmail.com","username":"vsergeyev"},"change_message_id":"fbb4cec3b66964c1555e0055fad31ac873c2ac5c","unresolved":false,"context_lines":[{"line_number":889,"context_line":"        :keyword expire_on_commit: expire session objects on commit"},{"line_number":890,"context_line":"        :type expire_on_commit: bool"},{"line_number":891,"context_line":""},{"line_number":892,"context_line":"        :keyword use_slave: use \u0027slave\u0027 database connection for this session"},{"line_number":893,"context_line":"        :type use_slave: bool"},{"line_number":894,"context_line":""},{"line_number":895,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":1,"id":"7adec928_2bab4c8a","line":892,"updated":"2014-05-22 10:47:39.000000000","message":"nit: (defaults to False)","commit_id":"5cc0fc7817d448aae83c50e3aee01af2d8577718"},{"author":{"_account_id":6849,"name":"Roman Podoliaka","email":"roman.podoliaka@gmail.com","username":"rpodolyaka"},"change_message_id":"9b488531747038d087fa15b12373ea167874e80c","unresolved":false,"context_lines":[{"line_number":889,"context_line":"        :keyword expire_on_commit: expire session objects on commit"},{"line_number":890,"context_line":"        :type expire_on_commit: bool"},{"line_number":891,"context_line":""},{"line_number":892,"context_line":"        :keyword use_slave: use \u0027slave\u0027 database connection for this session"},{"line_number":893,"context_line":"        :type use_slave: bool"},{"line_number":894,"context_line":""},{"line_number":895,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":1,"id":"7adec928_867375e6","line":892,"in_reply_to":"7adec928_2bab4c8a","updated":"2014-05-22 11:43:24.000000000","message":"Done","commit_id":"5cc0fc7817d448aae83c50e3aee01af2d8577718"},{"author":{"_account_id":7491,"name":"Viktor Serhieiev","email":"viktor.sergeyev@gmail.com","username":"vsergeyev"},"change_message_id":"fbb4cec3b66964c1555e0055fad31ac873c2ac5c","unresolved":false,"context_lines":[{"line_number":900,"context_line":"            if arg not in (\u0027autocommit\u0027, \u0027expire_on_commit\u0027):"},{"line_number":901,"context_line":"                del kwargs[arg]"},{"line_number":902,"context_line":""},{"line_number":903,"context_line":"        if use_slave and self._slave_session_maker:"},{"line_number":904,"context_line":"            return self._slave_session_maker(**kwargs)"},{"line_number":905,"context_line":""},{"line_number":906,"context_line":"        return self._session_maker(**kwargs)"}],"source_content_type":"text/x-python","patch_set":1,"id":"7adec928_cba9087d","line":903,"updated":"2014-05-22 10:47:39.000000000","message":"same as on line 876","commit_id":"5cc0fc7817d448aae83c50e3aee01af2d8577718"},{"author":{"_account_id":6849,"name":"Roman Podoliaka","email":"roman.podoliaka@gmail.com","username":"rpodolyaka"},"change_message_id":"9b488531747038d087fa15b12373ea167874e80c","unresolved":false,"context_lines":[{"line_number":900,"context_line":"            if arg not in (\u0027autocommit\u0027, \u0027expire_on_commit\u0027):"},{"line_number":901,"context_line":"                del kwargs[arg]"},{"line_number":902,"context_line":""},{"line_number":903,"context_line":"        if use_slave and self._slave_session_maker:"},{"line_number":904,"context_line":"            return self._slave_session_maker(**kwargs)"},{"line_number":905,"context_line":""},{"line_number":906,"context_line":"        return self._session_maker(**kwargs)"}],"source_content_type":"text/x-python","patch_set":1,"id":"7adec928_e649998f","line":903,"in_reply_to":"7adec928_cba9087d","updated":"2014-05-22 11:43:24.000000000","message":"Done","commit_id":"5cc0fc7817d448aae83c50e3aee01af2d8577718"},{"author":{"_account_id":7491,"name":"Viktor Serhieiev","email":"viktor.sergeyev@gmail.com","username":"vsergeyev"},"change_message_id":"3e7f0fc6d192116474231af81f5b2b271458e9a3","unresolved":false,"context_lines":[{"line_number":873,"context_line":"            self._slave_session_maker \u003d None"},{"line_number":874,"context_line":""},{"line_number":875,"context_line":"    def get_engine(self, use_slave\u003dFalse):"},{"line_number":876,"context_line":"        \"\"\"Get the engine instance (note, that it\u0027s shared).\"\"\""},{"line_number":877,"context_line":""},{"line_number":878,"context_line":"        if use_slave and self._slave_engine:"},{"line_number":879,"context_line":"            return self._slave_engine"}],"source_content_type":"text/x-python","patch_set":2,"id":"7adec928_215a8b83","line":876,"updated":"2014-05-22 11:52:46.000000000","message":"can you please document use_slave parameter here also?","commit_id":"1592cc771a23e096ba9fee945f22bb59141ff8bc"},{"author":{"_account_id":6849,"name":"Roman Podoliaka","email":"roman.podoliaka@gmail.com","username":"rpodolyaka"},"change_message_id":"679eac4bdaaca8f952bd2dd4433ae951f5ff98e5","unresolved":false,"context_lines":[{"line_number":873,"context_line":"            self._slave_session_maker \u003d None"},{"line_number":874,"context_line":""},{"line_number":875,"context_line":"    def get_engine(self, use_slave\u003dFalse):"},{"line_number":876,"context_line":"        \"\"\"Get the engine instance (note, that it\u0027s shared).\"\"\""},{"line_number":877,"context_line":""},{"line_number":878,"context_line":"        if use_slave and self._slave_engine:"},{"line_number":879,"context_line":"            return self._slave_engine"}],"source_content_type":"text/x-python","patch_set":2,"id":"7adec928_d6cd2c88","line":876,"in_reply_to":"7adec928_215a8b83","updated":"2014-05-22 12:33:30.000000000","message":"Done","commit_id":"1592cc771a23e096ba9fee945f22bb59141ff8bc"}]}
