In addition to my previous post: I noticed that the number of sql*net waits are the same as the number of fetches. So most probably the waits are indeed happening between the fetch calls. Also, the time spend on sending the rows to the application server (sql*net message to client) only takes 0.01 second for all the waits, meaning that just reducing the number of round trips will not help you. Something is happening on the application server. Either it is very slow in processing the records already send to it or there is a network problem from your application server to your db server (as the sending from the db server to the application server is happening fast) regards, Freek D'Hooge Uptime Oracle Database Administrator email: freek.dhooge@xxxxxxxxx tel +32(0)3 451 23 82 http://www.uptime.be disclaimer: www.uptime.be/disclaimer --- From: oracle-l-bounce@xxxxxxxxxxxxx [oracle-l-bounce@xxxxxxxxxxxxx] On Behalf Of D'Hooge Freek [Freek.DHooge@xxxxxxxxx] Sent: 31 March 2011 08:01 To: lyallbarbour@xxxxxxxxxxxxxxx; oracle-l@xxxxxxxxxxxxx Subject: RE: TKPROF output Hi, The main wait time is "sql*net message from client", meaning that you are waiting on response from the aplication server. Can you check in the raw trace file if these waits are happening between the fetches or not? If they are happening between the fetches, it means that the application server is slow to request more rows from the query result. Reason for this could be some processing that happens on the application server or maybe a network problem (like a wrong dns server on the application server). If the waits are happening after all the fetches are completed, then these waits are probably not relevant (unless you are sure that the trace was stopped at the moment the application showed the result of the query). How did you trace this session? regards, Freek D'Hooge Uptime Oracle Database Administrator email: freek.dhooge@xxxxxxxxx tel +32(0)3 451 23 82 http://www.uptime.be disclaimer: www.uptime.be/disclaimer-- //www.freelists.org/webpage/oracle-l