Эх сурвалжийг харах

HUE-6132 [optimizer] Provide the SQL type to the recommendation call

Romain Rigaux 8 жил өмнө
parent
commit
d193d5a

+ 2 - 1
desktop/libs/metadata/src/metadata/optimizer_api.py

@@ -171,10 +171,11 @@ def query_risk(request):
   response = {'status': -1}
 
   query = json.loads(request.POST.get('query'))
+  source_platform = request.POST.get('sourcePlatform')
 
   api = OptimizerApi()
 
-  data = api.query_risk(query=query)
+  data = api.query_risk(query=query, source_platform=source_platform)
 
   if data:
     response['status'] = 0

+ 2 - 2
desktop/libs/metadata/src/metadata/optimizer_client.py

@@ -155,8 +155,8 @@ class OptimizerApi(object):
     return self._call('getQueryCompatible', {'tenant' : self._product_name, 'query': query, 'sourcePlatform': source_platform, 'targetPlatform': target_platform, })
 
 
-  def query_risk(self, query, page_size=100, startingToken=None):
-    return self._call('getQueryRisk', {'tenant' : self._product_name, 'query': query, 'pageSize': page_size, startingToken: None})
+  def query_risk(self, query, source_platform, page_size=100, startingToken=None):
+    return self._call('getQueryRisk', {'tenant' : self._product_name, 'query': query, 'sourcePlatform': source_platform, 'pageSize': page_size, startingToken: None})
 
 
   def similar_queries(self, source_platform, query, page_size=100, startingToken=None):

+ 1 - 1
desktop/libs/metadata/src/metadata/optimizer_client_tests.py

@@ -180,7 +180,7 @@ class TestOptimizerApi(object):
   def test_query_risk(self):
     query = 'Select * from (Select item.id from item)'
 
-    resp = self.api.query_risk(query=query)
+    resp = self.api.query_risk(query=query, source_platform='hive')
 
     assert_equal('success', resp['status'], resp)
 

+ 1 - 1
desktop/libs/notebook/src/notebook/connectors/hiveserver2.py

@@ -533,7 +533,7 @@ DROP TABLE IF EXISTS `%(table)s`;
 
     api = OptimizerApi()
 
-    data = api.query_risk(query=query)
+    data = api.query_risk(query=query, source_platform=snippet['type'])
     data = data.get(snippet['type'] + 'Risk', {})
 
     if data and data == {"riskAnalysis": "", "risk": "low", "riskRecommendation": ""}: