Fix Stored Procedures - Don't get queries without context (#13257)

This commit is contained in:
Pere Miquel Brull 2023-09-19 12:02:29 +02:00 committed by GitHub
parent b07dac8c1d
commit 7d711dc680
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 62 additions and 44 deletions

View File

@ -630,6 +630,8 @@ class BigquerySource(StoredProcedureMixin, CommonDbSourceService):
Pick the stored procedure name from the context
and return the list of associated queries
"""
# Only process if we actually have yield a stored procedure
if self.context.stored_procedure:
start, _ = get_start_and_end(self.source_config.queryLogDuration)
query = BIGQUERY_GET_STORED_PROCEDURE_QUERIES.format(
start_date=start,
@ -642,6 +644,7 @@ class BigquerySource(StoredProcedureMixin, CommonDbSourceService):
)
for query_by_procedure in (
queries_dict.get(self.context.stored_procedure.name.__root__.lower()) or []
queries_dict.get(self.context.stored_procedure.name.__root__.lower())
or []
):
yield query_by_procedure

View File

@ -278,6 +278,8 @@ class RedshiftSource(StoredProcedureMixin, CommonDbSourceService):
Pick the stored procedure name from the context
and return the list of associated queries
"""
# Only process if we actually have yield a stored procedure
if self.context.stored_procedure:
start, _ = get_start_and_end(self.source_config.queryLogDuration)
query = REDSHIFT_GET_STORED_PROCEDURE_QUERIES.format(
start_date=start,
@ -291,6 +293,7 @@ class RedshiftSource(StoredProcedureMixin, CommonDbSourceService):
)
for query_by_procedure in (
queries_dict.get(self.context.stored_procedure.name.__root__.lower()) or []
queries_dict.get(self.context.stored_procedure.name.__root__.lower())
or []
):
yield query_by_procedure

View File

@ -570,6 +570,8 @@ class SnowflakeSource(LifeCycleQueryMixin, StoredProcedureMixin, CommonDbSourceS
Pick the stored procedure name from the context
and return the list of associated queries
"""
# Only process if we actually have yield a stored procedure
if self.context.stored_procedure:
start, _ = get_start_and_end(self.source_config.queryLogDuration)
query = SNOWFLAKE_GET_STORED_PROCEDURE_QUERIES.format(
start_date=start,
@ -585,6 +587,7 @@ class SnowflakeSource(LifeCycleQueryMixin, StoredProcedureMixin, CommonDbSourceS
)
for query_by_procedure in (
queries_dict.get(self.context.stored_procedure.name.__root__.lower()) or []
queries_dict.get(self.context.stored_procedure.name.__root__.lower())
or []
):
yield query_by_procedure

View File

@ -21,6 +21,7 @@ from typing import Optional, Union
from metadata.generated.schema.api.lineage.addLineage import AddLineageRequest
from metadata.ingestion.api.models import Entity
from metadata.ingestion.models.delete_entity import DeleteEntity
from metadata.ingestion.models.life_cycle import OMetaLifeCycleData
from metadata.ingestion.models.ometa_classification import OMetaTagAndClassification
METADATA_LOGGER = "metadata"
@ -216,3 +217,11 @@ def _(record: DeleteEntity) -> str:
Capture information about the deleted Entity
"""
return f"{type(record.entity).__name__} [{record.entity.name.__root__}]"
@get_log_name.register
def _(record: OMetaLifeCycleData) -> str:
"""
Capture the lifecycle changes of an Entity
"""
return f"{type(record.entity).__name__} Lifecycle [{record.entity.name.__root__}]"