Estimated time for a query execution -- URGENT PLEASE

Hi,
I am interested in knowing the time of execution of a query before actually running it. Is there any stored procedures/methods that gives us this feature.
Thanks.

Without actually running the query, there's no way to find out how long it will take to run. I'm not even sure that there's a theoretical way to do this.
You can use the v$long_ops table to see roughly how far along a long-running query is while it's running.
Justin

Similar Messages

  • Run time for a query

    Hello all,
    Can you please tell me how can I see the total running time for a query?
    What other transactions besides ST03 and RSRT with statistics on?
    Points will be assigned
    Thanks
    Ramona

    Hi........
    You can use ST03N -> BW System Load
    Depending on the time frame you select, you get historical data or
    current data.
    To get to a specific query you need to drill down using the InfoCube
    name
    Use Aggregation Query to get more runtime information about a
    single query. Use tab All data to get to the details.
    (DB, OLAP, and Frontend time, plus Select/ Transferred records,
    plus number of cells and formats)
    Also You can get it in RSRT,RSRTQ...
    WE07  IDoc statistics 
    DB20  Update DB Statistics 
    Regards,
    Debjani........
    Edited by: Debjani  Mukherjee on Sep 25, 2008 2:42 PM

  • Data Driven Subscriptions Error - the query processor could not start the necessary thread resources for parallel query execution

    Hi,
    We are getting the following error when certain data driven subscriptions are fired off: "the query processor could not start the necessary thread resources for parallel query execution".  I've read other posts that have the same error, and
    the solution usually involves adjusting MaxDOP to limit the number of queries that are fired off in parallel.  
    Unfortunately, we cannot change this setting on our server for performance reasons (outside of data driven subscriptions, it negatively impacts our ETL processing times).  We tried putting query hints like "OPTION (MAXDOP 2);" in the reports
    that are causing the error, but it did not resolve the problem.
    Are there any settings within Reporting Services that can be adjusted to limit the number of subscriptions that get fired off in parallel?
    Any help is appreciated - thanks!

    Yes, that is correct.  It's a painful problem, because you don't know which specific subscription failed. For example, we have a data driven subscription that sends out about 800 emails. Lately, we've been having a handful of them fail. You don't know
    which ones out of the 800 failed though, even from the RS log files - all it tells you is that "the
    query processor could not start the necessary thread resources for parallel query execution".
    Thanks, I'll try changing <MaxQueueThreads> and will let you know if it works.
    On a side note: I've noticed that it is only reports with cascading parameters (ex. where parameter 2 is dependent on the selection from parameter 1) that get this error message...

  • Estimated Time for 100% Battery?

    Hi,
    I have a MacBook Pro 15 inch (2011 model) for three months now and I'm just wondering, what is the "normal" estimated time for 100% charged battery on this model of MBP (provided that the wifi is on and screen brightness is at 50%)? Mine is saying 6 hours and 10 minutes. Is that normal?
    Regards,
    Jay

    Thanks, I'll give it a go! Btw, can you please tell me what is your full charge capacity? (Maybe that has something to do with my reduced battery life?) Mine is saying 6633mAh.
    p.s. you can find this by clicking on apple icon (top left corner) > about this mac > more info > power (on the left pane)  - it should then show details of full charge capacity on the right
    Cheers,
    Jay

  • Significant difference in response times for same query running on Windows client vs database server

    I have a query which is taking a long time to return the results using the Oracle client.
    When I run this query on our database server (Unix/Solaris) it completes in 80 seconds.
    When I run the same query on a Windows client it completes in 47 minutes.
    Ideally I would like to get a response time equivalent on the Windows client to what I get when running this on the database server.
    In both cases the query plans are the same.
    The query and plan is shown below :
    {code}
    SQL> explain plan
      2  set statement_id = 'SLOW'
      3  for
      4  SELECT DISTINCT /*+ FIRST_ROWS(503) */ objecttype.id_object
      5  FROM documents objecttype WHERE objecttype.id_type_definition = 'duotA9'
      6  ;
    Explained.
    SQL> select * from table(dbms_xplan.display('PLAN_TABLE','SLOW','TYPICAL'));
    PLAN_TABLE_OUTPUT
    | Id  | Operation          | Name      | Rows  | Bytes |TempSpc| Cost (%CPU)|
    |   0 | SELECT STATEMENT   |           |  2852K|    46M|       | 69851   (1)|
    |   1 |  HASH UNIQUE       |           |  2852K|    46M|   153M| 69851   (1)|
    |*  2 |   TABLE ACCESS FULL| DOCUMENTS |  2852K|    46M|       | 54063   (1)|
    {code}
    Are there are configuration changes that can be done on the Oracle client or database to improve the response times for the query when it is running from the client?
    The version on the database server is 10.2.0.1.0
    The version of the oracle client is also 10.2.0.1.0
    I am happy to provide any further information if required.
    Thank you in advance.

    I have a query which is taking a long time to return the results using the Oracle client.
    When I run this query on our database server (Unix/Solaris) it completes in 80 seconds.
    When I run the same query on a Windows client it completes in 47 minutes.
    There are NO queries that 'run' on a client. Queries ALWAYS run within the database server.
    A client can choose when to FETCH query results. In sql developer (or toad) I can choose to get 10 rows at a time. Until I choose to get the next set of 10 rows NO rows will be returned from the server to the client; That query might NEVER complete.
    You may get the same results depending on the client you are using. Post your question in a forum for whatever client you are using.

  • Query Execution Time for a Query causing ORA-1555

    dear Gurus
    I have ORA-01555 error , earlier I used the Query Duration mentioned in Alert Log and increased the Undo Retention as I did not find th UnDOBLKS column of v$undostat high for the time of occurence of ORA-01555..
    But new ORA-01555 is coming whose query duration exceeds Undo Retention time..
    My question -
    1. Is it possible to accurately find the query duration time besides the Alert Log file ?

    abhishek, as you are using an undo tablespace and have already increased the time that undo data is retained via undo_retention then you might want to consider the following ideas which were useful with 1555 error under manual rbs segment management.
    1- Tune the query. The faster a query runs the less likely a 1555 will occur.
    2- Look at the processing. If a process was reading and updating the same table while committing frequenctly then the process under manual rbs management would basically create its own 1555 error rather than just being the victum of another process changing data and the rbs data being overlaid while the long running query was still running. With undo management the process could be generating more data than can be held for the undo_retention period but because it is committed Oracle has been told it doesn't really have to keep the data for use rolling back a current transaction so it gets discarded to make room for new changes.
    If you find item 2 is true then separating the select from the update will likely eliminate the 1555. You do this by building a driving table that has the keys of the rows to be updated or deleted. Then you use the driver to control accessing the target table.
    3- If the cause of the 1555 is or may be delayed block cleanout then select * from the target prior to running the long running query.
    Realistically you might need to increase the size of the undo tablespace to hold all the change data and the value of the undo_retention parameter to be longer than the job run time. Which brings up back to option 1. Tune every query in the process so that the job run time is reduced to optimal.
    HTH -- Mark D Powell --
    dear mark
    Thanks for the excellent advise..I found that the error is coming because of frequent commits..which is item 2 as u righly mentioned ..
    I think I need to keep a watch on the queries running , I was just trying to find the execution time for the queries..If there is any way to find the query duration without running a trace ..
    regards
    abhishek

  • How to change the view criteria at run time for af:query

    Hi,
    I've a usecase where I need to change the view criteria of the af:query at run time.
    Use case:
    =======
    1) Consider a check box (Show Emps Under Dept 10) in the query panel when user selects and clicks 'Search' button should show the employees under dept 10. If user searches without selecting the check box, the results should show all the employees in all the departments.
    2) I need to have a check box always in the query panel. Its mandatory.
    The way I implemented:
    ==============
    1) Created a transient variable 'Show Emps Under Dept 10' in the EmployeeVO and also created a bind variable bind_DeptNo.
    2) Create a view criteria 'AllEmployees' which has only the transient attribute as the view criteria item and whose value set to 'false' by default.
    3) Created another view criteria 'EmpUnderDept' which has 'DepartmentId' as the view criteria item and whose value set to the bind variable 'bind_DeptNo'.
    4) Dropped the view criteria 'EmpUnderDept' as the 'af:query' panel in the jspx page.
    5) Overridden the queryListener as '#{EmpBean.empSearch}'
    6) Has the below code in the empSearch method as below. When user selects the check box, applying the other criteria 'EmpUnderDept' and setting the bind variable to '10'.
    public void empSearch(QueryEvent queryEvent) {
    // Add event code here...
    QueryDescriptor queryDesc = (QueryDescriptor) queryEvent.getDescriptor();
    ConjunctionCriterion conCrit = queryDesc.getConjunctionCriterion();
    List<Criterion> criterionList = conCrit.getCriterionList();
    List criterionValues = new ArrayList();
    Object criteriaValue = null;
    int criteriaNo = 0;
    DCBindingContainer bc = (DCBindingContainer)BindingContext.getCurrent().getCurrentBindingsEntry();
    FacesContext facesContext = FacesContext.getCurrentInstance();
    for (Criterion criterion : criterionList) {
    AttributeDescriptor attrDescriptor = ((AttributeCriterion)criterion).getAttribute();
    System.out.println("============== attrDescriptor.getName() =================== " + attrDescriptor.getName());
    criteriaValue = ((AttributeCriterion)criterion).getValues().get(0);
    if(criteriaNo==0) {
    Boolean val = (Boolean) ((AttributeCriterion)criterion).getValues().get(0);
    if (val.equals(true)) {
    OperationBinding method = (OperationBinding) ADFUtil.findOperation("ExecuteWithParams");
    if(method!=null) {
    Map params = method.getParamsMap();
    //params.put(key, value)
    method.getParamsMap().put("bind_DeptId", 10L);
    method.execute();
    ADFUtil.invokeMethodExpression( "#{bindings.EmpUnderDeptCriteiaQuery.processQuery}", queryEvent);
    } else {
    //ADFUtil.invokeEL("#{bindings.ExecuteWithParams.execute}");
    ADFUtil.invokeMethodExpression( "#{bindings.AllEmployeesCriteriaQuery.processQuery}", queryEvent);
    But this approach is not working and its always showing all the employees in all the departments.
    Please let me know if there is a way to change the view criteria at run time depending on the values set at run time for one of the view criteria items.
    JDev version am using is '11.1.1.5'
    Thanks,
    Lakshman

    Hi Shay,
    It worked for me without overriding the executeQuery() method in the ViewImpl.java.
    Instead of creating 2 view criteria, I created only one which has both transient variable and the DepartmentId = <bind_DeptId>. With the above code, it worked properly. Now I am using only one view criteria.
    Thank you.

  • Results showing the same output for any query execution

    Guru's
    Whenever user selects  query in RSRT --> and click on java view it is prompting for user ID and password. After giving the login credentials, the out put remains the same for any query query as input. Please let me know how can we fix this? THis is occuring for only one user. Even I tried copying the user to a new user. THe new user is not facing this problem.
    Regards,
    Suresh

    try clearing the portal cache then try it. ask somebody else to log in and try it, could be authorization.

  • Does XmlResults includes sub-node for EAGER query execution type?

    If to query elements and eager query execution type is set, would XmlResultset contain sub-elements as well?
    If yes, is there a way to return element without sub-element? Also, I can't actually use lazy evaluation right now as it crashes the Python.

    Hi Phillipe,
    As long as you are using a NodeContainer storage model, DB XML will not pull any sub-elements into memory until you ask for them - it lazily manifests them. This is therefore not a problem that you need to worry about.
    I'm sure that lazy evaluation works in Python. If you are seeing problems here, you may have to post code before anyone can help you.
    John

  • Validate/madatory  in order to avoid  long time for the program execution.

    Below is my selction screen.  I would like to do validations for specific fields to make them mandatory fields   as well.
    Could you please suggeste me what are the fields that I can validate/madatory  in order to avoid  long time  for the program  run.
    *Program selections
    SELECTION-SCREEN : BEGIN OF BLOCK b1 WITH FRAME TITLE text-h01.
    SELECT-OPTIONS : o_as4loc   FOR v_as4local,
                     o_ddlang   FOR ddlanguage,
                     o_vkorg    FOR vkorg     MEMORY ID vko,
                     o_auart    FOR auart              MEMORY     ID aat,
                     o_fdnam    FOR fdnam,
                     o_spart    FOR spart   MEMORY ID spa,
                     o_vbeln    FOR vbeln            MEMORY ID aun,
                     o_posnr    FOR posnr,
                     o_matnr    FOR matnr            MEMORY ID mat,
                     o_pltyp    FOR pltyp            MEMORY ID vpl,
                     o_j_3ar    FOR j_3arqda,
                     o_kzr00    FOR kbetr,                       " -ZR00
                     o_kalsm    FOR kalsmasd,
                     o_kmwst    FOR kbetr,                       " -MWST
                     o_kbmen    FOR kbmeng,
                     o_land1    FOR land1            MEMORY ID LND
    SELECTION-SCREEN  : END OF BLOCK b1.
    Thanks in advance.

    Hi,
    Make key fields as well as fields on which there in an index in the database table mandatory.
    Regards,
    Abhijit G. Borkar

  • Estimated time for iTunes 9.1.1 download is 26 hours!?

    Every time I try to download the new iTunes (which I need to work my iPhone) it takes abnormally long to download!
    So I decided to go on apple.com and download it straight from there. All in all - it begins to download - Estimated time: 6 hours... 13 hours... 26 hours!!!
    It stopped at 26 hours.
    That is insanely long!
    I downloaded it on my laptop, and it took max half and hour.
    What is going on with my computer and itunes?

    it also did not work for me.
    I opened a separate thread for that:
    http://discussions.apple.com/thread.jspa?threadID=2415960
    also sent a bug report to http://www.apple.com/feedback/itunesapp.html to increase Apple's awareness on this very annoying issue.

  • TS3992 I purchased more cloud storage but it will not back up. Seems stuck. Just says estimating time for back up but never moves.

    I purchased more cloud space but since then have not been able to back up. I press back up and it says back up starting and it says time for back up but nothing happens. No time given and no back up done.

    I tried the steps to reformat my external Hdrive, creating a partion etc using GUID partition scheme.
    still nothing. Every hour Time Machine starts up says preparing, then stops and no back ups are made.
    HELP!!
    Message was edited by: eastwooddesign

  • How to estimated time for oracle sql query

    i have query run every month on production server to collect some information
    data size is difference every month
    what i need to estimate the time before running
    how can i do that

    sorry this is what i get
    when i caculate time column it give me 10 sec
    but when i make this
    SQL> set timing on;
    SQL> select * from tab;
    3658 rows selected.
    Elapsed: 00:00:05.50
    so whay in the first give me 10 sec and the secand give me 5.50 sec
    SQL> explain plan for select * from tab;
    Explained.
    SQL> select * from table(dbms_xplan.display);
    PLAN_TABLE_OUTPUT
    Plan hash value: 457676135
    | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
    | 0 | SELECT STATEMENT | | 1243 | 104K| 182 (4)| 00:00:03 |
    | 1 | NESTED LOOPS OUTER | | 1243 | 104K| 182 (4)| 00:00:03 |
    |* 2 | TABLE ACCESS FULL | OBJ$ | 1243 | 98197 | 142 (5)| 00:00:02 |
    | 3 | TABLE ACCESS CLUSTER| TAB$ | 1 | 7 | 1 (0)| 00:00:01 |
    |* 4 | INDEX UNIQUE SCAN | I_OBJ# | 1 | | 0 (0)| 00:00:01 |
    PLAN_TABLE_OUTPUT
    Predicate Information (identified by operation id):
    2 - filter("O"."TYPE#"<=5 AND "O"."OWNER#"=USERENV('SCHEMAID') AND
    "O"."TYPE#">=2 AND "O"."LINKNAME" IS NULL)
    4 - access("O"."OBJ#"="T"."OBJ#"(+))
    18 rows selected.
    SQL>
    Edited by: 862640 on Nov 27, 2011 1:43 AM
    Edited by: 862640 on Nov 27, 2011 1:49 AM
    Edited by: 862640 on Nov 27, 2011 1:53 AM

  • Is it possible to limit the execution time for a query?

    I have an application that will run a query to gather statistics. The time window is defined by the user. Since the polling period for data collection varies, it is not possible to say that a large time window will result in a large resultSet. I may have a polling period of 1 minute or a polling period of 1 hour.
    I want to avoid a user executing a query that will consume too many resources and inpact the system's performce in general. Could I stop a query after it takes more that x secs? Is there a way to write an sql statement indicating the max response time? similar to rownum?

    You can also create an Oracle profile with limited resources and assign it to the Oracle account running the queries (this profile will be used for all queries run by the corresponding user). Resources can only specifed in cpu time (not elapsed time) or logical reads.
    See http://download-uk.oracle.com/docs/cd/B10501_01/server.920/a96521/users.htm#15451
    and http://download-uk.oracle.com/docs/cd/B10501_01/server.920/a96540/statements_611a.htm#2065932

  • SYS_REFCURSOR takes more time than direct query execution

    I have a stored proc which has 4 inputs and 10 output and all outputs are sys_refcursor type.
    Among 10 ouputs, 1 cursor returns 4k+ records and all other cursors has 3 or 4 records and average 5 columns in each cursors. For this, it takes 8 sec to complete the execution. If we directly query, it gives output in .025 sec.
    I verified code located the issue with cursor which returns 4k+ only.
    The cursor opening from a temporary table (which has 4k+ records ) without any filter. The query which inserted into temporary is direct inserts only and i found nothing to modify there.
    Can anyone suggest, how we can bring the results in less than 3 sec? This is really a challenge since the code needs to go live next week.
    Any help appreciated.
    Thanks
    Renjish

    I've just repeated the test in SQL*Plus on my test database.
    Both the ref cursor and direct SQL took 4.75 seconds.
    However, that time is not the time to execute the SQL statement, but the time it took SQL*Plus in my command window to print out the 3999 rows of results.
    SQL> create or replace PROCEDURE TEST_PROC (O_OUTPUT OUT SYS_REFCURSOR) is
      2  BEGIN
      3    OPEN  O_OUTPUT FOR
      4      select 11 plan_num, 22  loc_num, 'aaa' loc_nm from dual connect by level < 4000;
      5  end;
      6  /
    Procedure created.
    SQL> set timing on
    SQL> set linesize 1000
    SQL> set serverout on
    SQL> var o_output refcursor;
    SQL> exec test_proc(:o_output);
    PL/SQL procedure successfully completed.
    Elapsed: 00:00:00.04
    SQL> print o_output;
      PLAN_NUM    LOC_NUM LOC
            11         22 aaa
            11         22 aaa
            11         22 aaa
            11         22 aaa
            11         22 aaa
    3999 rows selected.
    Elapsed: 00:00:04.75
    SQL> select 11 plan_num, 22  loc_num, 'aaa' loc_nm from dual connect by level < 4000;
      PLAN_NUM    LOC_NUM LOC
            11         22 aaa
            11         22 aaa
            11         22 aaa
            11         22 aaa
            11         22 aaa
            11         22 aaa
    3999 rows selected.
    Elapsed: 00:00:04.75
    That's the result I expect to see, both taking the same amount of time to do the same thing.
    Please demonstrate how you are running it and getting different results.

Maybe you are looking for