浏览代码

HUE-6077 [editor] Simplify listing of db.table in autocomplete for column

Romain Rigaux 8 年之前
父节点
当前提交
b852862

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

@@ -316,6 +316,20 @@ FROM
 
 
     resp = self.api.query_risk(query=query, source_platform=source_platform, db_name='default')
     resp = self.api.query_risk(query=query, source_platform=source_platform, db_name='default')
     _assert_risks(['Cartesian or CROSS join found.'], resp['hints'])
     _assert_risks(['Cartesian or CROSS join found.'], resp['hints'])
+    
+    source_platform = 'hive'
+    query = '''SELECT s07.description,
+s07.total_emp,
+s08.total_emp,
+s07.salary
+FROM sample_07 s07,
+sample_08 s08
+WHERE s07.salary > 88
+ORDER BY s07.salary DESC
+'''
+
+    resp = self.api.query_risk(query=query, source_platform=source_platform, db_name='default')
+    _assert_risks(['Cartesian or CROSS join found.'], resp['hints'])
 
 
 
 
   def test_risk_5_joins(self):
   def test_risk_5_joins(self):
@@ -380,7 +394,6 @@ GROUP BY account_client,
 
 
 
 
   def test_risk_cross_join_false_positive(self):
   def test_risk_cross_join_false_positive(self):
-
     source_platform = 'hive'
     source_platform = 'hive'
     query = '''SELECT s07.description, s07.total_emp, s08.total_emp, s07.salary
     query = '''SELECT s07.description, s07.total_emp, s08.total_emp, s07.salary
 FROM
 FROM
@@ -399,6 +412,13 @@ LIMIT 1000
     _assert_risks(['Cartesian or CROSS join found.'], resp['hints'], present=False)
     _assert_risks(['Cartesian or CROSS join found.'], resp['hints'], present=False)
 
 
 
 
+    source_platform = 'hive'
+    query = '''select x from x join y where x.a = y.a'''
+
+    resp = self.api.query_risk(query=query, source_platform=source_platform, db_name='default')
+    _assert_risks(['Cartesian or CROSS join found.'], resp['hints'], present=False)
+
+
   def test_risk_no_filter_on_any_partitioned_column(self):
   def test_risk_no_filter_on_any_partitioned_column(self):
     source_platform = 'hive'
     source_platform = 'hive'
     query = '''SELECT * FROM web_logs'''
     query = '''SELECT * FROM web_logs'''

+ 1 - 2
desktop/libs/notebook/src/notebook/templates/hue_ace_autocompleter.mako

@@ -97,8 +97,7 @@ from desktop.views import _ko
       <div class="autocompleter-header"><i class="fa fa-fw fa-columns"></i> <span data-bind="text: details.name"></span></div>
       <div class="autocompleter-header"><i class="fa fa-fw fa-columns"></i> <span data-bind="text: details.name"></span></div>
       <div class="autocompleter-details-contents">
       <div class="autocompleter-details-contents">
         <div class="autocompleter-details-contents-inner">
         <div class="autocompleter-details-contents-inner">
-          <div class="details-attribute" ><i class="fa fa-database fa-fw"></i> <span data-bind="text: details.database"></span></div>
-          <div class="details-attribute" ><i class="fa fa-table fa-fw"></i> <span data-bind="text: details.table"></span></div>
+          <div class="details-attribute" ><i class="fa fa-table fa-fw"></i> <span data-bind="text: details.database"></span>.<span data-bind="text: details.table"></span></div>
           <!-- ko if: typeof details.primary_key !== 'undefined' && details.primary_key === 'true' -->
           <!-- ko if: typeof details.primary_key !== 'undefined' && details.primary_key === 'true' -->
           <div class="details-attribute" ><i class="fa fa-key fa-fw"></i> ${ _('Primary key') }</div>
           <div class="details-attribute" ><i class="fa fa-key fa-fw"></i> ${ _('Primary key') }</div>
           <!-- /ko -->
           <!-- /ko -->