Răsfoiți Sursa

HUE-7248 [adls] fix upload hdfs root

jdesjean 8 ani în urmă
părinte
comite
2d83597bf5

+ 4 - 1
desktop/core/src/desktop/lib/fs/proxyfs.py

@@ -53,8 +53,11 @@ class ProxyFS(object):
   def _has_access(self, fs):
     from desktop.auth.backend import rewrite_user  # Avoid cyclic loop
     try:
-      user = rewrite_user(User.objects.get(username=self.user))
       filebrowser_action = fs.filebrowser_action()
+      #if not filebrowser_action (hdfs) then handle permission via doas else check permission in hue
+      if not filebrowser_action:
+        return True
+      user = rewrite_user(User.objects.get(username=self.user))
       return user.is_authenticated() and user.is_active and (user.is_superuser or not filebrowser_action or user.has_hue_permission(action=filebrowser_action, app="filebrowser"))
     except User.DoesNotExist:
       LOG.exception('proxyfs.has_access()')

+ 2 - 2
desktop/core/src/desktop/static/desktop/ext/js/fileuploader.js

@@ -1216,11 +1216,11 @@ qq.extend(qq.UploadHandlerXhr.prototype, {
     getName: function(id){
         var file = this._files[id];
         // fix missing name in Safari 4
-        return file.fileName != null ? file.fileName : file.name;
+        return file && (file.fileName || file.name);
     },
     getSize: function(id){
         var file = this._files[id];
-        return file.fileSize != null ? file.fileSize : file.size;
+        return file && (file.fileSize || file.size);
     },
     /**
      * Returns uploaded bytes for file identified by id

+ 1 - 1
desktop/core/src/desktop/static/desktop/js/apiHelper.js

@@ -397,7 +397,7 @@ var ApiHelper = (function () {
    */
   ApiHelper.prototype.fetchHdfsPath = function (options) {
     var self = this;
-    if (options.pathParts.length > 0 && options.pathParts[0] === '') {
+    if (options.pathParts.length > 0 && (options.pathParts[0] === '/' || options.pathParts[0] === '')) {
       options.pathParts.shift();
     }
     var url = HDFS_API_PREFIX + options.pathParts.join("/") + '?format=json&sortby=name&descending=false&pagesize=' + (options.pageSize || 500) + '&pagenum=' + (options.page || 1);