From 956a13f3f0281ee23c7d46b2017a39d2de056a8e Mon Sep 17 00:00:00 2001 From: mgorsk1 Date: Wed, 6 Aug 2025 20:21:09 +0200 Subject: [PATCH] feat: Enable ES Search for Databases (#19041) * :tada: Init * linter * bring back removed code for api collection * remove comment * fix type hint --------- Co-authored-by: Mayur Singal <39544459+ulixius9@users.noreply.github.com> --- ingestion/src/metadata/utils/fqn.py | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/ingestion/src/metadata/utils/fqn.py b/ingestion/src/metadata/utils/fqn.py index e29aad26110..1d4d908048c 100644 --- a/ingestion/src/metadata/utils/fqn.py +++ b/ingestion/src/metadata/utils/fqn.py @@ -230,15 +230,31 @@ def _( @fqn_build_registry.add(Database) def _( - _: Optional[OpenMetadata], # ES Search not enabled for Databases + metadata: Optional[OpenMetadata], *, service_name: str, database_name: str, -) -> str: + skip_es_search: bool = True, + fetch_multiple_entities: bool = False, +) -> Union[Optional[str], Optional[List[str]]]: + if not skip_es_search: + entity = search_database_from_es( + metadata, + database_name, + service_name, + fetch_multiple_entities=fetch_multiple_entities, + ) + + if entity and fetch_multiple_entities: + return [str(database.fullyQualifiedName.root) for database in entity] + if entity: + return str(entity.fullyQualifiedName.root) + if not service_name or not database_name: raise FQNBuildingException( f"Args should be informed, but got service=`{service_name}`, db=`{database_name}``" ) + return _build(service_name, database_name)