Inactive sessions of oracle consume resources?

We Red Hat and Data Base Oracle 10g.
Gracias y saludos.

Please define 'inactive session'.
I see several possible definitions. A few of the more likely include:
- a session that is still connected to the end client, and therefore prepared to perform some work and therefore will consume resources
- a session that has been forcibly disconnected and is rolling back or waiting to roll back, and is therefore consuming resources
- a Linux or Unix zombie session, which may still hold memory but no CPU cycles
Depending on the tools used to report the information, the SGA memory may be reported again and again for each session's process. This can cause some alarming interpretations.

Similar Messages

  • INACTIVE SESSIONS GROWING

    1. 9.2.0.4 - 64bit (MTS) (DB-A)
    2. 10.2.0.2.0 - 64 bit (DB-B)
    3. 10.2.0.2.0 - 64 bit (DB-C)
    We are having a process which starts with a trigger on a table in DB-A,
    The code in Trigger calls to a procedure which inturn access tables of user X
    in DB-C through DB link, and a procedure of user Y in DB-B through DB-Link
    connecting to user Z in DB-B.
    While doing this process some of the sessions originated from DB-A to DB-B and
    DB-C becomes Inactive and the number of Inactive sessions keep growing
    consuming memory.
    Thanks
    JD

    Hi,
    >>becomes Inactive...
    Maybe you should investigate and query the V$SESSION_WAIT view in order to displays the events for which these inactive sessions have just completed waiting or are currently waiting. The other view V$SYSTEM_EVENT displays the total number of times all the sessions have waited for the events in that view.
    Take a look on this doc below for more information:
    Oracle Wait Events
    http://download-east.oracle.com/docs/cd/B19306_01/server.102/b14237/waitevents.htm#REFRN101
    Cheers

  • Oracle 10.2.0.4.0 Production Server is having 1900 INACTIVE SESSIONS

    Dear ALL,
    We are facing an issue of 1900 INACTIVE SESSIONS in our Production Environment which is leading another ISSUE SWAP USAGE is high, as we have 16GB RAM and SGA Target is 4GB PGA Target is 1.7GB and shared memory segment is 6GB but normaly after a week swap goes to 8 to 9GB and it does not come down afterwards. We have not set any session expiry time or not set USER PROFILE for resource LIMITS usage.
    can some help us to solve the 1900 INACTIVE SESSIONS issue and this SWAP usage.
    Oracle version: 10.2.0.4.0
    OS: RHEL ES4
    RAM: 16 GB
    thanks in Advance

    hi Antonio,
    i appreciate your comment on my query it has helped us a lot to further debug the issue and now we are able to trace the INACTIVE SESSIONS issue accurately.
    and we brought down the no of sessions earlier it was set to 200 per node for connection pool for 8 nodes that was not really required.
    thank you very much for this good clue

  • Lots of Inactive perl sessions in Oracle 10g r2 on Debian Linux 64 bit

    Hi,
    There are lots of Inactive perl session in Oracle 10g release 2 10.2.0.3.0 on Debian Linux 64 bit, is it normal
    ps aux|grep oracle is showing following in processes of perl
    /home/u01/app/oracle/product/10.2.0/database1/perl/bin/perl /home/u01/app/oracle/product/10.2.0/database1 /sysman/admin/scripts/db/dbarchfull.pl

    Hi,
    There are lots of Inactive perl session in Oracle 10g release 2 10.2.0.3.0 on Debian Linux 64 bit, is it normal
    ps aux|grep oracle is showing following in processes of perl
    /home/u01/app/oracle/product/10.2.0/database1/perl/bin/perl /home/u01/app/oracle/product/10.2.0/database1 /sysman/admin/scripts/db/dbarchfull.pl

  • What is Consumer resource group ,ORacle services?

    Hi,
    Could any one can explain what is Consumer resource group and Oracle Services.??
    Thanks,
    Nats

    Hi Mohamed,
    To answer your questions:
    Q: What is parent resouce ID?
    ANS: In your data, you may have some tasks that are associated with another task i.e. child tasks of a parent task. That association would need to be held in a column of your database table, for example PARENT_ID. The value held in the PARENT_ID column would be the ID of the parent task that the current task is associated with. For example, on this page - http://apex.oracle.com/pls/apex/f?p=36648:86 - you can see that the 2nd task, "Update Application Wizard", is a child of the parent node "Charts Integration", and that association is based upon the value stored in the PARENT_ID column of my sample table.
    Q: Is it also mandatory? Can I create a gantt chart without it?
    ANS: No, it is not mandatory. However, the syntax of the query must include PARENT_ID, which you can of course set to NULL, as you can see in the following example:
    SELECT NULL LINK,
           RESOURCE_ID ID,
           TASK_NAME NAME,
           NULL PARENT_ID,
           START_DATE ACTUAL_START,
           END_DATE ACTUAL_END
    FROM   TASKS Below is another sample query, where you can see the PARENT_ID is being set. In this case, we want to represent a hierarchical task list
    SELECT 'f?p=4000:2:'||:APP_SESSION||':::P2_ID:'||ID LINK
           RESOURCE_ID ID,
           RESOURCE_NAME NAME,
           PARENT_ID PARENT_ID,
           START_DATE ACTUAL_START,
           END_DATE ACTUAL_END
    FROM   TASKSI hope this helps to clarify things.
    Regards,
    Hilary

  • HIgh Inactive sessions

    Hi,
    We are facing a problem of lot of inactive sessions consuming huge resources. We have setup connection pooling from weblogic application and connection timout and resuse parameters have been setup from application side for connection pooling. And we still find high inactive sessions which are not getting released even after application user closes the session properly. What might be the work around for this as we facing this for last one week.
    Oracle 10.2.0.3.0 on solaris box.
    regards
    Jaffy

    Jaffy wrote:
    Hi,
    We are facing a problem of lot of inactive sessions consuming huge resources. We have setup connection pooling from weblogic application and connection timout and resuse parameters have been setup from application side for connection pooling. And we still find high inactive sessions which are not getting released even after application user closes the session properly. What might be the work around for this as we facing this for last one week.
    Oracle 10.2.0.3.0 on solaris box.
    regards
    JaffyHi Jaffy,i suggest you have to configure profile for oracle users.For example if you user will inactive 10 minute then can oracle automatically kill this session.For this you can create profile as:
    create profile test_prof limit idle_time 10;
    alter user <user> profile test_prof;
    /*but first you need change resource limit*/
    alter system set resource_limit=true;

  • Inactive sessions in v$session

    Hi,
    why there are so many apps user inactive sessions in v$session?
    Regards

    Hi Hussein,
    The process which are arctive are shown as inactive in v$session view,We cannot trust the status column of this view,By default as soon the apps is started the oracle is creating around 82 to 85 apps processes which are inactive but i think they are active.
    The option referenced above is a good one to follow in this situation
    A discussion of Dead Connection Detection, Resource Limits, V$SESSION, V$PROCESS and OS processes
    Thanks Hussein and Anchorage
    Regards

  • Inactive sessions in v$session.  True problem

    Hi,
    I am working in an Oracle 9i/Weblogic/J2EE platform. And when i look for session info in v$session view, i see that there are many sessions that have a status "Inactive". I already figured out what it means- the session is ACTIVE when it is doing an SQL query at the time and the session is INACTIVE when it is not doing an SQL query at that particular moment.
    But i have questions:
    1) If a client logs in to my webapplication and does a SQL query- then the sessions status is ACTIVE. After that, when the client just leaves (logs out just closes the browser) then Oracle marks that connection as 'INACTIVE'- Oracle does not KILL that session.
    Ok let that be, but can another client then log in to my webapplication (from different computer) and get that same INACTIVE connection and start to use it?? If not, then these "abandoned" connection are truly useless, because they still use ORACLE resources (memory).
    2)Another thing is that there are many INACTIVE sessions in v$session that have a name "plsqldev.exe" in PROGRAM column. That is a database client that i use to connect directly to my DB. But basicly i have only one PL/SQL program with one SQL query window open (this session is marked ACTIVE in v$session). So are these other 10 INACTIVE "plsqldev.exe" sessions meant for new plsql clients that may start to use the database or can only that particular user for whom the session was created at first place use that session?
    And finally- sessions that are INACTIVE and have "plsqldev.exe" as a PROGRAM in v$session - is there any chance that a client logs in to webapplication and then gets that INACTIVE session?
    If not, then these 10 INACTIVE plsqldev sessions (allthough the user has maybe shut down the program) are wasteless for webapplication users and they just starve the database.
    Also a screenshot for illustration.
    Waiting for your comments,
    Thanks!

    If connection pooling is in use then yes a different end-user can reuse the "inactive" session. Remember that ACTIVE and INACTIVE really only refers to if the session is executing SQL at the exact moment you query v$session.
    In the case of a dedicated user connection using a product like Oracle Forms where the user spends much of the time reading and filling in screen fields the Oracle background session can show INACTIVE almost constantly because the queries being ran by the user are very fast.
    Take a look at the last_call_et column. This is the time in seconds from when the last SQL statement was issued (not completed). If this value is resetting then the queries are being done.
    If the time is large and the status is INACTIVE then you could have a 'dead' or 'runaway' background process which is a background process without a front-end process. Those can and should be terminated. For that matter sessions that are idle for long periods of time should probably also be killed. If nothing else runaway and idle sessions may make it appear you are using all your licensed connections even if you really are not.
    Most connection pools wil automatically restart a terminated connection so if you clean-up process terminates an idle pooled connection it should not be a problem.
    HTH -- Mark D Powell --

  • Inactive Sessions Getting Automatically Generated in Database

    I am facing a strange problem of getting huge number of inactive sessions getting generated th the database server which leads to it's connection closure.
    The Error reads as "Failed to check out an Application due to connection failure of Application Module."
    This happens each time I execute the following code:
    String amDefName = "amendprgo.model.CSDInvFRCAmendPrgoServices";
    String configName = "CSDInvFRCAmendPrgoServicesLocal";
    ApplicationModule app1 = Configuration.createRootApplicationModule(amDefName,configName) ;
    String voInstanceName="prgoHdrRO";
    ViewObject prgoHdrROVO =app1.createViewObjectFromQueryStmt(voInstanceName,"select * from INV_PRGO_HDR");
    prgoHdrROVO.setWhereClause("PRGO_ID="+tempRow.getAttribute("PrgoId")+" and DEPOT_CD = '0' and ITEM_CAT = 'I3' ");
    prgoHdrROVO.executeQuery();
    if(prgoHdrROVO.getEstimatedRowCount()>0){
    return true;
    I know there is a process of creating connection and View Object in Model part in JDeveloper, but I want to know why this problem happens.

    ApplicationModule app1 = Configuration.createRootApplicationModule(amDefName,configName) ;is your problem as it causes at least one (sometimes more) connections to open. As you don't free the resource after using it the connection remains open even if you can't access it anymore.
    You should call Configuration.releaseApplicationModule(...), with the application module you created before returning.
    On the other side you shoulnd not even call createRootApplicationModule in the first place (as it causes trouble if you don't deeply know what the framework do with a root application module).
    Can you tell us the use case which make you call createRootApplicationModule()? We might find a better solution.
    Timo
    Edited by: Timo Hahn on 19.05.2011 13:45
    PS: something to read http://blogs.oracle.com/jdevotnharvest/entry/when_to_use_createrootapplicationmodule_in_oracle_adf and http://radio-weblogs.com/0118231/2009/08/20.html#a959

  • Oracle consumer group

    Hi, we are development one application with java and oracle. We have oracle 10G R2 SE. This application will be batch process in pl/sql every night, and some evenings. These proccess must be running in background, and we want priorize for online users. We don't want that plsql batch processes consum a high value of CPU and the online users can be slower. I read something about oracle consumer's group resources, but I don't understand very well.
    Anyone, know which is the better way for do that? It's recommed the user of oracle consumers or another method?
    How can I use it?
    Thanks you very much!!

    roberto1979es wrote:
    Hi, we are development one application with java and oracle. We have oracle 10G R2 SE. This application will be batch process in pl/sql every night, and some evenings. These proccess must be running in background, and we want priorize for online users. We don't want that plsql batch processes consum a high value of CPU and the online users can be slower. I read something about oracle consumer's group resources, but I don't understand very well.
    Anyone, know which is the better way for do that? It's recommed the user of oracle consumers or another method?
    How can I use it?In simplest terms, a session is associated with a consumer group. The resource manager is used to define plans which describe the resources available to each consumer group. The resource manager is then used to activate one specific plan.
    It is described in considerable detail in the DBA manual at http://download.oracle.com/docs/cd/B19306_01/server.102/b14231/dbrm.htm#i1010776
    I am not sure whether this will help you in SE because according to the license manual the Resource Manager is only with EE. http://download.oracle.com/docs/cd/B19306_01/license.102/b14199/editions.htm#CIHDDBCG

  • Inactive sessions

    Iam in need of a script to kill all the inactive sessions in the database and the same script should kill all the pid related in the OS also.
    can anyone send me a scripts or any input on this will be of great help ?
    Kai

    KaiS,
    See both functions and wrap around in your unix script, this should magic for you I suppose :) and you should replace sqlplus "/as sysdba" by sqlplus '/as sysdba'
    *function readSqlstmt {*
    typeset stmt=$1
    echo "
    set feedback off
    set verify off
    set heading off
    set pagesize 0
    whenever sqlerror exit 1
    whenever oserror exit 2
    *$stmt;*
    exit
    *" | sqlplus -S "/as sysdba" &gt;&gt; test.log*
    function killpid {
    killpidsql=killpid.sql
    sqlplus -s "/as sysdba" << ENDOFSQL >> test.log
    whenever sqlerror exit 1
    whenever oserror exit 2
    SET pagesize 0
    SET verify off
    SET feedback off
    SPOOL ${killpidsql}
    SELECT 'ALTER system kill session ''' || s.sid || ',' || s.serial# || ''';'
    FROM v\$session s, v\$process p
    WHERE s.paddr = p.addr AND s.status = 'INACTIVE';
    SPOOL OFF
    @${killpidsql}
    ENDOFSQL
    Example: How to use above readSqlstmt function, to kill unix process id and call "killpid" to kill sessions from oracle.
    *readSqlstmt "SELECT p.spid FROM v\$session s, v\$process p WHERE s.paddr = p.addr AND s.status = 'INACTIVE'" | while read u*
    *do*
    * #echo "kill -9" $u &gt;&gt; test.log*
    * echo $u*
    *done*
    *Regards*
    Edited by: OrionNet on Dec 10, 2008 10:52 PM
    Edited by: OrionNet on Dec 10, 2008 10:54 PM

  • Can I disable logging for session in Oracle 10g?

    I use a procedure to delete a lot of row for an application repeatedly. Because the DELETE statement is time consuming and the data don't need to be archived, I decide to use the nologging option.
    How to do it?
    What is the best choice? Can I disable logging from session in Oracle 10g?
    Thank you
    Edited by: jetq on Jul 23, 2009 9:46 AM

    Hi,
    "Delete" without generating redo-log is not possible.
    If you are on 10g, one way of making this thing efficiant is partition the table, with range-list partitioning. Partitioning existing table will be an excercise in itself, but that will be one time activity.
    In partitioned (or sub-partitioned) tables, you can truncate a partition (or subpartition). That won't generate any redo log (or very very less redo log) and that runs in seconds.
    In your case if you range partition INCOMING table by datetime (1 partition per day) and list sub-partition it by STATUS, that would help.
    Another approach is, if you are deleteing, say 80% records every day and leaving 20% (or very less) records. What you can do is, partition the table only by range on datetime. Then, every time you want to delete data, copy the rows you want to keep in some other table (or temporary table), truncate partition for that day and insert rows back (which you want to keep).
    I have done a similar thing and it works very quickly and generates very less redo log. Redo log generated in case of truncating partition or creating new partitions is just for Oracle internal commands (like data dictionary update etc).
    Have fun.

  • How to find the invalid form session in oracle Apps

    Oracle Apps R12
    Hai All
    How to find the invalid form session in oracle Apps R12 and How to Kill the that.
    Thanks & Regards
    Srikkanth.M

    Hi,
    Please refer to these docs (for 11i and R12).
    How to Kill Inactive Sessions Based on the Information in the Monitor User Form [ID 103516.1]
    Script: How To Identify The apps User Using The O/S PID For Forms Users In 11i [ID 185762.1]
    Thanks,
    Hussein

  • Active vs Inactive sessions

    We are using Oracle 11 as a backend to PowerSchool (a student information system) with 6 application servers (dc-ps-01 thru -06). Using the following SQL, we are seeing numerous INACTIVE sessions vs ACTIVE.
    select
    count(b.machine) as mCount,
    b.machine box,
    b.status,
    b.osuser os_user,
    b.program program
    from
    v$session b, v$process a
    where
    b.paddr = a.addr and type='USER'
    group by
    b.machine,b.osuser,b.program,b.status
    order by
    b.status, mCount desc, box;
    Sample output:
    MCOUNT Box Status OS_USER Program
    *2     DC-PS-01*     ACTIVE     powerschool     JDBC Thin Client
    1     DC-PS-DB1     ACTIVE     DC-PS-DB1$     OMS
    1     DC-PS-DB1     ACTIVE     SYSTEM     ORACLE.EXE (J001)
    1     DC-PS-DB1     ACTIVE     SYSTEM     ORACLE.EXE (J000)
    406     DC-PS-05     INACTIVE     powerschool     JDBC Thin Client
    *44     DC-PS-01*     INACTIVE     powerschool     JDBC Thin Client
    36     DC-PS-03     INACTIVE     powerschool     JDBC Thin Client
    32     DC-PS-04     INACTIVE     powerschool     JDBC Thin Client
    28     DC-PS-02     INACTIVE     powerschool     JDBC Thin Client
    17     DC-PS-06     INACTIVE     powerschool     JDBC Thin Client
    7     DC-PS-DB1     INACTIVE     DC-PS-DB1$     OMS
    While the number of ACTIVE sessions fluctuate, the number of INACTIVE ones do not decrease. Would someone explain the internal working of this?
    Thanks!

    Note that the status column of v$session only shows ACTIVE while the Oracle session background process is busy performing a SQL statement on behalf of the front-end session. If the application spends most of its time with the user entering data onto or reading results off a screen then the session is going to appear INACTIVE most of the time in Oracle.
    Also check the last_call_et to see how long it has been since the session issued a request to Oracle. This is how to tell if the session is truely INACTIVE.
    If the front-end application uses connection pooling then depending on how many connections the application is set to grab and what kind of connection pool session management the front-end product provides you can have a lot of basically unneeded and truely inactive sessions.
    HTH -- Mark D Powell --

  • DBA Reports large number of inactive sessions with 11.1.1.1

    All,
    We have installed System 11.1.1.1 on some 32 bit windows test machines running Windows Server 2003. Everything seems to be working fine, but recently the DBA is reporting that there are a large number of inactive sessions throwing alarms that we are reaching our Max Allowed Process on the Oracle Database server. We are running Oracle 10.2.0.4 on AIX.
    We also have some System 9.3.1 Development servers that point at separate schemas in this environment and we don't see the same high number of inactive connections?
    Most of the inactive connections are coming from Shared Services and Workspace. Anyone else see this or have any ideas?
    Thanks for any responses.
    Keith
    Just a quick update. Originally I said this was only with 11.1.1.1 but we see the same high number of inactive sessions in 9.3. Anyone else see a large number of inactive sessions. They show up in Oracle as JDBC_Connect_Client. Does Shared Service, Planning Workspace etc utilize persistent connections or does it just abandon sessions when the windows service associated with an application is shutdown? Any information or thoughts are appreciated.
    Edited by: Keith A on Oct 6, 2009 9:06 AM

    Hi,
    Not the answer you are looking for but have you logged it with Oracle as you might not get many answers to this question on here.
    Cheers
    John
    http://john-goodwin.blogspot.com/

Maybe you are looking for

  • DropDrown unable to get data in ALV

    Hi, I'm trying to put an dropdown by key (or index) into an ALV but I'm unable to get data in the dropdown. Can someone please help me with this? I was watching this threads on topics at the forum, but I can not solve this problem. Copy my code.   DA

  • Medialink 1.55 NOT working

    Hi, I use my PS3 for streaming with my iMac. Since the last (mandantory) firmware update from Sony, Medialink does not support my PS3 (unsupported device). Today I received the update from Nullriver. I hoped this would solve all the issues. But... Me

  • Issue with Condition dependent PO output   in SRM 4.0

    Thought I am using Condition-Dependent Purchase Order Output The PO preivew still picks up the form which is defined under Define Actions for Purchase Order Output Please suggest. Thanks in advance

  • Problem with Scrater Chart

    Hello, I am using APEX 4, i create i scrater chart, but the resullt didin"t displayed the SQL query is tested in other chart (pie, ...) and it works correctly. Any suggestions. Regards.

  • New to flash - Image Slider Navigation

    OK, so i have put off learning flash for over a year now - and its time i smartened up my act! So i have something that i would like to create - its on http://www.freecaster.tv - see that image slider at the top that when you hover over the dates the