Эх сурвалжийг харах

HUE-8057 [assist] Make sure table popularity cache is cleared for parents

This also fixes an issue with the popularity filter in the assist
Johan Ahlen 7 жил өмнө
parent
commit
25c9fbb

+ 9 - 2
desktop/core/src/desktop/static/desktop/js/assist/assistDbEntry.js

@@ -357,13 +357,20 @@ var AssistDbEntry = (function () {
       loadEntriesDeferred.resolve([]);
     };
 
-    if (!self.navigationSettings.rightAssist && HAS_OPTIMIZER && self.catalogEntry.isTable() && self.assistDbSource.sourceType !== 'solr') {
+    if (!self.navigationSettings.rightAssist && HAS_OPTIMIZER && (self.catalogEntry.isTable() || self.catalogEntry.isDatabase()) && self.assistDbSource.sourceType !== 'solr') {
       self.catalogEntry.loadNavOptPopularityForChildren({ silenceErrors: true }).done(function () {
         loadEntriesDeferred.done(function () {
           if (!self.hasErrors()) {
             self.entries().forEach(function (entry) {
               if (entry.catalogEntry.navOptPopularity) {
-                entry.popularity(entry.catalogEntry.navOptPopularity.columnCount)
+                if (entry.catalogEntry.navOptPopularity.popularity) {
+                  entry.popularity(entry.catalogEntry.navOptPopularity.popularity)
+                } else if (entry.catalogEntry.navOptPopularity.column_count) {
+                  entry.popularity(entry.catalogEntry.navOptPopularity.column_count)
+                } else if (entry.catalogEntry.navOptPopularity.selectColumn) {
+                  entry.popularity(entry.catalogEntry.navOptPopularity.selectColumn.columnCount);
+                }
+
               }
             });
 

+ 4 - 0
desktop/core/src/desktop/static/desktop/js/dataCatalog.js

@@ -653,6 +653,10 @@ var DataCatalog = (function () {
         invalidatePromise = $.Deferred().resolve().promise();
       }
 
+      if (self.definition && self.definition.navOptLoaded) {
+        delete self.definition.navOptLoaded;
+      }
+
       self.reset();
       var saveDeferred = cascade ? self.dataCatalog.clearStorageCascade(self.path) : self.save();