You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@livy.apache.org by GitBox <gi...@apache.org> on 2019/01/15 20:59:06 UTC

[GitHub] meisam commented on a change in pull request #48: [LIVY-41] Let users access sessions by session name

meisam commented on a change in pull request #48: [LIVY-41] Let users access sessions by session name
URL: https://github.com/apache/incubator-livy/pull/48#discussion_r140117359
 
 

 ##########
 File path: server/src/main/scala/org/apache/livy/sessions/SessionManager.scala
 ##########
 @@ -92,13 +94,29 @@ class SessionManager[S <: Session, R <: RecoveryMetadata : ClassTag](
   def register(session: S): S = {
     info(s"Registering new session ${session.id}")
     synchronized {
-      sessions.put(session.id, session)
+      // in InteractiveSessionServlet.createSession() and BatchSessionServlet.createSession(),
+      // Livy checks to make sure another session with the same name does not exist already.
+      // This case should not happen rarely.
+      // already exists. But looking up a session name and adding it to the set of existing sessions
+      // should happen atomically.
+      if (sessionsByName.contains(session.name)) {
+        val msg = s"Session ${session.name} already exists!"
+        error(msg)
+        delete(session)
 
 Review comment:
   This is an example use case we have here. I'll ask Prabhu to provide more.
   
   Team AAA has an ETL pipeline everyday at 1pm. The pipeline is a chain of jobs that work on the same dataset. They want to create a session on Livy and use it to run the pipeline. They also want to push the metrics and stats of their pipeline to alerting and monitoring services.
   This PR allows them to access the session, manage it, and monitor it with a human readable name like team_aaa_daily_etl.

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services