From 7b64e536fec6f0a2da3a192e01a3b0ddf7b32441 Mon Sep 17 00:00:00 2001 From: codingwithabhi <63392662+codingwithabhi@users.noreply.github.com> Date: Sat, 9 Apr 2022 20:03:46 +0530 Subject: [PATCH] Snowflake connection fix (#3986) * snowflake-connection-fixed * code-formatted * ran-make-core_bump_version_dev --- .../src/metadata/ingestion/source/snowflake.py | 18 ------------------ .../src/metadata/utils/source_connections.py | 3 ++- 2 files changed, 2 insertions(+), 19 deletions(-) diff --git a/ingestion/src/metadata/ingestion/source/snowflake.py b/ingestion/src/metadata/ingestion/source/snowflake.py index 3798e3540c6..dfe439b71e4 100644 --- a/ingestion/src/metadata/ingestion/source/snowflake.py +++ b/ingestion/src/metadata/ingestion/source/snowflake.py @@ -34,7 +34,6 @@ from metadata.generated.schema.metadataIngestion.workflow import ( ) from metadata.ingestion.api.source import InvalidSourceException from metadata.ingestion.source.sql_source import SQLSource -from metadata.ingestion.source.sql_source_common import SQLConnectionConfig from metadata.utils.column_type_parser import create_sqlalchemy_type from metadata.utils.engines import get_engine @@ -45,23 +44,6 @@ ischema_names["GEOGRAPHY"] = GEOGRAPHY logger: logging.Logger = logging.getLogger(__name__) -class SnowflakeConfig(SnowflakeConnection, SQLConnectionConfig): - result_limit: int = 1000 - duration: Optional[int] - - def get_connection_url(self): - connect_string = super().get_connection_url() - options = { - "account": self.account, - "warehouse": self.warehouse, - "role": self.role, - } - params = "&".join(f"{key}={value}" for (key, value) in options.items() if value) - if params: - connect_string = f"{connect_string}{params}" - return connect_string - - class SnowflakeSource(SQLSource): def __init__(self, config, metadata_config): connection_arguments = ( diff --git a/ingestion/src/metadata/utils/source_connections.py b/ingestion/src/metadata/utils/source_connections.py index aa14099741b..2341307e7de 100644 --- a/ingestion/src/metadata/utils/source_connections.py +++ b/ingestion/src/metadata/utils/source_connections.py @@ -188,7 +188,7 @@ def _(connection: TrinoConnection): return connection.connectionArguments -@get_connection_args.register +@get_connection_url.register def _(connection: SnowflakeConnection): url = f"{connection.scheme.value}://" @@ -217,6 +217,7 @@ def _(connection: SnowflakeConnection): f"{key}={quote_plus(value)}" for (key, value) in options.items() if value ) url = f"{url}?{params}" + return url @get_connection_url.register