mirror of
https://github.com/datahub-project/datahub.git
synced 2025-10-07 15:05:08 +00:00
fix(ingest/sql_server): switch to engine inspector instead of connection (#13104)
This commit is contained in:
parent
54db272c4d
commit
f3c8bf9cb4
@ -936,25 +936,25 @@ class SQLServerSource(SQLAlchemySource):
|
||||
url = self.config.get_sql_alchemy_url()
|
||||
logger.debug(f"sql_alchemy_url={url}")
|
||||
engine = create_engine(url, **self.config.options)
|
||||
with engine.connect() as conn:
|
||||
if self.config.database and self.config.database != "":
|
||||
inspector = inspect(conn)
|
||||
yield inspector
|
||||
else:
|
||||
|
||||
if self.config.database and self.config.database != "":
|
||||
inspector = inspect(engine)
|
||||
yield inspector
|
||||
else:
|
||||
with engine.begin() as conn:
|
||||
databases = conn.execute(
|
||||
"SELECT name FROM master.sys.databases WHERE name NOT IN \
|
||||
('master', 'model', 'msdb', 'tempdb', 'Resource', \
|
||||
'distribution' , 'reportserver', 'reportservertempdb'); "
|
||||
)
|
||||
for db in databases:
|
||||
if self.config.database_pattern.allowed(db["name"]):
|
||||
url = self.config.get_sql_alchemy_url(current_db=db["name"])
|
||||
with create_engine(
|
||||
url, **self.config.options
|
||||
).connect() as conn:
|
||||
inspector = inspect(conn)
|
||||
self.current_database = db["name"]
|
||||
yield inspector
|
||||
).fetchall()
|
||||
|
||||
for db in databases:
|
||||
if self.config.database_pattern.allowed(db["name"]):
|
||||
url = self.config.get_sql_alchemy_url(current_db=db["name"])
|
||||
engine = create_engine(url, **self.config.options)
|
||||
inspector = inspect(engine)
|
||||
self.current_database = db["name"]
|
||||
yield inspector
|
||||
|
||||
def get_identifier(
|
||||
self, *, schema: str, entity: str, inspector: Inspector, **kwargs: Any
|
||||
|
Loading…
x
Reference in New Issue
Block a user