Sql net trace file

Hi All,
Our prod db is 2 nodes RAC 10g in MS window 2003 servers. It is located in a remote place. Recently one of our local app servers lost connection to this db although we can tnsping it but got ORA3113 error when we tried to logon using sql plus. Most of our local PCs did not have problem logon at all. We enabled the sql net trace on this app server and network administrators spent a lot of time on this and finally shutdown one of the app servers in the same remote location which seemed cause a lot of network traffic with a local app server. So the problem went away and the app server can logon to the db now. I (I know nothing about network) tried to read the sql net trace file generated during the trouble time using the help outlined in the “Examining Oracle Net Trace Files” written by Kevin Reardon. The error happened after client sending server character set and conversion graph it supports and before receiving character set and conversion graph from the server. It took a minute in this step and finally gave up. Following is a section of the trace file where error happens. My question is: even we know when the error happens and at what step how can we use this info to further identify the root cause: Is this because we have too much network traffic which caused timeout or other reason(s)? By the way our db servers have “INBOUND_CONNECT_TIMEOUT=180" (3 minutes) in the sqlnet.ora file and whole trace file starts at [06-NOV-2009 14:50:23:352] and ends at [06-NOV-2009 14:51:24:758] which is a little over 1 minute. Greatly appreciate your insights and thoughts.
Shirley
[06-NOV-2009 14:50:23:836] nsdo: normal exit
[06-NOV-2009 14:50:23:836] nsdo: entry
[06-NOV-2009 14:50:23:836] nsdo: cid=0, opcode=85, *bl=0, *what=0, uflgs=0x0, cflgs=0x3
[06-NOV-2009 14:50:23:836] nsdo: rank=64, nsctxrnk=0
[06-NOV-2009 14:50:23:836] nsdo: nsctx: state=8, flg=0x400d, mvd=0
[06-NOV-2009 14:50:23:836] nsdo: gtn=127, gtc=127, ptn=10, ptc=32730
[06-NOV-2009 14:50:23:836] nsdo: switching to application buffer
[06-NOV-2009 14:50:23:836] nsrdr: entry
[06-NOV-2009 14:50:23:836] nsrdr: recving a packet
[06-NOV-2009 14:50:23:836] nsprecv: entry
[06-NOV-2009 14:50:23:836] nsprecv: reading from transport...
[06-NOV-2009 14:50:23:836] nttrd: entry
[06-NOV-2009 14:51:24:742] nttrd: exit
[06-NOV-2009 14:51:24:742] ntt2err: entry
[06-NOV-2009 14:51:24:742] ntt2err: Read unexpected EOF ERROR on 644
[06-NOV-2009 14:51:24:742] ntt2err: exit
[06-NOV-2009 14:51:24:742] nsprecv: error exit
[06-NOV-2009 14:51:24:742] nserror: entry
[06-NOV-2009 14:51:24:742] nserror: nsres: id=0, op=68, ns=12537, ns2=12560; nt[0]=507, nt[1]=0, nt[2]=0; ora[0]=0, ora[1]=0, ora[2]=0
[06-NOV-2009 14:51:24:742] nsrdr: error exit
[06-NOV-2009 14:51:24:742] nsdo: nsctxrnk=0
[06-NOV-2009 14:51:24:742] nsdo: error exit
[06-NOV-2009 14:51:24:742] nioqer: entry
[06-NOV-2009 14:51:24:742] nioqer: incoming err = 12151
[06-NOV-2009 14:51:24:742] nioqce: entry
[06-NOV-2009 14:51:24:742] nioqce: exit
[06-NOV-2009 14:51:24:742] nioqer: returning err = 3113
[06-NOV-2009 14:51:24:742] nioqer: exit
[06-NOV-2009 14:51:24:742] nioqrc: exit
[06-NOV-2009 14:51:24:742] nioqrs: entry

I am certainly not an expert in this area, but these lines are of interest
>
06-NOV-2009 14:51:24:742 ntt2err: Read unexpected EOF ERROR on 644
06-NOV-2009 14:51:24:742 nserror: nsres: id=0, op=68, ns=12537, ns2=12560; nt[0]=507, nt[1]=0, nt[2]=0; ora[0]=0, ora[1]=0, ora[2]=0
06-NOV-2009 14:51:24:742 nioqer: incoming err = 12151
>
The TNS 12537, 12560 and 12151 codes indicate network errors.
http://download.oracle.com/docs/cd/B19306_01/server.102/b14219/tnsus.htm#sthref14851
Is this a consistently reproducible error ? Do other applications on this network operate without error ?
HTH
Srini

