Hi everyone, I am building a framework on top of Spark in which users specify sql queries and we analyze them in order to extract some metadata. Moreover, sql queries can be composed, meaning that if a user writes a query X to build a dataset, another user can use X in his own query to refer to it, and we will take care of substituting X with the right data at the right time. I am using sqlContext parsePlan to extract where conditions and source tables from a query. However, I saw that this component doesn't break if I write a syntatically wrong query; "select * from" is parsed correctly with no exception given. If I want to get syntatical errors it seems the only way to do so is using sqlContext.sql method. However, this method also checks for table existence and columns, which is something I don't want, since my framework logic might substitute this values at runtime.
Which approach do you suggest me to use? Is there a syntactical check in the spark codebase that I can use for my use case? *Alessandro Liparoti*