<!--
Thanks for sending a pull request!
Here are some tips for you:
1. If this is your first time, please read our contributor guidelines: https://kyuubi.readthedocs.io/en/latest/community/contributions.html
2. If the PR is related to an issue in https://github.com/apache/incubator-kyuubi/issues, add '[KYUUBI #XXXX]' in your PR title, e.g., '[KYUUBI #XXXX] Your PR title ...'.
3. If the PR is unfinished, add '[WIP]' in your PR title, e.g., '[WIP][KYUUBI #XXXX] Your PR title ...'.
-->
### _Why are the changes needed?_
<!--
Please clarify why the changes are needed. For instance,
1. If you add a feature, you can talk about the use case of it.
2. If you fix a bug, you can clarify why it is a bug.
-->
Introduce a session-level configuration `operation.plan.only.mode` to change ExecuteStatement to PlanOnlyStatement,
PlanOnlyStatement will only parse, analyze or optimize the statements instead of executing them.
This feature could run all Spark SQLs to verify the semantic compatibility without having side effects, which is very useful for testing, migrating without query rewrite.
This is similar to the `explain` command
### _How was this patch tested?_
- [x] Add some test cases that check the changes thoroughly including negative and positive cases if possible
- [ ] Add screenshots for manual tests if appropriate
- [ ] [Run test](https://kyuubi.readthedocs.io/en/latest/develop_tools/testing.html#running-tests) locally before make a pull request
Closes#1060 from yaooqinn/1059.
Closes#1059
e0aa1060 [Kent Yao] [KYUUBI #1059] Add Plan Only Operations
4104aa42 [Kent Yao] [KYUUBI #1059] Add Plan Only Operations
aae52f26 [Kent Yao] [KYUUBI #1059] Add Plan Only Operations
575dbf8f [Kent Yao] [KYUUBI #1059] Add Plan Only Operations
Authored-by: Kent Yao <yao@apache.org>
Signed-off-by: Kent Yao <yao@apache.org>