Kaynağa Gözat

[notebook] Standardize fetch_result api to accept a request argument

Romain Rigaux 5 yıl önce
ebeveyn
işleme
05a6ae764d

+ 3 - 4
desktop/libs/notebook/src/notebook/api.py

@@ -315,15 +315,14 @@ def fetch_result_data(request):
       snippet['result']['handle']['guid'] if snippet['result'].get('handle') and snippet['result']['handle'].get('guid') else None
     )
 
-    response = _fetch_result_data(request.user, notebook, snippet, operation_id, rows=rows, start_over=start_over)
+    response = _fetch_result_data(request, notebook, snippet, operation_id, rows=rows, start_over=start_over)
     response['status'] = 0
 
     return JsonResponse(response)
 
 
-def _fetch_result_data(user, notebook=None, snippet=None, operation_id=None, rows=100, start_over=False, nulls_only=False):
-  snippet = _get_snippet(user, notebook, snippet, operation_id)
-  request = MockRequest(user)
+def _fetch_result_data(request, notebook=None, snippet=None, operation_id=None, rows=100, start_over=False, nulls_only=False):
+  snippet = _get_snippet(request.user, notebook, snippet, operation_id)
 
   response = {
     'result': get_api(request, snippet).fetch_result(notebook, snippet, rows, start_over)

+ 3 - 3
desktop/libs/notebook/src/notebook/connectors/base.py

@@ -313,7 +313,7 @@ class Notebook(object):
       if handle['status'] == 0 and handle['query_status']['status'] not in ('waiting', 'running'):
         if include_results and handle['query_status']['status'] == 'available':
           handle.update(
-            self.fetch_result_data(request.user, operation_id=operation_id)
+            self.fetch_result_data(request, operation_id=operation_id)
           )
           # TODO: close
         return handle
@@ -341,10 +341,10 @@ class Notebook(object):
 
     return _check_status(request, operation_id=operation_id)
 
-  def fetch_result_data(self, user, operation_id):
+  def fetch_result_data(self, request, operation_id):
     from notebook.api import _fetch_result_data
 
-    return _fetch_result_data(user, operation_id=operation_id, rows=100, start_over=False, nulls_only=True)
+    return _fetch_result_data(request, operation_id=operation_id, rows=100, start_over=False, nulls_only=True)
 
 
 def get_interpreter(connector_type, user=None):