[ https://issues.apache.org/jira/browse/SPARK-2106?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14028233#comment-14028233 ]
Michael Armbrust commented on SPARK-2106: ----------------------------------------- Regarding the first point, I actually think its pretty reasonable for the SharkCLI to extend HiveContext and just override these things as needed. This is pretty special case stuff that normal applications should not have to deal with. Regarding the second point, I'm not sure what you mean. queryExecution in a SchemaRDD is marked as a DeveloperApi, but should be available for use here. For exceptions, can we just catch whatever exceptions are thrown by hql(...).collect() and display that to the user? > Unify the HiveContext > --------------------- > > Key: SPARK-2106 > URL: https://issues.apache.org/jira/browse/SPARK-2106 > Project: Spark > Issue Type: Improvement > Components: SQL > Reporter: Cheng Hao > > I've been working on CLI for Catalyst, and from the CLI point of view, > HiveContext may be required some changes as: > - SessionState management > `SessionState` instance creation & initialization should be done within the > wrappers, e.g. in `SharkCliDriver` or `CLIService` etc. cause they know > better how to load the user configuration and logger redirection etc. And in > HiveContext, it can retrieve SessionState by calling `SessionState.get()`. > - HiveContext API may not be enough for CLI > 1) Retrieving the schema from the output of `SELECT`; but the internal class > `QueryExecution` is hidden for CLI. > 2) Retriveing the HQL result in CLI, besides the string based result, CLI > also need to know the error code, as well as the call stack if exceptions > thrown. -- This message was sent by Atlassian JIRA (v6.2#6252)