)]}'
{"keystone/common/sql/core.py":[{"author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"change_message_id":"15e982ce2d269ffa0e923e125295e266e215c4fd","unresolved":false,"context_lines":[{"line_number":230,"context_line":"        if not self._engine:"},{"line_number":231,"context_line":"            self._engine \u003d self.get_engine()"},{"line_number":232,"context_line":"            self._sessionmaker \u003d self.get_sessionmaker(self._engine)"},{"line_number":233,"context_line":"            register_global_engine_callback(self._clear_engine)"},{"line_number":234,"context_line":"        return self._sessionmaker()"},{"line_number":235,"context_line":""},{"line_number":236,"context_line":"    def get_engine(self, allow_global_engine\u003dTrue):"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAPH%2F%2FtD0%3D","line":233,"updated":"2013-05-24 22:40:38.000000000","message":"i don\u0027t really like providing a private method for external callback; just make it public?","commit_id":"6994ddf66780b350343e8077f2869c7601129752"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"30a91739f79946877021413924552ada3c3cfb32","unresolved":false,"context_lines":[{"line_number":230,"context_line":"        if not self._engine:"},{"line_number":231,"context_line":"            self._engine \u003d self.get_engine()"},{"line_number":232,"context_line":"            self._sessionmaker \u003d self.get_sessionmaker(self._engine)"},{"line_number":233,"context_line":"            register_global_engine_callback(self._clear_engine)"},{"line_number":234,"context_line":"        return self._sessionmaker()"},{"line_number":235,"context_line":""},{"line_number":236,"context_line":"    def get_engine(self, allow_global_engine\u003dTrue):"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAPH%2F%2FjTQ%3D","line":233,"in_reply_to":"AAAAPH%2F%2FtD0%3D","updated":"2013-05-30 18:03:58.000000000","message":"Done","commit_id":"6994ddf66780b350343e8077f2869c7601129752"},{"author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"change_message_id":"e12df69590a3805ef2513cdb7f94a0c92cbf0cb0","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# vim: tabstop\u003d4 shiftwidth\u003d4 softtabstop\u003d4"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# Copyright 2012 OpenStack LLC"},{"line_number":4,"context_line":"# Copyright 2013 IBM Corp."},{"line_number":5,"context_line":"#"},{"line_number":6,"context_line":"# Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":7,"context_line":"# not use this file except in compliance with the License. You may obtain"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAPH%2F%2FgR8%3D","line":4,"updated":"2013-05-31 17:53:37.000000000","message":"Do we need to check with the OpenStack lawyers on this one? :)","commit_id":"8a09bbea5e4853a92046102c4f6934bc784dd3b3"}],"tests/test_sql_core.py":[{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"895e77f9096011e5e710d9b6ba176c01876121fa","unresolved":false,"context_lines":[{"line_number":105,"context_line":"        # If clear the global engine, a new engine is used for get_session()."},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"        base \u003d sql.Base()"},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"        session1 \u003d base.get_session()"},{"line_number":110,"context_line":""},{"line_number":111,"context_line":"        sql.set_global_engine(None)"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAPH%2F%2F6dk%3D","line":108,"updated":"2013-05-20 13:55:44.000000000","message":"Should we consider removing some of the newlines in this test to fit the existing conventions in this file?","commit_id":"5dcd9942542afd923bd6d319677fbc4b2f730d82"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"23c492cc90756ce575a6c90b4b443e11228e52f5","unresolved":false,"context_lines":[{"line_number":105,"context_line":"        # If clear the global engine, a new engine is used for get_session()."},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"        base \u003d sql.Base()"},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"        session1 \u003d base.get_session()"},{"line_number":110,"context_line":""},{"line_number":111,"context_line":"        sql.set_global_engine(None)"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAPH%2F%2F5LM%3D","line":108,"in_reply_to":"AAAAPH%2F%2F6dk%3D","updated":"2013-05-20 20:41:33.000000000","message":"Done","commit_id":"5dcd9942542afd923bd6d319677fbc4b2f730d82"},{"author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"change_message_id":"15e982ce2d269ffa0e923e125295e266e215c4fd","unresolved":false,"context_lines":[{"line_number":79,"context_line":"        sql.set_global_engine(None)"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"class TestBase(test.TestCase):"},{"line_number":83,"context_line":""},{"line_number":84,"context_line":"    def tearDown(self):"},{"line_number":85,"context_line":"        sql.set_global_engine(None)"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAPH%2F%2FtDo%3D","line":82,"updated":"2013-05-24 22:40:38.000000000","message":"(this comment should be in a different review) why is TestBase separated from TestGlobalEngine? What is \"Base\" about this class?","commit_id":"6994ddf66780b350343e8077f2869c7601129752"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"30a91739f79946877021413924552ada3c3cfb32","unresolved":false,"context_lines":[{"line_number":79,"context_line":"        sql.set_global_engine(None)"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"class TestBase(test.TestCase):"},{"line_number":83,"context_line":""},{"line_number":84,"context_line":"    def tearDown(self):"},{"line_number":85,"context_line":"        sql.set_global_engine(None)"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAPH%2F%2FjS8%3D","line":82,"in_reply_to":"AAAAPH%2F%2FtDo%3D","updated":"2013-05-30 18:03:58.000000000","message":"The global engine isn\u0027t in the Base class so I don\u0027t think those belong in here.\n\nThe tests in this class test the Base class in keystone.common.sql.core. I think the name is appropriate, but if you\u0027ve got a suggestion it\u0027s easy for me to change it.","commit_id":"6994ddf66780b350343e8077f2869c7601129752"}]}
