Я использую hive jdbc 1.0 в своем приложении java для создания соединения с сервером улья и выполнения запроса. Я хочу установить тайм-аут соединения в режиме ожидания с Java-кодом. Например, пользователь сначала создает соединение с улей, и если соединение с улей остается бездействующим в течение следующих 10 минут, то этот объект соединения должен быть истек. Если пользователь использует тот же объект соединения через 10 минут для выполнения запроса, то hive jdbc должен выдать ошибку. Не могли бы вы рассказать мне, как достичь этого с помощью java-кода.Как установить idle Hive jdbc соединение из java-кода с помощью hive jdbc
Я знаю, что в улье есть свойство hive.server2.idle.session.timeout
, но я не знаю, требуется ли это правильное свойство, которое необходимо установить из java-кода или есть другое свойство. Я попытался установить это свойство в строке подключения jdbc, но это не сработало.
try {
Class.forName("org.apache.hive.jdbc.HiveDriver");
} catch (ClassNotFoundException e) {
LOG.error(ExceptionUtils.getStackTrace(e));
}
String jdbcurl = "jdbc:hive2://localhost:10000/idw?hive.server2.idle.session.timeout=1000ms";
Connection con;
con = DriverManager.getConnection(jdbcurl,"root","");
Thread.sleep(3000);
Теперь ниже я использую объект соединения, улей JDBC должен бросить ошибку здесь, как я использовал объект подключения через 3000 мс, но я установить период ожидания, как 1000ms но улья JDBC не бросил ошибку
ResultSet rs = con.createStatement().executeQuery("select * from idw.emp");
Нужна помощь по этому вопросу.
Я использовал оба параметра конфигурации в строке подключения. Это не сработало. jdbc: hive2: //192.168.145.182: 10000 /; hive.server2.idle.session.timeout = 5000ms; hive.server2.session.check.interval = 4000ms –
@ReenaUpadhyay вы нашли для этого какое-то решение? Я прочитал эту ссылку, и она кажется полезной, но я еще не пробовал ее. Http://www.ericlin.me/how-to-configue-session-timeout-in-hive Кроме того, в моем случае мое искровое приложение убит после некоторого неопределенного интервала бездействия без какой-либо индикации журнала, и как только он будет запущен снова, мой сервер jboss не сможет снова подключиться к нему –