In Spark CLI, we create a hive CliSessionState and it does not load the hive-site.xml. So the configurations in hive-site.xml will not take effects like other spark-hive integration apps.
Also, the warehouse directory is not correctly picked. If the `default` database does not exist, the CliSessionState will create one during the first time it talks to the metastore. The `Location` of the default DB will be neither the value of spark.sql.warehousr.dir nor the user-specified value of hive.metastore.warehourse.dir, but the default value of hive.metastore.warehourse.dir which will always be `/user/hive/warehouse`.