Github user doanduyhai commented on the pull request:
https://github.com/apache/incubator-zeppelin/pull/745#issuecomment-207546826
Hello @Leemoonsoo
Thank for raising question about the 3 types of variables.
My though is that Angular Variables should be merged/replaced by
ResourcePool. Indeed the Angular Object scope is not very intuitive. It is
first scoped by **interpreter group** then by note/paragraph.
Removing Angular Object to use Resource Pool is a good idea but there is
still one pending issue: angular value watcher. As you know people can assign a
watcher function in the back-end on Angular value. If we want to replace
Angular objects by Resource Pool, we need to provide similar feature, unless
you think we can completely drop this watcher feature ...
Another point to take into account is the **migration path**. For all
people that have saved their notes as JSON with saved Angular objects, we need
to handle the migration to Resource pool when the re-import those notes.
About the Dynamic Form system I don't think we should merge it with Angular
Object/Resource Pool. Dynamic Form values are just an alias to automatically
generate a form input. And the fact that its value change triggers the
execution of the current paragraph can be implemented using `z.runParagraph()`
Angular function that is now available.
All in all I think we should ultimately have enhanced Resource Pool and
Dynamic Form only.
But those changes are very big and deserve another JIRA epic. For now, we
can just implement this overriding system for this PR and then when we refactor
the Angular JS to Resource Pool, we will merge the behavior together
WDYT ?
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---