1
# Copyright 2020 Inspur
3
# Licensed under the Apache License, Version 2.0 (the "License"); you may
4
# not use this file except in compliance with the License. You may obtain
5
# a copy of the License at
7
# http://www.apache.org/licenses/LICENSE-2.0
9
# Unless required by applicable law or agreed to in writing, software
10
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
11
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
12
# License for the specific language governing permissions and limitations
15
"""Implementation of SQLAlchemy backend."""
17
import osprofiler.sqlalchemy
21
from oslo_db.sqlalchemy import session as db_session
22
from venus.conf import CONF
25
_LOCK = threading.Lock()
29
def _create_facade_lazily():
34
_FACADE = db_session.EngineFacade(
35
CONF.database.connection,
39
if CONF.profiler.profiler_enabled:
40
if CONF.profiler.trace_sqlalchemy:
41
osprofiler.sqlalchemy.add_tracing(sqlalchemy,