Skip to content

Commit

Permalink
fix(ingest): looker - handle invalid json in Looker query dynamic fie…
Browse files Browse the repository at this point in the history
  • Loading branch information
treff7es authored and maggiehays committed Aug 1, 2022
1 parent a6aaa3d commit 5de5ff3
Showing 1 changed file with 11 additions and 3 deletions.
14 changes: 11 additions & 3 deletions metadata-ingestion/src/datahub/ingestion/source/looker.py
Expand Up @@ -6,6 +6,7 @@
import re
from dataclasses import dataclass
from dataclasses import field as dataclass_field
from json import JSONDecodeError
from typing import (
Any,
Dict,
Expand Down Expand Up @@ -378,9 +379,16 @@ def _get_fields_from_query(self, query: Optional[Query]) -> List[str]:
# - looker table calculations: https://docs.looker.com/exploring-data/using-table-calculations
# - looker custom measures: https://docs.looker.com/de/exploring-data/adding-fields/custom-measure
# - looker custom dimensions: https://docs.looker.com/exploring-data/adding-fields/custom-measure#creating_a_custom_dimension_using_a_looker_expression
dynamic_fields = json.loads(
query.dynamic_fields if query.dynamic_fields is not None else "[]"
)
try:
dynamic_fields = json.loads(
query.dynamic_fields if query.dynamic_fields is not None else "[]"
)
except JSONDecodeError as e:
logger.warning(
f"Json load failed on loading dynamic field with error: {e}. The field value was: {query.dynamic_fields}"
)
dynamic_fields = "[]"

custom_field_to_underlying_field = {}
for field in dynamic_fields:
# Table calculations can only reference fields used in the fields section, so this will always be a subset of of the query.fields
Expand Down

0 comments on commit 5de5ff3

Please sign in to comment.