Jelajahi Sumber

[beeswax] Close Beeswax queries

Romain Rigaux 11 tahun lalu
induk
melakukan
2193d9d451

+ 5 - 5
apps/beeswax/src/beeswax/management/commands/close_queries.py

@@ -19,7 +19,7 @@ from django.core.management.base import BaseCommand
 
 from datetime import datetime,  timedelta
 
-from beeswax.models import QueryHistory, HiveServerQueryHistory
+from beeswax.models import QueryHistory, BeeswaxQueryHistory
 from beeswax.server import dbms
 
 
@@ -42,10 +42,10 @@ class Command(BaseCommand):
     self.stdout.write('Closing (all=%s) HiveServer2/Impala queries older than %s days...\n' % (close_all, days))
 
     n = 0
-    queries = HiveServerQueryHistory.objects.filter(last_state__in=[QueryHistory.STATE.expired.index, QueryHistory.STATE.failed.index, QueryHistory.STATE.available.index])
+    queries = BeeswaxQueryHistory.objects.filter(last_state__in=[QueryHistory.STATE.expired.index, QueryHistory.STATE.failed.index, QueryHistory.STATE.available.index])
 
     if close_all:
-      queries = HiveServerQueryHistory.objects.all()
+      queries = BeeswaxQueryHistory.objects.all()
 
     queries = queries.filter(submission_date__lte=datetime.today() - timedelta(days=days))
 
@@ -61,7 +61,7 @@ class Command(BaseCommand):
 
     for query in queries:
       try:
-        query_history = HiveServerQueryHistory.objects.get(id=query.id)
+        query_history = BeeswaxQueryHistory.objects.get(id=query.id)
         if query_history.server_id is not None:
           handle = query_history.get_handle()
           dbms.get(user=query_history.owner).close_operation(handle)
@@ -69,7 +69,7 @@ class Command(BaseCommand):
         query.last_state = QueryHistory.STATE.expired.index
         query.save()
       except Exception, e:
-        if 'Invalid OperationHandle' in str(e):
+        if 'None' in str(e):
           query.last_state = QueryHistory.STATE.expired.index
           query.save()
         else:

+ 0 - 3
apps/beeswax/src/beeswax/server/dbms.py

@@ -151,9 +151,6 @@ class HiveServer2Dbms(object):
 
 
   def close_operation(self, query_handle):
-    if self.server_type == BEESWAX:
-      raise PopupException(_('%s interface does not support close_operation. %s interface does.') % (BEESWAX, HIVE_SERVER2))
-
     return self.client.close_operation(query_handle)
 
   def open_session(self, user):