I am working on an application that has a function that can not be accessed by more than one machine at the same time. I thought of making a control through the V $ session view because if the machine was unexpectedly turned off, the function would not be blocked because the registry would be automatically deleted.
However, I noticed that in some situations the registry remains even after the station is turned off.
Is there any other way to check if the session is actually active?
Thanks
View V $ Session - Registration Expiration
- stcoutinho
- Moderador
- Posts: 850
- Joined: Wed, 11 May 2011 5:15 pm
- Location: são Paulo - SP
andfercoq,
I am responding to this old topic still open, in the case of other forists to come across the same problem.
Sometimes a session can end unexpectedly and Oracle continues to keep the record of this session in V $ session, even with the PMON process acting. This problem was very common to occur in Windows, but can also occur on systems such as UNIX and Linux. An "unofficial" explanation that I received for this problem at UNIX is that in Oracle, the session points to a process of the operating system that does not exist anymore, which prevents it from effectively killing the process in the database as a whole.
One way to automatically detect these dead sessions would be to configure the listener's sqlnet.ora file, specifically the "sqlnet_expire_time" parameter, which indicates the maximum time in minutes that one session can Stay inactive. But you would need to test in an environment aside to verify if problems occur with your application or "increase in network traffic".
Below, some links dealt with this theme:
[[0] http://www.dba-oracle.com/t_sqlnet_expire_time.htm http://docs.oracle.com/cd/B19306_01/net ... sqlnet.htm http://www.oracle-base.com/articles/mis ... ssions.php http://asktom.oracle.com/pls/asktom/f?p ... 4142376742
Hugs,
Sergio Coutinho
I am responding to this old topic still open, in the case of other forists to come across the same problem.
Sometimes a session can end unexpectedly and Oracle continues to keep the record of this session in V $ session, even with the PMON process acting. This problem was very common to occur in Windows, but can also occur on systems such as UNIX and Linux. An "unofficial" explanation that I received for this problem at UNIX is that in Oracle, the session points to a process of the operating system that does not exist anymore, which prevents it from effectively killing the process in the database as a whole.
One way to automatically detect these dead sessions would be to configure the listener's sqlnet.ora file, specifically the "sqlnet_expire_time" parameter, which indicates the maximum time in minutes that one session can Stay inactive. But you would need to test in an environment aside to verify if problems occur with your application or "increase in network traffic".
Below, some links dealt with this theme:
[[0] http://www.dba-oracle.com/t_sqlnet_expire_time.htm http://docs.oracle.com/cd/B19306_01/net ... sqlnet.htm http://www.oracle-base.com/articles/mis ... ssions.php http://asktom.oracle.com/pls/asktom/f?p ... 4142376742
Hugs,
Sergio Coutinho
-
- Information
-
Who is online
Users browsing this forum: No registered users and 16 guests