I don't think *hive.server2.idle.session.timeout can be set via client. It
might need to be set on server side.*
*So before you run your query, you might need to restart HS2 with that
property set, but I'm not sure that's what you are looking for.*

On Sun, Nov 29, 2015 at 11:50 PM, reena upadhyay <reena2...@gmail.com>
wrote:

> I am using hive jdbc 1.0 in my java application to create connection with
> hive server and execute query. I want to set the idle hive connection
> timeout from java code. Like say, user first creates the hive connection,
> and if the hive connection remains idle for next 10 minutes, then this
> connection object should get expired. If user uses this same connection
> object after 10 minutes for executing query, then hive jdbc should throw
> error. Can you please tell me the way to achieve this through java code.
>
> I know there is a property *hive.server2.idle.session.timeout *in hive,
> but I don't know whether this is the right property required to be set from
> java code or there is some other property. I tried setting this property in
> jdbc connection string but it did not worked.
>
>         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);
>
> Now below I am using connection object, hive jdbc should throw error here
> as I used connection object after 3000 ms but I had set the idle timeout as
> 1000ms but hive jdbc had not thrown error
>
>             ResultSet rs = con.createStatement().executeQuery("select *
> from idw.emp");
>
> Need help on this.
>



-- 
Takahiko Saito

Reply via email to