Similar Messages

  • Pls/sql in trace file

    Hi!
    The problem is appearence of pl/sql code in trace file instead of separate cursors of SQL statements. So, I can't get information about each SQL statement separatelly. What's wrong? How to separate SQL statements?
    Nosorog

    As Satish indicated, the "SQL*Net message from client" wait is an event which indicates that the database server was waiting for the next request from the client computer, and not an indication that the query needs to be tuned. Manually review the trace file. At one point in the trace file, you will see this wait event with an ela= value which begins with 14142 - please post to this thread that line from the trace file along with the 20 lines before that line and the 20 lines after that line. You may just have a long wait on this event at the beginning, and another long wait on this event at the end of the query.
    Charles Hooper
    IT Manager/Oracle DBA
    K&M Machine-Fabricating, Inc.

  • Record type variables in the SQL database trace file

    Hi,
    I turned on the trace with binds and waits in a ebusiness form and captured the database SQL trace file. It lists the values for the generic datatypes for the call, but does not list the values of record type variables. Is there a way to identify the values of record type variables? The below section lists the procedure call and the values passed. Thanks in advance.
    RPC CALL:PROCEDURE APPS.HZ_PARTY_SEARCH.FIND_PARTY_DETAILS(P_INIT_MSG_LIST IN VARCHAR2, P_RULE_ID IN NUMBER, P_PARTY_SEARCH_REC IN PARTY_SEARCH_REC_TYPE, P_PARTY_SITE_LIST IN PARTY_SITE_LIST, P_CONTACT_LIST IN CONTACT_LIST, P_CONTACT_POINT_LIST IN CONTACT_POINT_LIST
    , P_RESTRICT_SQL IN VARCHAR2, P_MATCH_TYPE IN VARCHAR2, P_SEARCH_MERGED IN VARCHAR2, X_SEARCH_CTX_ID OUT NUMBER, X_NUM_MATCHES OUT NUMBER, X_RETURN_STATUS OUT VARCHAR2, X_MSG_COUNT OUT NUMBER, X_MSG_DATA OUT VARCHAR2);
    RPC BINDS:
    bind 0: dty=1 bfp=2ae5927c13c8 flg=08 avl=01 mxl=01 val="T"
    bind 1: dty=6 bfp=2ae5927c13f0 flg=00 avl=02 mxl=22 val=8
    bind 2: dty=118 bfp=2ae593432e48 flg=00 avl=00 mxl=00 val=00
    bind 3: dty=251 bfp=2ae5929ac0b8 flg=00 avl=1944 mxl=00 val=00
    bind 4: dty=251 bfp=2ae592d85548 flg=00 avl=5336 mxl=00 val=00
    bind 5: dty=251 bfp=2ae592d84d58 flg=00 avl=4984 mxl=00 val=00
    bind 6: dty=1 bfp=2ae5927c1550 flg=08 avl=125 mxl=2000 val="exists (select 'x' from hz_parties where party_id =stage.party_id and party_type = 'ORGANIZATION') and party_id <>1002277174"
    bind 7: dty=1 bfp=2ae5927c1d50 flg=0a avl=00 mxl=00 val=""
    bind 8: dty=1 bfp=2ae5927c1d80 flg=08 avl=01 mxl=01 val="I"
    bind 9: dty=6 bfp=2ae5927c1da8 flg=02 avl=00 mxl=22 val=00
    bind 10: dty=6 bfp=2ae5927c1de0 flg=02 avl=00 mxl=22 val=00
    bind 11: dty=1 bfp=2ae5927c1e28 flg=0a avl=00 mxl=01 val=""
    bind 12: dty=6 bfp=2ae5927c1e50 flg=02 avl=00 mxl=22 val=00
    bind 13: dty=1 bfp=2ae5927c1e98 flg=0a avl=00 mxl=2000 val=""

    Hello,
    From the sounds of it, when you are adding a child the application is not maintaining the Company's reference to it. For instance, in a 1:M and M:1 relationship, the application seems to be setting only the M:1 part (child to parent) which will cause the database to be updated, but both sides need to be set to keep the cache in synch with the database.
    Setting the cache type to be none is not a good idea - it prevents any caching, which will hurt performance and object identity. What instead is recommended is disabling the shared cache using the
    toplink.cache.shared.<ENTITY>=false property. This still might not help though if the Company's reference to the child hasn't been set as mentioned above if you are reading Company from the same context you are adding the child.
    The Cache is described for TopLink Essentials in the blog at:
    http://weblogs.java.net/blog/guruwons/archive/2006/09/understanding_t.html
    Best Regards,
    Chris

  • Listener trace file: Winsock 54 errors

    I am seeing many of the following error ("soc nnn error - operation=5, ntresnt[0]=517, ntresnt[1]=54...") in my Listener trace file.
    This is on an Oracle 9.2.0.4 server (Windows 2003 Server R2).
    If my intepretation of the Listener trace is correct, this corresponds to Winsock Error 10054 (Connection reset by peer).
    SQL*net trace files at the client side (a separate host) do not indicate a corresponding error - all the trace files appear "clean".
    So what is the peer in this context? My initial thought was that the Oracle server had established a session for the client, but then the client
    had appeared to disappear from the network. But I would have expected to see something in the client trace files at the same time.
    This is an example from the Listener trace file.
    nscon: sending NSPTRD packet
    nspsend: entry
    nspsend: plen=65, type=5
    nttmwr: entry
    nttmwr: socket 332 had bytes written=65
    nttmwr: exit
    nspsend: 65 bytes to transport
    nspsend: packet dump
    nspsend: 00 41 00 00 05 00 00 00 |.A......|
    nspsend: 00 37 28 41 44 44 52 45 |.7(ADDRE|
    nspsend: 53 53 3D 28 50 52 4F 54 |SS=(PROT|
    nspsend: 4F 43 4F 4C 3D 74 63 70 |OCOL=tcp|
    nspsend: 29 28 48 4F 53 54 3D 31 |)(HOST=1|
    nspsend: 39 32 2E 31 36 38 2E 32 |92.168.2|
    nspsend: 2E 32 35 34 29 28 50 4F |.254)(PO|
    nspsend: 52 54 3D 34 34 35 37 29 |RT=4457)|
    nspsend: 29 |) |
    nspsend: normal exit
    nscon: exit (0)
    nsdo: nsctxrnk=0
    nsdo: normal exit
    nsrah: entry
    nsrah: reading (asynchronously) from transport...
    nsrah: ...into overflow area...
    nttmrd: entry
    ntt2err: entry
    ntt2err: soc 332 error - operation=5, ntresnt[0]=517, ntresnt[1]=54, ntresnt[2]=0
    ntt2err: exit
    ntt2err: entry
    ntt2err: Read unexpected EOF ERROR on 332
    ntt2err: exit
    nttmrd: socket 332 had bytes read=0
    nttmrd: exit
    nserror: entry
    nserror: nsres: id=4, op=68, ns=12537, ns2=12560; nt[0]=507, nt[1]=0, nt[2]=0; ora[0]=0, ora[1]=0, ora[2]=0
    nsrah: exit (-1)
    nsclose: entry
    nstimarmed: entry
    nstimarmed: no timer allocated
    nstimarmed: normal exit
    Any thoughts/recommendations on this would be gratefully received, thanks.
    Andy.

    nspsend: 4F 43 4F 4C 3D 74 63 70 |OCOL=tcp|
    nspsend: 29 28 48 4F 53 54 3D 31 |)(HOST=1|
    nspsend: 39 32 2E 31 36 38 2E 32 |92.168.2|
    nspsend: 2E 32 35 34 29 28 50 4F |.254)(PO|
    nspsend: 52 54 3D 34 34 35 37 29 |RT=4457)|
    So what is the peer in this context?192.168.2.245 port=4457
    go to http://download.oracle.com/docs/cd/B10501_01/network.920/a96580/troubles.htm
    then Find: EOF ERROR

  • Diagnosing errors from Net Services trace files

    Hi,
    does anybody have a link to any documentation where it's explained how to interpret errors in Net Service trace files. For example, a snippet of a trace file looks like this:
    [30-JUN-2009 14:32:39:302] nttcni: trying to connect to socket 1836.
    [30-JUN-2009 14:32:40:224] ntt2err: entry
    [30-JUN-2009 14:32:40:224] ntt2err: soc 1836 error - operation=1, ntresnt[0]=511, ntresnt[1]=61, ntresnt[2]=0
    [30-JUN-2009 14:32:40:224] ntt2err: exitI suppose that ntresnt[1]=61 means means (from metalink DocId 67211.1):
    WSAECONNREFUSED 61 10061
    Connection refused. No connection could be made because the target machine
    actively refused it. This usually results from trying to connect to a service
    that is inactive on the foreign host.
    But what about the other part:
    operation=1, ntresnt[0]=511
    Does anybody know what "operation" and the "511" code mean?
    Thank you in advance for any answer.
    Regards,
    Jure

    Look at metalink note 156485.1 "Examining Oracle Net Trace Files"

  • SQL*Net -  Where is the missing millisecond  ?

    I have done a SQL*Net trace and when i examine the trace file, 15 milliseconds have disappeared ?? Can someone explain me this ?
    Here, i partial copy/paste from the trace file :
    [15-NOV-2005 11:29:06:312] nttbnd2addr: entry
    [15-NOV-2005 11:29:06:312] nttgetport: entry
    [15-NOV-2005 11:29:06:312] nttgetport: port resolved to 1637
    [15-NOV-2005 11:29:06:312] nttgetport: exit
    --> [15-NOV-2005 11:29:06:312] nttbnd2addr: looking up IP addr for host: OSCT
    --> [15-NOV-2005 11:29:06:327] nttbnd2addr: exit
    [15-NOV-2005 11:29:06:327] nsc2addr: normal exit
    [15-NOV-2005 11:29:06:327] nsopen: entry
    [15-NOV-2005 11:29:06:327] nsmal: entry
    I want to be able to reduce this weird millisecond.
    Thanks !

    I would first ask why you're focusing on these 15 milliseconds. Do you have reason to believe that this 15 milliseconds is a performance problem? Is it a major coponent of some business process that is running too slowly? Would eliminating these 15 milliseconds have a noticable impact on some business performance metric?
    If the 15 millisecond IP address lookup is a significant performance issue for you, that would seem to imply that either you have an almost impossibly perfectly tuned application and you should stop tuning or that you need to concentrate on the number of times this routine is called (i.e. reducing the number of connections you make) rather than focusing on reducing the time to resolve a host name. If the 15 milliseconds is not a significant performance issue for you, you ought to focus your time and effort on the real bottlenecks.
    Justin
    Distributed Database Consulting, Inc.
    http://www.ddbcinc.com/askDDBC

  • [JDBC] trace file

    Hi
    Is it possible to configure JDBC on OC4J to create SQL query
    trace file ( for debug purpose)

    A very easy way to achieve this is to use the Open Source P6SPY utility. It acts as a wrapper over a JDBC DataSource, which intercepts and logs the JDBC calls, then delegates the call to the underlying DataSource.
    It's trivial to setup and use, and is a pretty handy utility to have in your toolkit.
    http://www.p6spy.org/
    -steve-

  • High SQL*Net message values in trace file.

    Hi all,
    This is my first post here. I will try to more less describe the problem i am facing.
    Any help is more than welcome!
    I am facing some performance issues with application. Slow GUI. I run some tests, i tracked the session. what i found in trace file is:
    OVERALL TOTALS FOR ALL NON-RECURSIVE STATEMENTS
    call     count       cpu    elapsed       disk      query    current        rows
    Parse     1734     1.61   1.61             0            0            0              0
    Execute   1734   32.52  32.56           0           26          15             4
    Fetch     1737     14.46  14.51           2        41867        84          2847
    total     5205     48.59   48.69            2        41893        99          2851
    Misses in library cache during parse: 7
    Misses in library cache during execute: 5
    Elapsed times include waiting on following events:
      Event waited on                             Times       Max. Wait     Total Waited
      ----------------------------------------           Waited       ----------            ------------
      SQL*Net message to client            5207           0.00               0.02
      SQL*Net message from client        5206          106.18             339.72
      log file sync                                    3               0.00               0.00
      SQL*Net more data to client            51              0.00               0.00
      SQL*Net more data from client        10              0.00               0.00
      Disk file operations I/O                    1               0.00               0.00
      db file sequential read                     2               0.00               0.01
      library cache: mutex X                    1               0.05               0.05
    Look at Max. Wait and Total Waited columns. Is it possible to safely tune it by changing SDU in sql*net ? and if so, is it needed to change the SDU value on client and server sides ?

    66ff73bb-87bd-4c84-bada-0141fb25344b wrote:
    Hi all,
    This is my first post here. I will try to more less describe the problem i am facing.
    Any help is more than welcome!
    I am facing some performance issues with application. Slow GUI. I run some tests, i tracked the session. what i found in trace file is:
    OVERALL TOTALS FOR ALL NON-RECURSIVE STATEMENTS
    call     count       cpu    elapsed       disk      query    current        rows
    Parse     1734     1.61   1.61             0            0            0              0
    Execute   1734   32.52  32.56           0           26          15             4
    Fetch     1737     14.46  14.51           2        41867        84          2847
    total     5205     48.59   48.69            2        41893        99          2851
    Misses in library cache during parse: 7
    Misses in library cache during execute: 5
    Elapsed times include waiting on following events:
      Event waited on                             Times       Max. Wait     Total Waited
      ----------------------------------------           Waited       ----------            ------------
      SQL*Net message to client            5207           0.00               0.02
      SQL*Net message from client        5206          106.18             339.72
      log file sync                                    3               0.00               0.00
      SQL*Net more data to client            51              0.00               0.00
      SQL*Net more data from client        10              0.00               0.00
      Disk file operations I/O                    1               0.00               0.00
      db file sequential read                     2               0.00               0.01
      library cache: mutex X                    1               0.05               0.05
    Look at Max. Wait and Total Waited columns. Is it possible to safely tune it by changing SDU in sql*net ? and if so, is it needed to change the SDU value on client and server sides ?
    When you start with the wrong question, no matter how good an answer you get, it won't matter very much.
    you do NOT have any problem; just a useless observation.

  • SQL*Net message from client - huge wait in trace file

    Dear All,
    I am facing a performance issue in a particular operation ( which was completed in 21 Minutes earlier). Now the same operation takes more than 35 Minutes. I took a trace for those session ( 10046 level 12 trace ) and found Lot of waits in SQL*Net message from client.
    Elapsed times include waiting on following events:
    Event waited on Times Max. Wait Total Waited
    ---------------------------------------- Waited ---------- ------------
    SQLNet message from client 611927 10.00 1121.35*
    I copied only the highest wait in the tkprof output.
    And I found from the tkprof and even in raw trace file this event waits more time after excuting
    SELECT sysdate AS SERVERDATE from dual;
    Elapsed times include waiting on following events:
    Event waited on Times Max. Wait Total Waited
    ---------------------------------------- Waited ---------- ------------
    SQL*Net message to client 115 0.00 0.00
    SQLNet message from client 115 10.00 724.52*
    Please help me to find out why this wait taking long time, especially on the above query..
    Regards,
    Vinodh

    Vinodh Kumar wrote:
    Hi,
    This is what available in the trace file
    PARSING IN CURSOR #2 len=38 dep=0 uid=60 oct=3 lid=60 tim=7052598842 hv=3788189359 ad='7d844fa0'
    *"SELECT sysdate AS SERVERDATE FROM dual"*
    END OF STMT
    PARSE #2:c=0,e=12,p=0,cr=0,cu=0,mis=0,r=0,dep=0,og=1,tim=7052598839
    BINDS #2:
    EXEC #2:c=0,e=42,p=0,cr=0,cu=0,mis=0,r=0,dep=0,og=1,tim=7052599002
    WAIT #2: nam='SQL*Net message to client' ela= 1 driver id=1952673792 #bytes=1 p3=0 obj#=-1 tim=7052599058
    FETCH #2:c=0,e=15,p=0,cr=0,cu=0,mis=0,r=1,dep=0,og=1,tim=7052599110
    *** 2012-01-02 17:07:30.364
    WAIT #2: nam='SQL*Net message from client' *" ela= 10007957"* driver id=1952673792 #bytes=1 p3=0 obj#=-1 tim=7062607120Please find the last line WAIT -- in the complete trace after executing this query
    In awr report , this query taken less than a sec for more than 2000 executions.
    Regards,
    VinodhGood idea to check the raw trace file. It is important to notice that this particular wait event appears after the fetch of the result from the database. The client receives the SYSDATE from the database server, and then the client performs some sort of action for about 10 seconds before submitting its next request to the database. The SQL statement that immediately follows and immediately preceeds this section of the trace file might provide clues regarding what caused the delay, and where that delay resides in the client side code. Maybe a creative developer added a "sleep for 10 seconds" routine when intending to sleep for 10ms? Maybe the client CPU is close to 100% utilization?
    Charles Hooper
    http://hoopercharles.wordpress.com/
    IT Manager/Oracle DBA
    K&M Machine-Fabricating, Inc.

  • SQL*NET waits in trace file

    Hi All,
    There is a long running query, i generated trace file for this request. In trace file i found that there are huge waits on SQL*Net message from client
    The below is the trace file output:
    Elapsed times include waiting on following events:
    Event waited on Times Waited Max. Wait Total Waited
    SQL*Net message to client 16 0.00 0.00
    SQL*Net more data to client 17 0.00 0.00
    db file sequential read 1450 0.02 4.26
    SQL*Net message from client 16 1414.20 2702.84
    How to resolve this waits from SQL*NET message from client? I checked the network connection, there is no delays in network.
    Any inputs on this issue will be appreciated.

    As Satish indicated, the "SQL*Net message from client" wait is an event which indicates that the database server was waiting for the next request from the client computer, and not an indication that the query needs to be tuned. Manually review the trace file. At one point in the trace file, you will see this wait event with an ela= value which begins with 14142 - please post to this thread that line from the trace file along with the 20 lines before that line and the 20 lines after that line. You may just have a long wait on this event at the beginning, and another long wait on this event at the end of the query.
    Charles Hooper
    IT Manager/Oracle DBA
    K&M Machine-Fabricating, Inc.

  • Sql statement appear twice in trace file

    Hi all,
    Just a little confused on why my sql statement appear twice in the sql trace file.
    the following is the sequence of steps to reproduce this.
    1. Enable sql trace in another session, say session B
    exec dbms_monitor.session_trace_enable(38,13330,TRUE,TRUE);2. Execute the following sql in session B
    select * from hosts where hostname = 'host19'3. Disable sql trace
    exec dbms_monitor.session_trace_disable(38,13330);I used TKPROF to parse the trace file
    tkprof DEV_ora_20621.trc DEV_ora_20621.out sys=noThe output is
    SQL ID: bcpw6ttb0xbqs
    Plan Hash: 0
    select *
    from
      hosts where hostname = 'host19'
    call     count       cpu    elapsed       disk      query    current        rows
    Parse        1      0.00       0.00          0          5          0           0
    Execute      0      0.00       0.00          0          0          0           0
    Fetch        0      0.00       0.00          0          0          0           0
    total        1      0.00       0.00          0          5          0           0
    Misses in library cache during parse: 0
    Optimizer mode: ALL_ROWS
    Parsing user id: 88
    Elapsed times include waiting on following events:
      Event waited on                             Times   Max. Wait  Total Waited
      ----------------------------------------   Waited  ----------  ------------
      SQL*Net message to client                       1        0.00          0.00
      SQL*Net message from client                     1        0.00          0.00
    SQL ID: bcpw6ttb0xbqs
    Plan Hash: 3617124623
    select *
    from
      hosts where hostname = 'host19'
    call     count       cpu    elapsed       disk      query    current        rows
    Parse        1      0.00       0.00          0          0          0           0
    Execute      1      0.00       0.00          0          0          0           0
    Fetch        1      0.00       0.00          0          3          0           1
    total        3      0.00       0.00          0          3          0           1
    Misses in library cache during parse: 0
    Optimizer mode: ALL_ROWS
    Parsing user id: 88
    Rows     Row Source Operation
          1  TABLE ACCESS BY INDEX ROWID HOSTS (cr=3 pr=0 pw=0 time=0 us cost=2 size=135 card=1)
          1   INDEX RANGE SCAN IDX_HOST01 (cr=2 pr=0 pw=0 time=0 us cost=1 size=0 card=1)(object id 78193)Why the sql is showing twice?
    I think the correct one would be the second since it's reporting the fetching of 1 row.
    Does anyone understand this?
    Cheers,
    -Joel
    Edited by: user12057365 on Jul 21, 2010 1:59 AM

    Could not reproduce this in my 10.2.0.4.0 environment. Whats your Oracle version?

  • Extract SQL history from 10046 trace files

    Hi all,
    I need to extract the complete sql history from sql trace files to "debug" a client application.
    I know I can read the raw trc file and rebuild the sql history looking for the PARSING / EXEC / FETCH entries.
    However, this is a very long and boring manual task: do you know if there is some free tool to automate this task?
    thanks
    Andrea

    user585511 wrote:
    I agree that the 10046 trace captures everything. If I do read the raw trc file I see the DML. The problem is that tkprof's record does not record the DML (maybe it thinks that some DML is recursive sql and it gets misleaded... I am not sure) so I am looking for an alternate tool to process 10046 trace files
    Regards
    AndreaReally?
    Generate a trace of some dml:
    oracle:orcl$
    oracle:orcl$ sqlplus /nolog
    SQL*Plus: Release 11.2.0.1.0 Production on Thu May 16 08:28:55 2013
    Copyright (c) 1982, 2009, Oracle.  All rights reserved.
    SQL> conn snuffy/snuffy
    Connected.
    SQL> alter session set tracefile_identifier = "snuffy_session";
    Session altered.
    SQL> alter session set events '10046 trace name context forever, level 12';
    Session altered.
    SQL> insert into mytest values (sysdate);
    1 row created.
    SQL> commit;
    Commit complete.
    SQL> ALTER SESSION SET EVENTS '10046 trace name context off';
    Session altered.
    SQL> exitrun tkprof on the trace
    oracle:orcl$ ls -l $ORACLE_BASE/diag/rdbms/$ORACLE_SID/$ORACLE_SID/trace/*snuffy
    *.trc
    -rw-r----- 1 oracle asmadmin 3038 May 16 08:29 /u01/app/oracle/diag/rdbms/orcl/orcl/trace/orcl_ora_4086_snuffy_session.trc
    oracle:orcl$ tkprof /u01/app/oracle/diag/rdbms/orcl/orcl/trace/orcl_ora_4086_snu
    ffy_session.trc snuffy.rpt waits=YES sys=NO explain=system/halftrack
    TKPROF: Release 11.2.0.1.0 - Development on Thu May 16 08:31:32 2013
    Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.Look at the report:
    oracle:orcl$ cat snuffy.rpt
    TKPROF: Release 11.2.0.1.0 - Development on Thu May 16 08:31:32 2013
    Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.
    Trace file: /u01/app/oracle/diag/rdbms/orcl/orcl/trace/orcl_ora_4086_snuffy_session.trc
    Sort options: default
    count    = number of times OCI procedure was executed
    cpu      = cpu time in seconds executing
    elapsed  = elapsed time in seconds executing
    disk     = number of physical reads of buffers from disk
    query    = number of buffers gotten for consistent read
    current  = number of buffers gotten in current mode (usually for update)
    rows     = number of rows processed by the fetch or execute call
    SQL ID: 938dgt554gu98
    Plan Hash: 0
    insert into mytest           <<<<<<<<<<<<<<<< oh my!  Here is the insert statement
    values
    (sysdate)
    call     count       cpu    elapsed       disk      query    current        rows
    Parse        1      0.00       0.00          0          0          0           0
    Execute      1      0.00       0.00          0          1          5           1
    Fetch        0      0.00       0.00          0          0          0           0
    total        2      0.00       0.00          0          1          5           1
    Misses in library cache during parse: 0
    Optimizer mode: ALL_ROWS
    Parsing user id: 86  (SNUFFY)
    Rows     Row Source Operation
          0  LOAD TABLE CONVENTIONAL  (cr=1 pr=0 pw=0 time=0 us)
    error during execute of EXPLAIN PLAN statement
    ORA-00942: table or view does not exist
    parse error offset: 83
    Elapsed times include waiting on following events:
      Event waited on                             Times   Max. Wait  Total Waited
      ----------------------------------------   Waited  ----------  ------------
      SQL*Net message to client                       1        0.00          0.00
      SQL*Net message from client                     1        3.35          3.35
    SQL ID: 23wm3kz7rps5y
    Plan Hash: 0
    commit
    call     count       cpu    elapsed       disk      query    current        rows
    Parse        1      0.00       0.00          0          0          0           0
    Execute      1      0.00       0.00          0          0          1           0
    Fetch        0      0.00       0.00          0          0          0           0
    total        2      0.00       0.00          0          0          1           0
    Misses in library cache during parse: 0
    Parsing user id: 86  (SNUFFY)
    Elapsed times include waiting on following events:
      Event waited on                             Times   Max. Wait  Total Waited
      ----------------------------------------   Waited  ----------  ------------
      SQL*Net message to client                       2        0.00          0.00
      SQL*Net message from client                     2        4.72          8.50
      log file sync                                   1        0.00          0.00
    SQL ID: 0kjg1c2g4gdcr
    Plan Hash: 0
    ALTER SESSION SET EVENTS '10046 trace name context off'
    call     count       cpu    elapsed       disk      query    current        rows
    Parse        1      0.00       0.00          0          0          0           0
    Execute      1      0.00       0.00          0          0          0           0
    Fetch        0      0.00       0.00          0          0          0           0
    total        2      0.00       0.00          0          0          0           0
    Misses in library cache during parse: 0
    Parsing user id: 86  (SNUFFY)
    OVERALL TOTALS FOR ALL NON-RECURSIVE STATEMENTS
    call     count       cpu    elapsed       disk      query    current        rows
    Parse        3      0.00       0.00          0          0          0           0
    Execute      3      0.00       0.00          0          1          6           1
    Fetch        0      0.00       0.00          0          0          0           0
    total        6      0.00       0.00          0          1          6           1
    Misses in library cache during parse: 0
    Elapsed times include waiting on following events:
      Event waited on                             Times   Max. Wait  Total Waited
      ----------------------------------------   Waited  ----------  ------------
      SQL*Net message to client                       3        0.00          0.00
      SQL*Net message from client                     3        4.72         11.86
      log file sync                                   1        0.00          0.00
    OVERALL TOTALS FOR ALL RECURSIVE STATEMENTS
    call     count       cpu    elapsed       disk      query    current        rows
    Parse        0      0.00       0.00          0          0          0           0
    Execute      0      0.00       0.00          0          0          0           0
    Fetch        0      0.00       0.00          0          0          0           0
    total        0      0.00       0.00          0          0          0           0
    Misses in library cache during parse: 0
        3  user  SQL statements in session.
        0  internal SQL statements in session.
        3  SQL statements in session.
        0  statements EXPLAINed in this session.
    Trace file: /u01/app/oracle/diag/rdbms/orcl/orcl/trace/orcl_ora_4086_snuffy_session.trc
    Trace file compatibility: 11.1.0.7
    Sort options: default
           1  session in tracefile.
           3  user  SQL statements in trace file.
           0  internal SQL statements in trace file.
           3  SQL statements in trace file.
           3  unique SQL statements in trace file.
          58  lines in trace file.
           8  elapsed seconds in trace file.
    oracle:orcl$

  • Create sql trace files on client machine

    Hi
    oracle creates sql trace files on server side, what are possible and best ways of sharing those files with end users? is it possible to create them on client side instead?

    Dbb wrote:
    Hi
    Hi
    oracle creates sql trace files on server side,
    Yes
    what are possible and best ways of sharing those files with end users?
    Using shared directory. Use the parameters dump to point to it
    is it possible to create them on client side instead?
    No
    . :-) any help with my english is wellcome :-) .does this mean sharing user_dump destination at linux level and then mounting it from client machines ( win xp )?is there any doc on this?

  • How to find out the size of files transferred over the SQL * Net?

    I am trying to test the Advanced Compress (AC) for 11g Data Guard. When the AC is turned on, the archived log files are supposed to be compressed on the primary database server and sent over SQL*Net, then decompressed on the standby db server. We will see the file sizes are the same on both primary and standby servers. I want to verify that the AC works by monitoring how much data are sent over SQL*Net. Per Oracle, AC uses 35% less of the bandwith. That means the size of the files transferred should be at least 65% of the original size.
    Is there a way to find out the size through Oracle utilities? If not, how to find out by OS utilities? OS is Solaris 5.10.
    Thanks.

    I'm not sure this can be done via SQL*Net, but a network packet sniffer between the two servers should be able to help - you might want to contact your network team.
    HTH
    Srini

  • Moving Default Trace File in SQL Server

    How can I move the default trace file in SQL server?
    SQL Server 2012?
    Thanks in advance
    ebro

    Please have a look at these links:
    Change path for default SQL Server trace
    Steps to change the default location of SQL Server /SQL Server Agent - Error log files
    DETERMINING DEFAULT TRACE LOCATION
    Collecting the Information in the Default Trace
    T-SQL Articles
    T-SQL e-book by TechNet Wiki Community
    T-SQL blog

Maybe you are looking for

  • Web Dynpro ABAP

    Hi, I would like to test Web Dynpro ABAP applications in ecc6.0 System. When I test its giving following error. Service cannot be reached What has happened? URL http://192.111.11.11:8000/sap/bc/webdynpro/sap/ccmsbi_wast_extr_testenv call was terminat

  • HP Ext dvd drive (EXT MB CRADLE P07456 CNU402170K​, 4K0412 Rev V1.01)

    I have an HP Ext dvd drive (EXT MB CRADLE P07456 CNU402170K​, 4K0412 Rev V1.01) but I can't plug into HP elitebook 840, please assist on how can I use this drive thanksregards    

  • Cannot open DNG files in Photoshop CS6 from Lightroom 4 (Win7)

    Cannot open RAW files in photoshop from Lightroom. Best regards Adda

  • ITunes64Setup complains that itouch needs 64 bit version

    i just reinstalled from iTunes64Setup.exe on my win-7 64 bit host. when i plug in my ipod touch, i get a pop-up that says: This iPod cannot be used because the required software is not installed.  Run the  iTunes installer to remove iTunes.  then ins

  • Please Wait Screen Delay

    Hello, I have a Toshiba Satellite running on windows 8.1 Whenever I get logged out or anything that requires me to log in to my account I either get a "Please Wait" screen that lasts about 5 minutes until it lets me log in or a blank screen that only