SQL * Net more data from client wait event

Hi all

DB 11.2.0.2

AIX 6

I get two events of high expectation of the AWR report page

(1) SQL * Net more data from client

synchronization of log files 2)

Need advice to the configuration of the hardware and network latency?

What should I do for the first event of waiting?

This simple average may, what they're doing massive data loads with a very large table size that the Oracle Server manages very effectively but necessarily expect much coming data of the customer and parallel large log files written to end on the validation.  It is possible that setting a large SDU and tcp large transmiat and receive buffers would help if this happens to be what they do; Similarly, if that's what they do, then reduce their size of table can also have some effect.

Concerning

Jonathan Lewis

Tags: Database

Similar Questions

  • Lock on a table and SQL * Net more data from client

    Hello

    I have a problem loading data through Php in Oracle: web page of Php open an xml file, create a .csv, then begins to Oracle using an external table to process the data.

    The problem is that, the second time that PHP is trying to run the following query:

    INSERT INTO table1 T (Field1, Field2, field3, field4, sphere5, case field6) VALUES ('Aaa1E63819707', SYSDATE, 'KO', 'error', 'L', 'file_name.xml') POLL INTO Field1: id

    on the Oracle sessions, I have an exclusive lock on table1 and wait for SQL * Net more data from client.

    Where is the problem?

    Thank you

    Igor

    Finally I found the problem: a DBA changed the cursor sharing EXACT force! I restored the CORRECT setting and now everything is fine.

    Thank you

    Bye,.

    Igor

  • SQL loader loading data from legacy to Oracle

    Hello

    We have a requirement that we have to import legacy data to oracle AR. We know we have to put the data file in the BIN folder, but I want to know the source of data file if we put in the windows folder instead of the directory BIN will be SQL loader retrieves the file and loads the data.

    Thank you
    THERE

    Yes,

    Refer to this

    http://www.Oracle.com/technology/products/database/utilities/htdocs/sql_loader_overview.html

    * Load data across a network. This means that SQL * Loader client can be run on a different system that is running the SQL * Loader server.
    * Load the data from several data during the same load session files
    * Load data into multiple tables in the same load session
    * Specify the character set of the data
    * Selectively load data
    * Load the data from the disk, tape, or named pipe
    * Specify the character set of the data
    Generate reports of sophisticated, error that greatly helps troubleshooting
    Load arbitrarily complex object-relational data
    * Use either conventional path loading or direct.

    Arun-

  • SQL to retrieve data from the day before

    Hello

    I am asked to collect intelligence data and generate a daily report to determine the success rate (to do daily data that determines success rate). I have a session_time of column (with the DATE data type) that I try to do the job. I've been using:

    Select * from ABC

    where session_time > = TRUNC (SYSDATE - 2)

    Gives me data, but I get the data from 26/10/14 and 10/28/14 so when I only need data on 27-10-14 (as of the day 28/10/14). I tried a few variations and did not get the expected result. Could someone please help me understand this? Time is also displayed in my outings, maybe I shouldn't include the time?

    I use: TOAD for Oracle 11.5.1.2.

    Oracle Database 11g Enterprose 11.2.0.1.0 Edition

    Thank you in advance.

    Hello

    2632048 wrote:

    Hello

    I am asked to collect intelligence data and generate a daily report to determine the success rate (to do daily data that determines success rate). I have a session_time of column (with the DATE data type) that I try to do the job. I've been using:

    Select * from ABC

    where session_time > = TRUNC (SYSDATE - 2)

    Gives me data, but I get the data from 26/10/14 and 10/28/14 so when I only need data on 27-10-14 (as of the day 28/10/14). I tried a few variations and did not get the expected result. Could someone please help me understand this? Time is also displayed in my outings, maybe I shouldn't include the time?

    I use: TOAD for Oracle 11.5.1.2.

    Oracle Database 11g Enterprose 11.2.0.1.0 Edition

    Thank you in advance.

    Use:

    SELECT *.

    ABC

    WHERE session_time > = TRUNC (SYSDATE) - 1

    AND session_time<  trunc="">

    ;

    It's 09:15 on October 28, 2014, then TRUNC (SYSDATE - 2) is 00:00:00 October 26; The query you posted became data of October 26 and later.  (You may not all future dates in your table.)

    If it's 09:15 October 28, then TRUNC (SYSDATE) is 00:00:00 October 28 (i.e., midnight, at the beginning of October 28) and TRUNC (SYSDATE) - 1 is 00:00:00 October 27.

    Do not be tempted to use

    WHEN TRUNC (session_time) = TRUNC (SYSDATE) - 1 * INEFFECTIVE!  ***

    It will get the same results, but it is slower, you cannot use an index on session_time and requires a call to separate function for each row in the table, it is selected or not.

  • IPC vs SQL * Net connection

    Hi all

    My database is currently running on windows 2008 EE 10.2.0.4 (with all service packs). On the same machine, I have several workers (implemented as a windows service) written in c# .net using the latest drivers ODP.NET.
    To improve performance, I use PKI connection so that the TCP stack (which is used in the sqlnet connections "regularly") is shorted. I confirmed that ICP is actually currently in use:

    H4. Journal of the listener
    13-NOV-2009 03:01:34 * (CONNECT_DATA=(SERVER=DEDICATED)(SID=orclwin)(CID=(PROGRAM=C:\Simulation\Agent.exe)(HOST=WIN2008EE)(USER=LOCAL?SERVICE))) * (ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC0ipc)) * establish * orclwin * 0
    13-NOV-2009 03:01:34 * (CONNECT_DATA=(SERVER=DEDICATED)(SID=orclwin)(CID=(PROGRAM=C:\Simulation\Agent.exe)(HOST=WIN2008EE)(USER=LOCAL?SERVICE))) * (ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC0ipc)) * establish * orclwin * 0
    13-NOV-2009 03:01:34 * (CONNECT_DATA=(SERVER=DEDICATED)(SID=orclwin)(CID=(PROGRAM=C:\Simulation\Agent.exe)(HOST=WIN2008EE)(USER=LOCAL?SERVICE))) * (ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC0ipc)) * establish * orclwin * 0
    13-NOV-2009 03:01:35 * (CONNECT_DATA=(SERVER=DEDICATED)(SID=orclwin)(CID=(PROGRAM=C:\Simulation\Agent.exe)(HOST=WIN2008EE)(USER=LOCAL?SERVICE))) * (ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC0ipc)) * establish * orclwin * 0
    13-NOV-2009 03:01:35 * (CONNECT_DATA=(SERVER=DEDICATED)(SID=orclwin)(CID=(PROGRAM=C:\Simulation\Agent.exe)(HOST=WIN2008EE)(USER=LOCAL?SERVICE))) * (ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC0ipc)) * establish * orclwin * 0
    13-NOV-2009 03:01:35 * (CONNECT_DATA=(SERVER=DEDICATED)(SID=orclwin)(CID=(PROGRAM=C:\Simulation\Agent.exe)(HOST=WIN2008EE)(USER=LOCAL?SERVICE))) * (ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC0ipc)) * establish * orclwin * 0
    13-NOV-2009 03:01:35 * (CONNECT_DATA=(SERVER=DEDICATED)(SID=orclwin)(CID=(PROGRAM=C:\Simulation\Agent.exe)(HOST=WIN2008EE)(USER=LOCAL?SERVICE))) * (ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC0ipc)) * establish * orclwin * 0
    13-NOV-2009 03:01:35 * (CONNECT_DATA=(SERVER=DEDICATED)(SID=orclwin)(CID=(PROGRAM=C:\Simulation\Agent.exe)(HOST=WIN2008EE)(USER=LOCAL?SERVICE))) * (ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC0ipc)) * establish * orclwin * 0
    However, when I look at the awr report I see sqlnet expected on top:

    H4. AWR waits Albums
    Top 5 Timed Events                                         Avg %Total
    ~~~~~~~~~~~~~~~~~~                                        wait   Call
    Event                                 Waits    Time (s)   (ms)   Time Wait Class
    ------------------------------ ------------ ----------- ------ ------ ----------
    SQL*Net message to client         3,014,783   5,086,969   1687 ######    Network
    SQL*Net more data to client       1,712,644   2,441,249   1425 ######    Network
    log file sync                       695,446      75,297    108 ######     Commit
    log file parallel write             679,437      33,288     49  916.9 System I/O
    db file parallel write               49,057      22,149    452  610.1 System I/O
    I read the ticket of Taner Poder [http://blog.tanelpoder.com/2008/02/07/sqlnet-message-to-client-wait-gotcha/] about SQNet message to the customer
    and his other observations on the SQLNet more data to the client [http://blog.tanelpoder.com/2008/02/10/sqlnet-message-to-client-vs-sqlnet-more-data-to-client/]
    to get the best understanding of them.

    The question is why observe specific SQLNet connection is when you use IPC connections?

    I enjoy all the comments.
    Thank you
    Rafal.

    Oh yes - one comment more.

    So that the server process indicate if the wait is over TCP/IP or IPC, he needs to know the mechanism of transport used.

    It is very likely that the wait event is registered by the server process when it is calling its send() data to the client API. As he calls the send(), it records that the current wait state. He has no idea what the underlying code uses as a transport mechanism. In server code and client, the transport layer is one of the lower layers. So earlier in the application code, you don't know what is the actual transport (remember that Oracle also support, or has supported, other layers of communication such as Lu6.2).

    So the application layer, you deal with the transport layer as a bit of a black box. In the Oracle terminology, this is called SQL * Net layer. And may be something that implements the transport layer.

    So, this is why it is dangerous to make assumptions that pending top-level State indicates what a low level wait state is.

  • Fact ' SQL * Net client message' indicate that the network is not good?

    The report below 10046 trace, I have just issued a query to extract all records from a table with about 400 K records, but it took more than 3 minutes to recover all data.
    Most of the time when waiting for SQL * Net message from client.
    This indicates that the network is not good?


    SQL ID: d84ta7m8h6wg2
    Plan of Hash: 3635621446
    Select * from XXXXXXXXXXXXXXXXX


    call the query of disc elapsed to cpu count current lines
    Parse 1 0.00 0.00 0 0 0 0
    Run 1 0.00 0.00 0 0 0 0
    Fetch 855 0.88 0.10 0 7912 0 426721
    Total 857 0.10-0.88 0 7912 0 426721

    Chess in the library during parsing cache: 0
    Optimizer mode: ALL_ROWS
    The analysis of the user id: 123

    Rows Row Source operation
    426721 TABLE ACCESS FULL XXXXXXXXXXXXXXX (cr = 7912 pr = 0 pw = time 0 = 467817 u)
    s cost = 1847 size = map 46080540 = 415140)


    Elapsed time are waiting on the following events:
    Event waited on times expected maximum wait the Total WHEREAS

    SQL * Net message to client 856 0.00 0.00
    SQL * Net client message 856 3.71 179.63
    Disk file I/O 1 operations 0.00 0.00
    SQL * Net more data to the client 5224 0.37 0.46

    Published by: NathanielNie on January 24, 2013 16:40

    Run you the same Oracle_Home SQL and Server query as the ETL engine? (Want to use the same libraries and host and network such as ETL).

    The large data sets in ETL can be assembled with network optimization. Some of it is on the physical network layer (for example having a dedicated private network or a switched network between the ETL and the DB server), some of them can be found on the configuration settings (arraysize, configuring TCP settings to the OS layer, etc.) or libraries (for example JDBC libraries). Some of them may simply be patches to fix bugs!

    Hemant K Collette

  • How to send data from the client to the server using tcp

    1. as I am new to watch I need help with sending data from client to server. I went through various examples of labview, but each of them also explains transfer of data to the client server. But I need help regardng send data from the server to the client.

    2.i would use the data type variant for sending my data.

    Can someone help me please. Thank you

    Regardless of the meaning. Once you have a connection each end allows it to send data to another. Just create what you want to look like interaction.

    Do you want the client sends a command that request data?
    How do you think the response data to look like?

    You can send variants, but probably not worth the effort.

    Mike...

  • I downloaded Microsoft Money Plus sunset and want to transfer the data from the files Microsoft Money 2005. Is this possible?

    I am using Windows 7 and have accounts with MSN Money 2005 and I try to have more data from the Money 2005 file updated in a format that is compatible with the money, and I can use the money more

    See the information displayed by SpiritX MS MVP in the http://answers.microsoft.com/en-us/feedback/forum/user/microsoft-money-question/13ef1581-2dfd-45fc-85ba-92cbcade313a thread

  • Wait for the event begins with SQL * Net message from client-time wait 178577 units

    Hello

    I'm watching events waiting for a request from long time in TOAD.
    I start the query on an instance of TOAD, and open the browser to log on to another instance.
    But I am surprised to see that in "TOtal expected" on the RIGHT part->
    SQL * Net message from client is the longest time and is already - > 178577 units while I just to start the query.

    Considering that, in the current waiting she shows DB file scattered read correctly for a few seconds.

    Please suggest.

    user8941550 wrote:
    Hello. No explanation for this... :-(

    Hello

    people work here, you don't know?
    I think Tom Kyte explains it well enough. This wait event is linked to your session database waiting for the guest to say to do something.

    So it is not related to the database, but to your application.
    Also as it is a wait of session event you might have had your session inactive for some time (do nothing)

    If you want to check the waiting events correctly I suggest using tkprof and start a new session in SQL more as shown by Tom Kyte in the link I posted.

    Then, run your query in sqlplus setting track and pull it out as soon as your statement is completed.
    that is to say:

    -- myest.sql
    alter session set events '10046 trace name context forever, level 12';
    SELECT ... -- your query here
    exit
    

    Run in sqlplus in this way:

    sqlplus user/password@db @mytest.sql
    

    Then check with tkprof.

    Kind regards.
    Al

  • Wait events, SQL * Net message from client

    Hi all

    I have a doubt about oracle wait events, specifically of "SQL * Net message from client. I've read a lot about this, I've seen some say that network and other material resources can provoke him, and saw that the problems in the application code can cause it too. I am tracking a few tests here and I don't have that chooses are the double event, usually a lot of SQL * Net message to client waiting (I used sqlplus, developer sql and pl/sql). Can someone explain to me why? Another question is where this wait type cause interference, meet it demand for the database and stays on hold and do not meet another request so that the wait is over, is it? The waiting just finish when the application closes the database connection or there is another way to end the waiting?

    Since then, thank you very much.

    Hello

    chooses double what usually causes a lot of SQL * Net message to client waiting

    Do you run them from your server applications or from the DB server itself?

    "SQL * Net client message" is an idle wait event although he'd still explain to the elapsed time of the query.

    It indicates only that the database is waiting for the other entries of the customer and when he expects the DB, those expectations get incremented.

    I suggest you explore size SDU, RECV_BUF_SIZE, and SEND_BUF_SIZE parameters.

    http://docs.Oracle.com/CD/B19306_01/network.102/b14212/performance.htm

    Kind regards

    Suntrupth

  • SQL * Net message from client

    Hi all

    I have a session that runs longer than usual. Instead of filling in 20 minutes, he was running for about 2 hours.

    Initial review of show expected that the session was waiting on this SQL * Net client message for a piece of time.

    The session state was idle, while the State changed pending work very frequently.

    I had activated track and found the bottom of the entries in the trace file.

    EXEC #11529215044976967776:c = 0, e = 1944, p = 0, cr = 11, cu = 3, set = 0, r = 0, dep = 0, og = 1, plh is 2651636916, tim = 2309884016239

    #11529215044976967776 ERROR: err = 54 tim = 2309884016520


    TKProf reports the following

    TOTALS FOR ALL NON RECURSIVE INSTRUCTIONS

    call the query of disc elapsed to cpu count current lines

    ------- ------  -------- ---------- ---------- ---------- ----------  ----------

    Parse        0      0.00       0.00          0          0          0           0

    Run the 884 1.47 1.42 2660 9724 0 0

    Fetch        0      0.00       0.00          0          0          0           0

    ------- ------  -------- ---------- ---------- ---------- ----------  ----------

    884 total 1.47 1.42 2660 9724 0 0

    I need to know what is meant by the error line in the trace file?

    We use oracle EBS 11i with 11 GR 2 db. This session belongs to a simultaneous request



    Oracle - ORA-00054: resource busy and acquire with NOWAIT specified or expired timeout - Stack Overflow

    -------------

    Sybrand Bakker

    Senior Oracle DBA

  • Several alter session and SQL * Net message from dblink in APEX

    Hello

    I have Apex 4.2.3 and I use Glassfish more listener of the Apex.

    Database is 11.2.0.4 under linux

    Looking for the session active database, I see that apex run several alter session with a lot of expectation as SQL * Net message from dblink the.

    Ex:

    ALTER session set NLS_TERRITORY = "AMERICA."

    call the query of disc elapsed to cpu count current lines

    ------- ------  -------- ---------- ---------- ---------- ----------  ----------

    Parse 58 0.00 0.00 0 0 0 0

    Run 58 0.06 3.53 267 58 0 0

    Fetch        0      0.00       0.00          0          0          0           0

    ------- ------  -------- ---------- ---------- ---------- ----------  ----------

    Total 116 0.06 3.53 267 58 0 0

    Chess in the library during parsing cache: 0

    The analysis of the user id: 277 (recursive depth: 1).

    Elapsed time are waiting on the following events:

    Event waited on times max wait for the Total WHEREAS

    ----------------------------------------   Waited  ----------  ------------

    SQL * Net message to dblink 174 0.00 0.00

    SQL * Net message from dblink 174 3.47 0.03

    ********************************************************************************


    Why he is doing a lot to change session? Why the wait is SQL * Net message from dblink the?

    We have recently to load a new language, but I'm not sure that this is the main problem.



    I think that you have the link db in the workspace schema and data requested by the Apex of this link. For example, it may be

    report which uses db link. Check dba_db_links or user_db_links for the existing links. Check if this link used by Apex.

  • Collection of data from more than an instrument via the same labVIEW program

    Hello

    I have a program whereby I collect data on a scale of and save the data in the text file. Now, I need to collect data of three identical scales and save the data. I wonder if it is possible to do so in the same program? I mean how to manage three ports and save three different text files?

    I enclose the current program. Communication with the scale series and I use VI:s. thanks in advance for the help = VISA)

    This is easily possible with a single program, and there are several ways to do so.  I recommend the following:

    1. Take data from these devices in a separate loop (this could be in a separate - VI, as well).  These loops should be state machines if you can start and stop the acquisitions in a clean way.  This assumes that the instruments are on separate ports.  If they are on the same port, you probably want to use the same loop.

    2. Write to the file in a single loop.  This, too, should be a state machine.

    3. Queues to send data from the acquisition of loops to the loop of file I/O.

    4. Use still another loop for your user interface.  It must contain a structure of the event.

    To do this, you will need to learn more about the State machines and producer/consumer architectures.  Start with the help of LabVIEW, then search these forums.  There are a multitude of implementations of State machines and producer/consumer architectures.  If you have the time, I highly recommend you learn and to use the classes in LabVIEW (requires LabVIEW 8.2 or later).  This will facilitate your work in the long term.

    Let us know if you encounter any problems...

  • Loading data from SQL to Essbase table

    Hello

    I'm loading data from SQL to Essbase table by using a rules file. Number of rows in the source table is 7 million. I use the SUNOPSIS MEMORY ENGINE as area transit, LKM SQL for SQL and SQL IKM for Hyperion Essbase (DATA).

    Question:

    1 can I not use any other LKM as MSSQL for MSSQL (PCBS) to load data to the staging instead of LKM SQL for SQL? What I have to change the transit area then? Loading data using LKM SQL for SQL seems quite slow.

    2 it is mandatory to use LKM SQL for SQL, can someone please tell me what I can change to make this quick support parameters?

    3. is it compulsory to use the SUNOPSIS MEMORY engine loading data from SQL server to Essbase?

    Thank you...

    (1) Yes, I highly recommend watching using a KM which uses native as database technology these will usually be more efficient than the generic (like LKM SQL for SQL) KM especially when large volumes of data are involved. Your staging will change depends on where you organize data for example if you are using a SQL server specific KM as - MSSQL for MSSQL (PCBS) - you must have a lay-by available on a MSSQL database and have access to the utility of PCBS.

    (2) it is not mandatory to use this KM you can use a KMs supported by your database technology

    (3) it is absolutely not obligatory to use the SUNOPSIS MEMORY engine. This should only be used when you have relatively small amounts of data, as well as all the processes in memory, or in the case where you have no other relational technology to perform the staging on. However, in your case to use wherever you are processesing these large volumes of data you should be staged on a physical such as SQL Server or Oracle database if they are available.

  • Need to transfer data from sql server at EBS

    I need to transfer data from Mirco Soft SQL server database Oracle (EBS).

    Please guide me how can I achieve this milestone in best way.

    Please provide the price of licenses of the Golden Gate and other product adapted SQL SERVER GATEWAY ect


    Thanks in advance

    There are a lot of options

    1 using SQL Server linked server is so easy
    http://www.mssqltips.com/sqlservertip/1433/how-to-setup-linked-servers-for-SQL-Server-and-Oracle-64-bit-client/
    2. use SSIS
    http://www.mssqltips.com/sqlservertip/2011/export-SQL-Server-data-to-Oracle-using-SSIS/
    3. using sqldeveloper
    http://St-curriculum.Oracle.com/OBE/DB/hol08/sqldev_migration/MSSQLServer/migrate_microsoft_sqlserver_otn.htm#T9

    hope this helps,

    concerning
    http://www.oracleracexpert.com
    ORA-19755 at the start of the recovery/DB
    | http://www.oracleracexpert.com/2009/09/ora-19755-could-not-open-change.html
    Error ORA-07445 and the reasons for which it
    http://www.oracleracexpert.com/2009/08/ora-07445-error.html

Maybe you are looking for