File tree 2 files changed +12
-5
lines changed
metadata-ingestion/src/datahub
ingestion/source/snowflake
2 files changed +12
-5
lines changed Original file line number Diff line number Diff line change 40
40
ColumnRef ,
41
41
DownstreamColumnRef ,
42
42
)
43
+ from datahub .sql_parsing .sqlglot_utils import get_query_fingerprint
43
44
from datahub .utilities .perf_timer import PerfTimer
44
45
from datahub .utilities .time import ts_millis_to_datetime
45
46
@@ -239,6 +240,9 @@ def get_known_query_lineage(
239
240
downstream_table_urn = self .identifiers .gen_dataset_urn (dataset_name )
240
241
241
242
known_lineage = KnownQueryLineageInfo (
243
+ query_id = get_query_fingerprint (
244
+ query .query_text , self .identifiers .platform , fast = True
245
+ ),
242
246
query_text = query .query_text ,
243
247
downstream = downstream_table_urn ,
244
248
upstreams = self .map_query_result_upstreams (
Original file line number Diff line number Diff line change @@ -165,6 +165,7 @@ class KnownQueryLineageInfo:
165
165
timestamp : Optional [datetime ] = None
166
166
session_id : Optional [str ] = None
167
167
query_type : QueryType = QueryType .UNKNOWN
168
+ query_id : Optional [str ] = None
168
169
169
170
170
171
@dataclasses .dataclass
@@ -618,11 +619,13 @@ def add_known_query_lineage(
618
619
self .report .num_known_query_lineage += 1
619
620
620
621
# Generate a fingerprint for the query.
621
- with self .report .sql_fingerprinting_timer :
622
- query_fingerprint = get_query_fingerprint (
623
- known_query_lineage .query_text ,
624
- platform = self .platform .platform_name ,
625
- )
622
+ query_fingerprint = known_query_lineage .query_id
623
+ if not query_fingerprint :
624
+ with self .report .sql_fingerprinting_timer :
625
+ query_fingerprint = get_query_fingerprint (
626
+ known_query_lineage .query_text ,
627
+ platform = self .platform .platform_name ,
628
+ )
626
629
formatted_query = self ._maybe_format_query (known_query_lineage .query_text )
627
630
628
631
# Register the query.
You can’t perform that action at this time.
0 commit comments