Github user zjffdu commented on the issue: https://github.com/apache/zeppelin/pull/2034 I think we don't need to differentiate Global/Per Note/Per User and/Per User + Impersonate. It should just close current session. And let `RemoteInterpreterProcess` to determinate whether to shut down the process. So that means for Global, there should be only one session, the process will be terminated if restart is invoked. And for `Per user`, it should only close current session, and will terminate the process if there's no session associated with the process (we can even make the process wait there for a while in case new session will be launched soon, but this is a another story). If the behavior is not what we expect, then there must be something wrong with `RemoteInterpreterProcess`. Currently we don't have a very clear and dedicated component for session management, `RemoteInterpreterProcess` and `InterpreterGroup` seems kind of session manager.
--- 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 infrastruct...@apache.org or file a JIRA ticket with INFRA. ---