Bonjour à tous.
Oracle ne fait pas ce que je veux sur le nettoyage de session quand j'utilise le paramètre SQLNET.EXPIRE_TIME dans le fichier sqlnet.ora.
Base Oracle 9.2.0.4 / Système Linux.
Le test : mon client sur une autre machine (Tomcat) crée un pool de connexions.
Une fois les connexions initialisées, je débrache le cable réseau de la machine cliente.
J'ai positionné le SQLNET.EXPIRE_TIME = 1 (pour les tests).
J'ai activé les logs des transactions, voilà ce que je vois dans le début de la la log svr_XXX.trc
Par contre ensuite je ne vois jamais les traces qui indique que Oracle envoie un 'packet probe' au bout de une minute (SQLNET.EXPIRE_TIME).[06-MAY-2008 06:38:11:690] -> PARAMETER TABLE LOAD RESULTS FOLLOW <-
[06-MAY-2008 06:38:11:690] Successful parameter table load
[06-MAY-2008 06:38:11:690] -> PARAMETER TABLE HAS THE FOLLOWING CONTENTS <-
[06-MAY-2008 06:38:11:690] SQLNET.EXPIRE_TIME = 1
[06-MAY-2008 06:38:11:690] TRACE_LEVEL_SERVER = 16
[06-MAY-2008 06:38:11:690] NAMES.DIRECTORY_PATH = (HOSTNAME)
[06-MAY-2008 06:38:11:690] TRACE_DIRECTORY_SERVER = /u01/app/oracle/product/9i/db_1/network/admin/logs
....
Oracle ne nettoie donc pas les sessions (INACTIVE) mais dont le client n'est plus joignable.
Quelqu'un aurait une piste pour que ce paramètre SQLNET.EXPIRE_TIME fasse son boulot ???
Merci merci.
Partager