[ZEPPELIN-4280] Fix an issue that makes an infinite loop while switching the visualizations
### What is this PR for?
Fix an issue that makes an infinite loop while switching the visualizations.
An infinite loop occurs because the front-end web application tries to commit the paragraph even if there are no changes in the visualization configuration.
### What type of PR is it?
Bug Fix
### What is the Jira issue?
https://issues.apache.org/jira/browse/ZEPPELIN-4280
### How should this be tested?
If you switch quickly between different visualizations multiple times, the infinite loops should not happen.
### Screenshots (if appropriate)
### Questions:
* Does the licenses files need update? No
* Is there breaking changes for older versions? No
* Does this needs documentation? No
Author: Jaewon Seo <jaewon@zepl.com>
Closes #3414 from Byeol/ZEPPELIN-4280 and squashes the following commits:
d49d36ac1 [Jaewon Seo] Commit the paragraph only if there are changes in the visualization configuration
(cherry picked from commit be7ace1f5e84c7a5989b4d5882cbf759de34112d)
Signed-off-by: Lee moon soo <moon@apache.org>
diff --git a/zeppelin-web/src/app/notebook/paragraph/result/result.controller.js b/zeppelin-web/src/app/notebook/paragraph/result/result.controller.js
index 517fcbe..1723e7e 100644
--- a/zeppelin-web/src/app/notebook/paragraph/result/result.controller.js
+++ b/zeppelin-web/src/app/notebook/paragraph/result/result.controller.js
@@ -802,6 +802,9 @@
newConfig.graph.values = newConfig.graph.commonSetting.pivot.values;
delete newConfig.graph.commonSetting.pivot;
}
+ if (angular.equals($scope.config, newConfig)) {
+ return;
+ }
console.debug('committVizConfig', newConfig);
let newParams = angular.copy(paragraph.settings.params);
commitParagraphResult(paragraph.title, paragraph.text, newConfig, newParams);