diff --git a/ingestion/src/metadata/ingestion/processor/query_parser.py b/ingestion/src/metadata/ingestion/processor/query_parser.py index 5f57a7ae5d6..a3f68dfb55a 100644 --- a/ingestion/src/metadata/ingestion/processor/query_parser.py +++ b/ingestion/src/metadata/ingestion/processor/query_parser.py @@ -20,6 +20,7 @@ from metadata.config.common import ConfigModel from metadata.generated.schema.entity.services.connections.metadata.openMetadataConnection import ( OpenMetadataConnection, ) +from metadata.generated.schema.type.basic import DateTime from metadata.generated.schema.type.queryParserData import ParsedData, QueryParserData from metadata.generated.schema.type.tableQuery import TableQueries, TableQuery from metadata.ingestion.api.models import Either, StackTraceError @@ -41,11 +42,10 @@ def parse_sql_statement(record: TableQuery, dialect: Dialect) -> Optional[Parsed :return: QueryParserData """ - start_date = record.analysisDate - if isinstance(record.analysisDate, str): - start_date = datetime.datetime.strptime( - str(record.analysisDate), "%Y-%m-%d %H:%M:%S" - ).date() + start_time = record.analysisDate + if isinstance(start_time, DateTime): + start_date = start_time.__root__.date() + start_time = datetime.datetime.strptime(str(start_date.isoformat()), "%Y-%m-%d") lineage_parser = LineageParser(record.query, dialect=dialect) @@ -61,7 +61,7 @@ def parse_sql_statement(record: TableQuery, dialect: Dialect) -> Optional[Parsed query_type=record.query_type, exclude_usage=record.exclude_usage, userName=record.userName, - date=int(start_date.__root__.timestamp()), + date=int(start_time.timestamp()), serviceName=record.serviceName, duration=record.duration, )