[SW-683] Fix starting H2OContext on Databricks #544
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
We are using internal Spark API available inside package
org.spark_project.jetty
to register new tabs, however this API(class) is not available on Databricks - they are using regular jetty for this inorg.eclipse.jetty
(this is even more complicated by the fact that we are shadowing the jetty)We have several options here:
org.spark_project.jetty
to assembly jar and Sparkling Water core dependencies so it's available on the Databricks and insparkling-water/core/src/main/scala/org/apache/spark/h2o/ui/SparklingWaterInfoPage.scala
Line 171 in 0c19d24
Also, we couldn't use features for downloading full and partial logs in case of Databricks since it's again using different paths and API for these handlers. So we can again disable obtaining logs on Databricks.
I have this PR prepared and tested, we can go with this variant, however, I prefer the version implemented in this PR which is 2)
The second option is definitely cleaner regarding the code and dependencies in spark assembly ( since we need to provide
org.apache.spark-core
to make thoseorg.spark_project
classes available and these classes might collide with the same classes in some environment`The first option is more ugly, however, gives at least basic Sparkling Water UI to DBC users.
I still prefer the simple variant implemented in this PR. We can always implement the first when there is demand for it until then, keep the code cleaner.
What do you think @mmalohlava, please?