Hi, I'm wondering whether there are any best practices around restarting a user's interpreter group. (E.g. the whole set of sessions for that user, but not sessions for other users.)
Here's the problem I want to solve: - We are primarily using Zeppelin for the spark interpreter. Because each user has a number of notebooks, it seemed like a good idea to pool spark sessions per user so we did that by setting spark interpreter to user isolated, note scoped. - Periodically, a user's spark session will crash for whatever reason. Here's the possible solutions that I can think of. We're currently using 1a. (1) Within existing interpreter mode a. Restart the spark interpreter from the interpreter menu. This restarts it for ~30 users, so it's inconvenient to do often. b. Track down all of a user's notebooks, and restart the spark interpreter in each notebook. (2) Considering switching interpreter modes a. User isolated, note isolated -- our biggest concern with this is just the number of spark sessions that would get generated. Maybe this would play well with lifecycle management? b. User isolated -- seems a little bad for users because a variable updated in one note would overwrite the same variable in another note. (3) Work on a change to Zeppelin, assuming this feature doesn't exist yet a. In the interpreter menu, we can have the restart option ask whether to restart the interpreter only for the user or globally? Or maybe it only makes sense to allow to restarting it for the user? It seems like there's a more major undertaking for https://issues.apache.org/jira/browse/ZEPPELIN-1338 so I don't want to conflict with that direction. Have other people run into this problem? Are there solution options I'm missing? What option have you chosen? Thank you! Dima