)]}'
{"nova/openstack/common/db/sqlalchemy/session.py":[{"author":{"_account_id":5652,"name":"David Ripton","email":"dripton@redhat.com","username":"dripton"},"change_message_id":"b3d336e78772f42f0d76a1b22866a771fc5cc249","unresolved":false,"context_lines":[{"line_number":620,"context_line":"    else:"},{"line_number":621,"context_line":"        _ENGINE \u003d engine"},{"line_number":622,"context_line":""},{"line_number":623,"context_line":"    return engine"},{"line_number":624,"context_line":""},{"line_number":625,"context_line":""},{"line_number":626,"context_line":"def _synchronous_switch_listener(dbapi_conn, connection_rec):"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAUX%2F%2Felo%3D","line":623,"updated":"2014-02-12 22:28:20.000000000","message":"I\u0027d like to see tests.","commit_id":"18a11004264b63b69ad0e11701e654bb8998db27"}],"nova/openstack/common/db/sqlalchemy/utils.py":[{"author":{"_account_id":5652,"name":"David Ripton","email":"dripton@redhat.com","username":"dripton"},"change_message_id":"b3d336e78772f42f0d76a1b22866a771fc5cc249","unresolved":false,"context_lines":[{"line_number":226,"context_line":"        session \u003d db_session.get_session(slave_session\u003duse_slave)"},{"line_number":227,"context_line":"    if not read_deleted:"},{"line_number":228,"context_line":"        if hasattr(context, \u0027read_deleted\u0027):"},{"line_number":229,"context_line":"            # NOOTE(viktors): some projects use `read_deleted` attribute in"},{"line_number":230,"context_line":"            # their contexts instead of `show_deleted`."},{"line_number":231,"context_line":"            read_deleted \u003d context.read_deleted"},{"line_number":232,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAUX%2F%2Femg%3D","line":229,"updated":"2014-02-12 22:28:20.000000000","message":"s/NOOTE/NOTE/","commit_id":"18a11004264b63b69ad0e11701e654bb8998db27"},{"author":{"_account_id":5652,"name":"David Ripton","email":"dripton@redhat.com","username":"dripton"},"change_message_id":"b3d336e78772f42f0d76a1b22866a771fc5cc249","unresolved":false,"context_lines":[{"line_number":239,"context_line":"    query \u003d _read_deleted_filter(query, model, read_deleted)"},{"line_number":240,"context_line":"    query \u003d _project_filter(query, model, context, project_only)"},{"line_number":241,"context_line":""},{"line_number":242,"context_line":"    return query"},{"line_number":243,"context_line":""},{"line_number":244,"context_line":""},{"line_number":245,"context_line":"def get_table(engine, name):"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAUX%2F%2FemY%3D","line":242,"updated":"2014-02-12 22:28:20.000000000","message":"I\u0027d like to see tests for this.  This is somewhat harsh because it\u0027s a preexisting function that you moved and changed a little bit, but the fact that it didn\u0027t have any is kind of scary.","commit_id":"18a11004264b63b69ad0e11701e654bb8998db27"}]}
