Ver Fonte

[Hplsql] adding hplsql dialect (#2671)

Ayush Goyal há 3 anos atrás
pai
commit
23f02102d4

+ 1 - 1
apps/beeswax/src/beeswax/server/dbms.py

@@ -216,7 +216,7 @@ def get_query_server_config(name='beeswax', connector=None):
     else:
       kerberos_principal = get_hiveserver2_kerberos_principal(HIVE_SERVER_HOST.get())
       query_server = {
-          'server_name': 'beeswax',
+          'server_name': 'beeswax' if name != 'hplsql' else 'hplsql',
           'server_host': activeEndpoint["host"],
           'server_port': LLAP_SERVER_PORT.get() if name == 'llap' else HIVE_SERVER_PORT.get(),
           'principal': kerberos_principal,

+ 4 - 1
apps/beeswax/src/beeswax/server/hive_server2_lib.py

@@ -677,6 +677,9 @@ class HiveServerClient(object):
       if HPLSQL.get():
         kwargs['configuration'].update({'set:hivevar:mode': 'HPLSQL'})
 
+    if self.query_server['server_name'] == 'hplsql': # All the time
+      kwargs['configuration'].update({'hive.server2.proxy.user': user.username, 'set:hivevar:mode': 'HPLSQL'})
+
     if self.query_server['server_name'] == 'llap': # All the time
       kwargs['configuration'].update({'hive.server2.proxy.user': user.username})
 
@@ -997,7 +1000,7 @@ class HiveServerClient(object):
 
     # The query can override the default configuration
     configuration.update(self._get_query_configuration(query))
-    if HPLSQL.get() and self.query_server['server_name'] == 'beeswax':
+    if self.query_server['server_name'] == 'hplsql':
       query_statement = query.hql_query
     else:
       query_statement = query.get_query_statement(statement)

+ 4 - 0
desktop/conf.dist/hue.ini

@@ -991,6 +991,10 @@ tls=no
 #   name=Hive
 #   interface=hiveserver2
 
+# [[[hplsql]]]
+#   name=Hplsql
+#   interface=hiveserver2
+
 # [[[llap]]]
 #   name=LLAP
 #   interface=hiveserver2

+ 4 - 0
desktop/conf/pseudo-distributed.ini.tmpl

@@ -974,6 +974,10 @@
     #   name=Hive
     #   interface=hiveserver2
 
+    # [[[hplsql]]]
+    #   name=Hplsql
+    #   interface=hiveserver2
+
     # [[[llap]]]
     #   name=LLAP
     #   interface=hiveserver2

+ 1 - 1
desktop/core/src/desktop/js/parse/utils.ts

@@ -19,7 +19,7 @@ import hplsqlStatementsParser from 'parse/hplsqlStatementsParser';
 import sqlStatementsParser from 'parse/sqlStatementsParser';
 
 export const getStatementsParser = (connector: Connector): any => {
-  if (connector.dialect === 'hive' && window.HPLSQL) {
+  if (connector.dialect === 'hplsql') {
     return hplsqlStatementsParser;
   } else {
     return sqlStatementsParser;

+ 2 - 0
desktop/libs/notebook/src/notebook/connectors/hiveserver2.py

@@ -796,6 +796,8 @@ DROP TABLE IF EXISTS `%(table)s`;
       name = 'llap'
     elif dialect == 'impala':
       name = 'impala'
+    elif dialect == 'hplsql':
+      name = 'hplsql'
     else:
       name = 'sparksql'