Automatically terminating idle connections

You can automatically terminate sessions with clients that have been idle for a specified time by enabling the idle_user_timeout Scheduler task.

Before you begin

You must be connected to the sysadmin database as user informix or another authorized user.

About this task

To enable the idle_user_timeout task, run the following statement:
UPDATE ph_task
   SET tk_enable = 't'
   WHERE tk_name = 'idle_user_timeout';

By default, the idle_user_timeout task terminates user sessions that are idle for longer than 60 minutes. Sessions owned by user informix are not terminated. The idle_user_timeout task starts checking for idle sessions after two hours, which is the default frequency for the task.

Tip: When the system time changes on the database server computer, the amount of time user sessions have been idle is no longer accurate. For example, if a user session last did work at 3:14 PM and at 3:15 PM the system clock is moved forward by one hour, then to the database server, the user session has been idle for over an hour.

To change the idle timeout period, update the frequency of running the task and the value of the threshold. The shortest idle timeout period allowed is 5 minutes. For example, to change the timeout period to 5 minutes, run the following statements:

UPDATE ph_task 
  SET tk_frequency = INTERVAL (5) MINUTE TO MINUTE
  WHERE tk_name = 'idle_user_timeout';

UPDATE ph_threshold
   SET value = '5'
   WHERE task_name = 'idle_user_timeout';