Browse Source

HUE-3450 [metadata] Allow empty Navigator search query to get all entities

Jenny Kim 9 years ago
parent
commit
80872119f0

+ 3 - 2
desktop/libs/metadata/src/metadata/navigator_api.py

@@ -62,8 +62,7 @@ def search_entities(request):
   offset = request.GET.get('offset', 0)
   limit = request.GET.get('limit', 100)
 
-  if not query_s:
-    raise MetadataApiException("search_entities requires query_s search string")
+  query_s = query_s.strip()
 
   entities = api.search_entities(query_s)
 
@@ -90,6 +89,8 @@ def find_entity(request):
   name = request.GET.get('name', '')
   path = request.GET.get('path', '')
 
+  # TODO: support arbitrary optional filter params
+
   if not entity_type:
     raise MetadataApiException("find_entity requires a type value, e.g. - 'database', 'table', 'file'")
 

+ 3 - 1
desktop/libs/metadata/src/metadata/navigator_client.py

@@ -76,7 +76,9 @@ class NavigatorApi(object):
       for term in search_terms:
         query_clauses.append('OR'.join(['(%s:*%s*)' % (field, term) for field in search_fields]))
 
-      filter_query = 'OR'.join(['(%s)' % clause for clause in query_clauses])
+      filter_query = '*.*'
+      if search_terms:
+        filter_query = 'OR'.join(['(%s)' % clause for clause in query_clauses])
 
       params += (
         ('query', filter_query),