Я использую Spark для запросов к Hive с последующими преобразованиями. Мое приложение Scala создает несколько приложений Spark. Новое приложение Spark создается только после закрытия SparkSession и Spark Context предыдущего приложения Spark.
Однако при остановке sc и spark соединения с Hive Metastore (Mysql) каким-то образом не уничтожаются должным образом. Для каждого приложения Spark я вижу около 5 создаваемых соединений Mysql (старые соединения все еще активны!). В конце концов, Mysql начинает отклонять новые соединения после 150 открытых соединений. Как я могу заставить spark закрыть соединения хранилища метаданных Hive с Mysql (после spark.stop() и sc.stop())?
Примечание. Я использовал Spark 2.1.1. Я использую Thriftserver Spark вместо HiveServer. Итак, я не думаю, что пользовался сервисом Hive Metastore.