Ver Fonte

HUE-8610 [tb] Make sure the created notebook for samples requests has the provided compute

Johan Ahlen há 7 anos atrás
pai
commit
22543b6

+ 1 - 0
apps/beeswax/src/beeswax/api.py

@@ -671,6 +671,7 @@ def _get_sample_data(db, database, table, column, async=False, cluster=None, ope
       notebook = make_notebook(
           name=_('Table sample for `%(database)s`.`%(table)s`.`%(column)s`') % {'database': database, 'table': table, 'column': column},
           editor_type=_get_servername(db),
+          compute=cluster.get('id') if cluster else None,
           statement=sample_data,
           status='ready-execute',
           skip_historify=True,

+ 4 - 2
desktop/core/src/desktop/static/desktop/js/apiHelper.js

@@ -1613,10 +1613,11 @@ var ApiHelper = (function () {
    *
    * @constructor
    */
-  var QueryResult = function (sourceType, response) {
+  var QueryResult = function (sourceType, compute, response) {
     var self = this;
     self.id = UUID();
     self.type = response.result.type || sourceType;
+    self.compute = compute;
     self.status = response.status || 'running';
     self.result = response.result || {};
     self.result.type = 'table';
@@ -1629,6 +1630,7 @@ var ApiHelper = (function () {
    * @param {boolean} [options.silenceErrors]
    *
    * @param {string} options.sourceType
+   * @param {ContextCompute} options.compute
    * @param {number} [options.sampleCount] - Default 100
    * @param {string[]} options.path
    * @param {string} [options.operation] - Default 'default'
@@ -1666,7 +1668,7 @@ var ApiHelper = (function () {
     }, {
       silenceErrors: options.silenceErrors
     }).done(function (sampleResponse) {
-      var queryResult = new QueryResult(options.sourceType, sampleResponse);
+      var queryResult = new QueryResult(options.sourceType, options.compute, sampleResponse);
 
       notebookJson = JSON.stringify({ type: options.sourceType });
       snippetJson = JSON.stringify(queryResult);

+ 1 - 1
desktop/libs/notebook/src/notebook/connectors/hiveserver2.py

@@ -473,7 +473,7 @@ class HS2Api(Api):
   def get_sample_data(self, snippet, database=None, table=None, column=None, async=False, operation=None):
     try:
       db = self._get_db(snippet, async, cluster=self.cluster)
-      return _get_sample_data(db, database, table, column, async, operation=operation)
+      return _get_sample_data(db, database, table, column, async, operation=operation, cluster=self.cluster)
     except QueryServerException, ex:
       raise QueryError(ex.message)