How to analyse the number of open cursors being used by each program?

Hi,
I am getting an error "ORA:1000 Maximum Open Cursors Exceeded" in my
application. I want to analyse and monitor that how many cursors are
being used  by each program running in a particular session. I have
already set the Open Cursors Count double of the recommended for my
application, yet I am getting this error.
Is there any tool to analyse and monitor the number of cursors being
used by each DB call?
I have installed SAP NW 7.0 and Using Oracle 10g as DB.
Your immediate help will be greatly appreciated.
Best Regards,
Smriti.

You can list the open cursors per session and check which one uses the most with sqlplus:
SQL> select a.value, s.username, s.sid, s.serial#
from v$sesstat a, v$statname b, v$session s
where a.statistic# = b.statistic#  and s.sid=a.sid
and b.name = 'opened cursors current';
Values over 300 are unusual.
It is quite possible, that you see several workprocesses using a lot, because workprocesses are kind of shared sessions.
Cheers Michael
Edit: ah, our posts crossed, obviously there is no workprocess in the java world

Similar Messages

  • How to get highest number of open cursors within the current calendar day

    Hi all ,
    i need to know how to get the highest number of open cursors within the current calendar day.
    Thanks ,

    823030 wrote:
    the issue is my customer is getting the error ORA-01000: maximum open cursors exceeded and we need an sql statment that gets the following values :
    -highest number of open cursors experienced in the current calendar day.
    -current open cursors
    -and maximum open cursorsThis error is rare. It happens when
    a) the value of the open cursor parameter is set extremly low (default is something like 1000). Low would be something like 10.
    b) <strike>you have many concurrent users(=sessions) and </strike>the application does not use bind values
    In this case each select will open a new cursor, instead of reusing it.
    c) you have a select that opens a cursor for each line. This can happen with a statement where you have the CURSOR keyword somewhere in the select or where clause. Those cursors will be closed when the select is finished. But during the run time of the select, all cursors stay open.
    To track the number of "open cursors" during the day you would need to implement some monitoring. Maybe based on the view that was already mentioned.
    Edited by: Sven W. on May 16, 2011 2:30 PM - since the parameter is on session level, other open cursors should not influence it much.

  • Question about trigger to check the number of open cursors

    Hello.
    I wonder if it is possible to create a trigger that fires when the number of open cursors in a database becomes larger than a certain number. What kind of trigger and how would it be?
    If it were possible the trigger would write traces with the timestamp of the event.
    I would also like some pl/sql tester that would increase the number of open cursors so that I could check the trigger.
    Thanks in advance.

    Satish Kandi wrote:
    OPEN_CURSORS is a value per session and not for the entire database. So if your cron job is looking for a global cumulative value of open cursors to occur in a single session, it won't find any such sessions.
    Is it the case?Yes, I am afraid it is.
    I am sorry but I don't unsertand what you are telling me: doesn't "select count(*) from v$open_cursor" count the number of open cursor for all sid columns in the view?
    The cron launches a scripts that connects to the database via sqlplus whereas there is a java application (several threads without connection pooling) that connects to the database via jdbc and that causes the problem once in 5 months (to say something).
    Thanks again.
    Edited by: fsanchezherrero on Jul 3, 2009 12:28 PM
    Edited by: fsanchezherrero on Jul 3, 2009 12:36 PM

  • How to Assigning the number ranges for Purchase Order using EXIT_SAPMM06E_0

    How to Assigning the number ranges for Purchase Order using EXIT_SAPMM06E_001 using Functional Module NUMBER_GET_NEXT explain me ?

    Hi,
    First go thourh the FM import export parameters list.
    Try to create an internal table of type INRI-NRRANGENR for number ranges.
    We can provide the lower and higher values for this table so that what ever PO is created will be with that range.
    Try to create the ncessary ones using this FM.
    In the Exit, EXIT_SAPMM06E_001,
    the Export parameters are-
    EKKO-EBELN- the PO ios created with in that specified range
    Range as INRI-NRRANGENR - Here try to assign the Internal table that was populated in the FM.
    Try to code this in the Include provded and keep Breakpint and check the PO number generated.
    Reply if u need more help on this.
    Reward if helpful.
    Best Wishes,
    Chandralekha

  • How to know the full path which is being used in the dataconnection .

    How to know the full path which is being used in the dataconnection without going and looking into coding.
    I am new to crystal reports.
    Plz advice.Thanks in advance
    Jay

    This forum is dedicated to topics related to custom application development or deployment with Crystal Reports in .Net. This includes full versions of Crystal Reports as well as those versions of Crystal Reports bundled with Microsoft Visual Studio .Net.
    As you do not want to do any coding, this query is in the wrong forum. However, in most versions of Crystal Reports, you can look up the database connection information by simply opening the report in the CR designer. Then go to the database menu and select "Set Datasource Location..."
    Ludek

  • How to limit the number of TCP connections beeing used concurrently while a page is beeing loaded?

    We manufacture industrial small-footprint control modules with embedded web server. The resources of these modules are very limited, especially in RAM. We have problem, that FF opens 15 parallel TCP connections while loading a web page (main html page first, then all icons simultaneously). We can not handle such behavior because of lack of RAM memory needed for TCP buffers.
    Question is how to limit the number of concurrent TCP connections the browser will use? We need to do it somehow directly from the page, we can not push our customers to change the general settings of their browsers (they would not understand such things anyway).
    Do anyone have any suggestion?

    Sorry, one other thought. Many web designers now combine all icons into a single image and use CSS to clip the image so that only the desired portion is displayed. This minimizes the number of required connections and increases the probability that the image can be retrieved from cache.
    More info:
    * [http://www.w3schools.com/css/css_image_sprites.asp CSS Image Sprites - W3Schools]
    * [http://www.alistapart.com/articles/sprites/ A List Apart: Articles: CSS Sprites: Image Slicing’s Kiss of Death]
    * [http://coding.smashingmagazine.com/2009/04/27/the-mystery-of-css-sprites-techniques-tools-and-tutorials/ The Mystery Of CSS Sprites: Techniques, Tools And Tutorials | Smashing Coding]
    No idea whether this is practical for your application.

  • How to find the number of times method being called.....

    hi,
    can any one pls tell me how to find the number of times the method being called......herez the example....
    Refrence ref = new Refrence();
    for(int i = 0;i < arr.length; i++){
    if(somecondition){
    ref.getMethod();
    here i want to know how many times the getMethod() is calling...Is there any method to do this.. i have seen StrackTraceElement class..but not sure about that....pls tell me the solution....

    can any one pls tell me how to find the number of times the method being called......
    herez the example.... http://www.catb.org/~esr/faqs/smart-questions.html#writewell
    How To Ask Questions The Smart Way
    Eric Steven Raymond
    Rick Moen
    Write in clear, grammatical, correctly-spelled language
    We've found by experience that people who are careless and sloppy writers are usually also careless and sloppy at thinking and coding (often enough to bet on, anyway). Answering questions for careless and sloppy thinkers is not rewarding; we'd rather spend our time elsewhere.
    So expressing your question clearly and well is important. If you can't be bothered to do that, we can't be bothered to pay attention. Spend the extra effort to polish your language. It doesn't have to be stiff or formal ? in fact, hacker culture values informal, slangy and humorous language used with precision. But it has to be precise; there has to be some indication that you're thinking and paying attention.
    Spell, punctuate, and capitalize correctly. Don't confuse "its" with "it's", "loose" with "lose", or "discrete" with "discreet". Don't TYPE IN ALL CAPS; this is read as shouting and considered rude. (All-smalls is only slightly less annoying, as it's difficult to read. Alan Cox can get away with it, but you can't.)
    More generally, if you write like a semi-literate b o o b you will very likely be ignored. So don't use instant-messaging shortcuts. Spelling "you" as "u" makes you look like a semi-literate b o o b to save two entire keystrokes.

  • How to limit the number of items from RSS using XSLT

    Hello,
    I am using plsql to read contents from RSS, basically a simple RSS reader.
    I would like to somehow want the feature to restrict the number of items in the RSS feed, say I would like to display only the first 5 items.
    How could I achieve this?
    Any help is highly appreciable.
    Thanks in advance.
    Regards

    Hi,
    According your post, I know you would like to set the item display limit in Status List web part.
    In the web part, the number of items to display is based on the view which you selected when configuring the web part. The default view for status list is status list view.
    However, I am not able to limit the items’ display number of the status list view. After changing the items limit, the list item displayed would not match the number specified by Item Limit. Thus, it is not possible to limit the number
    of items in the Status list web part.
    It could be a potential issue in SharePoint 2010.
    We will log this issue to our suggestion box. As after the submission, we may not have any time guarantee when the fix may be released, but it may come out on next cumulative update.
    Appreciate your time and efforts.
    Thanks.
    Tracy Cai
    TechNet Community Support

  • How to limit the number of emails that are shown for each account

    Hi, I'm going from iOS 6.1 to my new 5s iOS 7 and I wanted to know if there was a way to limit the number of emails shown for each of my accounts? In iOS 6 there is a setting "show" where you can choose how many you would like to be loaded at a time from 50-1,000 , is there a setting similar to this and I am just not seeing it? Please help me asap. I have only logged in 3 of my 12 email accounts and already have over 13k emails loaded...

    You can't limit it to the last 50 messages, but you can limit it to the last 1000 messages in each "folder" (label).
    Go to the Gmail website and click on the gear icon to the top-right side.
    Click on Settings.
    Click on the "Forwarding and IMAP/POP" tab across the top of the Settings area.
    Towards the bottom of the IMAP section, change the "Folder Size Limit" setting to "Limit IMAP folders to contain no more than this many messages". By default 1000 is selected, though you can also choose 2000, 5000, or 10000.
    Click Save Changes at the bottom.

  • How to change the g/l a/c being used while doing goods issue using migo

    when I pass a migo entry whilie purchasing material
         , the entry goes through stock
         stock (230000 a/c no)    150        dr
          GR/IR (150000 a/c)      150        cr
    when I issue material after reservation for which again migo is done
        entry is
          repairs to plant and mach (4800569 a/c)   175
                    stock (230000 a/c no)           175
    The stock a/c is debited and credited due to t.code obyc where for inventory posting I have assigned a/c 2300000 for valuation class assigned to material.
    now I want to have a/c no  4800689 in place of 4800569. how can i change that.
    that is when I issue material from stock this should be debited to 4800689 instead of 4800569. please provide t.code to change the gl from 4800689 from 4800569
    full points will be awarded

    continuing my issue is it possible to that we donot have to change the gbb and vbr and still we can have the desired results.
    that is we are able to use different gl for debit while doing goods issue from a single stocked material
    or we want to have this result
    1.          repairs to p&m    1000    dr
                         stock of cement  a/c           1000    cr
    2.          repairs  to building    2000   dr
                          stock of cement  a/c            2000   cr.
    3.             construction     3500     dr
                                 stock  of cement     3500     cr
    we donot want to change the GBB and VBR every time    or change the GL a/c while doing reservation.
    is there any third option where we get the desired result without changing or entering the g/l manually
    if there is please let me know the t.codes

  • How to remove the bufgs that are not being used

    Hi,
    I have a IP block that has BUFGs that may or may not be used depending on which design the IP block is used. If they are not used I would like them to be removed but the tools are not consistent, sometimes they remove them and sometimes they do not.
    How do I specifically tell Vivado to remove a BUFG in the .XDC file?
    I've seen someone suggest to use the following attribute in the VHDL file but I need something in the XDC file
    attribute buffer_type of drck_i : signal is "none";
    Thank you,
    Luis

    Hi 
    If the BUFG instance is instantiated in the IP or your design then the buffer_type attribute will not work.
    The opt_design trims the unconnected instances during implementation. Ensure that the BUFG does not have  DONT_TOUCH property set on it which might affect trimming.
    Thanks,
    Deepika.

  • Number of open cursors

    I'm working on debugging some code and trying to monitor some of things that are happening at runtime. One of the things that would be useful is if I could monitor the number of open cursors on a connection.
    I've done my searching and can't seem to find anything of the sort Connection.getOpenCursorCount().... is there such a method or anything related?

    There's nothing generic like this, every possible approach that I know of is implementation-specific, either Java-side or DB-side.
    The Java-side approach is to attempt to track ResultSets through their life-cycle, as a rough proxy for cursors; this usually relies on wrapped RSs or a vendor-specific driver feature, and is sometimes not a good solution for running down certain types of resource leaks.
    On the DB side, some DBs have some visibility into open cursors through some sort of vendor-specific API.
    For example, on Oracle, there is the system view V$OPEN_CURSOR that can be queried for some information related to open cursors, often in conjuction with info ftom V$SESSION and V$SQL, V$SQL_AREA or V$SQL_TEXT. IMPORTANT NOTE: this view is actually a view on internal Oracle memory structures. While you can query it like any normal view or table, it is changing constantly, with internal per-row consistancy guaranteed by latches (locks on memory). Complex queries against internal views (such as self-joins or complex aggregations) can interact with the latches very badly; the queries may take many hours to complete and consume massive amounts of CPU while doing so. If you need to perform a complex analysis, don't do it on the live view; create a snapshot of the view and use that, for example:
    CREATE TABLE SNAP_OPEN_CURSORS as
    SELECT * FROM V$OPEN_CURSORS(Note that in a RAC or OPS Oracle cluster, the V$ views only report on the instance you're connected to; there are analogous GV$ views that report on all available instances, and have an added INST_ID column identifying the source instance, when relevant).

  • How to get the number of files currently open?

    hi,
    does any one know how to get the number of files currently open in windows OS?
    e.g. lets say .txt files...
    any comment will be really appreciated.
    thanks

    Assuming that you don't want to actually do this from within Java code (which would obviously require native code), here's a utility that will give you a list of which file handles are opened by which processes (on Windows):
    http://www.sysinternals.com/ntw2k/freeware/handle.shtml
    - K

  • Avg number of open cursors per session

    We've been noticing a large number of open cursors open per session in our database, these users being Oracle Forms users. There are quite a few 'bells & whistles' in this vendor-supplied application with many round trips to the database. The warning we were receiving was induced by an alert that we had set up within OEM.
    It got me wondering then, what a large number of cursors per process really was. We're seeing between 10-80 open cursors. The init parm OPEN_CURSORS has a default value of 50 upon installation (which is per session), so the max of 80 doesn't seem too much higher.
    Are we really experiencing a large # of open cursors per session? Does someone have a means of estimating the max # of cursors that one would expect based upon CPU & memory resources? I can't find anything in the documentation.
    Thanks,
    Chuck

    There is an OPEN_CURSORS parameter in the init.ora file,
    I want to know the impact of number of open cursors on performance
    (ie., how many open cursors would be appropriate for an instance)There shouldn't be a performance issue here. The value needs to be set based on how many open cursors you want to allow simultaneously. If you set the value too low, applications will get the "too many cursors open" error when they try to open a new cursor. If you're not having problems, or if you don't know how many open cursors you're likely to have, I wouldn't change this parameter.
    Justin

  • Increased maximum number of open cursors

    I'm using JDBC with oracle. And I need to send many transactions to database.
    I use Statement.executeQuery("INSERT INTO ..............") and so on!
    But after 300 transaction Oracle send me an error that "increased maximum number of open cursors." How to increase the max number of that cursors or how to close them??
    Thanks in advance!

    1. Use, PreparedStatement instead of Statement.
    2. Use addBatch() and executeBatch() methods.
    3. Don't create statement objects in a loop, just create one object outside the while (or for) loop and use the same object again and again. Most probably the problem may be due to creating excessive object in a llop.
    Hope this helps.
    Sudha

Maybe you are looking for

  • Using USB without Visa

    "I have a usb camera that has it's own drivers. I want to stream the video to the user via the front panel. I don't know the exact functions declaration that are in the dll to use with Code library function. I thought about using vfw but could not fi

  • BPM Workspace Customization & User Interface: Best Practice Question

    Hi All, This is our first BPM Project in house and we are on Oracle BPM 11g. The business process involves request for approval for a permit from a public user and internal users need to approve/reject the same. Pretty simple and straightforward so f

  • Function LIMIT

    I have the following data in savings plan 4051 wagetype (regular contribution) 10000 priority is set to L 4054 wagetype catch up contribution  5000 When i run payroll , at Function LIMIT Input is 4051 10000 4054 : 5000 processing Individual limits WT

  • Generate accounting document by reference to Controlling Doc

    Hi Experts, Please share any enchancement (BAPI, exit) to generate accounting document (doc type ST) by reference to CO document? example: -CO- Dr. Material Operations(Cost Center)    12 Cr. Material Operations(Order)              12 -FI- generated b

  • CORBA instance for OLAP Services?

    Hi All, I am new to OLAP, and I am trying to use OLAP API over a data warehouse I've created for test. I am developping on the following environement: - Windows 2000 Professional - OLAP API - Oracle 9.0.1 I am having a javax.naming.NamingNotFoundExce