Details
Description
During some concurrency testing with an interactive session, I got the following response back:
{{
{"id":0,"state":"available","output":null}}}
The issue is related to the following code in InteractiveSessionServlet.scala, which assumes the statement result will be available within 100 milliseconds:
InteractiveSessionServlet.scala
val output = try { Await.result(statement.output(), Duration(100, TimeUnit.MILLISECONDS)) } catch { case _: TimeoutException => null }
Workaround is simple: retry the statement REST call until the output is not null.