Ver Fonte

HUE-2212 [metastore] Memory can leak when getting a sample of data of a table

Romain Rigaux há 11 anos atrás
pai
commit
fb0615d
1 ficheiros alterados com 6 adições e 0 exclusões
  1. 6 0
      apps/beeswax/src/beeswax/server/dbms.py

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

@@ -348,12 +348,18 @@ class HiveServer2Dbms(object):
     handle = self.client.query(query)
     handle = self.client.query(query)
     curr = time.time()
     curr = time.time()
     end = curr + timeout_sec
     end = curr + timeout_sec
+
     while curr <= end:
     while curr <= end:
       state = self.client.get_state(handle)
       state = self.client.get_state(handle)
       if state not in (QueryHistory.STATE.running, QueryHistory.STATE.submitted):
       if state not in (QueryHistory.STATE.running, QueryHistory.STATE.submitted):
         return handle
         return handle
       time.sleep(sleep_interval)
       time.sleep(sleep_interval)
       curr = time.time()
       curr = time.time()
+
+    try:
+      self.cancel_operation(handle)
+    except:
+      self.close_operation(handle)
     return None
     return None