Point in poly tuning suggestions?

I have a static table with 250 non-overlapping polygons. I wrote a function to accept a point and perform a point in poly calculation (sdo_relate) and do nearest neighbor if no poly contains the point. An application calls this function about 1.5 million times a day. The function performs pretty well (executes about 15 times per sec.) most of the time, but falls behind during peak application times. For both resource reasons and application reasons, I can not thread this out.
Usually the application has other metadata that can narrow the list of potential polygons down to 2 or 3. I tried including this into the function by adding "where column_3 in (1,54,...)" but saw no change in performance or execution plan for that matter. The sql in the function is inside and execute_immediate statement with bind params if that matters.
The table and indexes have had stats run, and the sdo_tune.analyze_rtree reports that everything is good.
This is on a 9.2.0.4 database on a compaq dl-360 (2-cpu) running RH Linux.
Any tuning suggestions? It seems like I should be able to make it run faster driving off of the other column and only running sdo_relate against a couple of polys.

Hi,
sdo_relate always uses the spatial index, which in monolithic for the table - adding other attibutes won't limit the use of the index and relate.
If you can narrow things down to one or two geometries, you might consider use of sdo_geom.relate with the one or two geometries you've narrowed things down to. It might be worth looking at.
hope this helps - let us know.

Similar Messages

  • IIR 2.8.0.7 performance tuning suggestions / documents for Oracle 11?

    Would we have any hints or white papers that would support a customer in IIR matching server tuning for initial load performance,
    beyond the Siebel specific
    Performance Tuning Guidelines for Siebel CRM Application on Oracle Database (Doc ID 781927.1)
    which does NOT generate any statistics on the Informatica Schema?
    Customer is starting production data load into Siebel UCM of over 5 million customer records . Their current bottle neck seems to be IIR queries and high IIR host resources usage.
    This would be for Siebel 8.1.1.4 [21225] on Oracle 11.1.0.6; I currently do not know if ACR 475 with its EBC access is used or not; I'd be looking for any performance tuning suggestions on the Informatica & database side - I have not found anything helpful in the informatica knowledgebase and in the 2.8.0.7 docs the only performance tuning suggestions seem to be on IDT loads.
    Obviously performance can be influenced by the matching fields used, but this customer will be looking for performance tuning suggestions keeping the matching fields and thresholds they got approved from the business side.
    Any documents we could share?

    Hi Varad,
    Well, Oracle Metalink actually got it fixed for me! Got to give them credit.
    I ran the 1st bit of SQL they sent me and it fixed it so I think it was only cosmetic. I've enclosed all of their response in case others may find themselves in similar situation.
    Thanks again for YOUR help too.
    Perry
    ==========================================================
    1. Do you see any invalid objects in the database?
    2. Please update the SR with the output of running the commands below
    1.Connect as SYS.
    set serveroutput on (This will let you see if any check fails)
    exec validate_apex; (If your version is 2.0 or above)
    If all are fine, the registry should be changed to VALID for APEX and you should see the following
    message:
    PL/SQL procedure successfully completed.
    Note : The procedure validate_apex should always complete successfully.
    With serveroutput on, it should show why Application Express is listed as invalid.It should show output like:
    FAILED CHECK FOR <<obect_name>>
    Or
    FAILED EXISTENCE CHECK FOR <<object_name>>

  • Point in Poly query?

    How do I perform a simple point in poly query with spatial?
    If I have a set of coordinates (-86.524442 39.7748187) for which I want to know which polygon they fall inside of?
    Thanks in advance-M.

    A query like this should get what you're after :
    select county
    from counties c
    where sdo_relate(c.geom, mdsys.sdo_geometry(2001,
    null,
    mdsys.sdo_point_type(-86.524442,39.7748187,null),
    null, null),
    'mask=contains querytype=window') = 'TRUE'
    This will return "Hendricks" county which I believe is correct.
    The relevant parms for the mdsys.sdo_geometry object are the "2001" which specifies a point object and then the creation of the actual sdo_point_type itself. The third parm to this object is null as that is the Z access.
    The Oracle Spatial Users Guide is very useful and has lots of information and examples of this kind of thing.
    Steve

  • Any tool or shortcut to get SQL tuning suggestion???????

    Hi I have to tune an application and need to go throught alot many SQL their PLAN and ti tune them.
    I want to know ether is there any tool online or may be from oracle to get the tuning suggestions straighytway.my oracle version is 9206
    Can i use 10g SQL tuning advisor with 9i database????
    Thanks
    Gagan

    Hi Gagan,
    Can i use 10g SQL tuning advisor with 9i databaseNo, but you can do the same thing manually, and often do a better job:
    Tune SQL with optimizer parms:
    http://www.dba-oracle.com/t_sql_optimizer_parameters.htm
    Find missing indexes:
    1 - Search for unnecessary large-table, full-table scans
    2 - Compare consistent gets to rows returned
    http://www.dba-oracle.com/art_sql_tune.htm
    Hope this helps. . . .
    Donald K. Burleson
    Oracle Press author

  • Suggested query (9i) for 3-d Geodetic point-in-poly?

    Hi there,
    Just getting started with Spatial. Have a SDO_POINT_TYPE layer in 8307 (Geodetic Lat/Lon/Height) 3-dim, indexed with 2-dim (Lat/Lon) and want to know what the best way is to perform point-in-polygon queries on this layer (e.g. basic web-mapping interface)? I recently tried SDO_GEOM.RELATE but it was extremely slow, and incorrect....certainly something I'm doing wrong.
    Any help whatsoever is greatly appreciated.
    Thanks in advance,
    Michael

    Thanks very much.
    However, I the query doesn't seem to be giving me what I think it should. My index is two dimensions:
    create index I_MONUMENT_SHAPE on MONUMENT_CATALOG (SHAPE)
    INDEXTYPE IS MDSYS.SPATIAL_INDEX PARAMETERS('layer_gtype=POINT sdo_indx_dims=2');
    "SDO_RELATE" query:
    select mc.char_id as "ID",mc.shape as "Shape" from monument_catalog mc
    where SDO_RELATE(mc.shape,MDSYS.SDO_GEOMETRY(2003,8307,null,MDSYS.SDO_ELEM_INFO_ARRAY(1,1003,1),
    -- MDSYS.SDO_ORDINATE_ARRAY(-110,20,-110,30,-100,30,-100,20,-110,20)),'mask=inside querytype=WINDOW') = 'TRUE';
    MDSYS.SDO_ORDINATE_ARRAY(-110,20,-110,30,-100,30,-100,20,-110,20)),'mask=anyinteract') = 'TRUE';
    ID Shape(SDO_GTYPE, SDO_SRID, SDO_POINT(X, Y, Z), SDO_ELEM_INFO, SDO_ORDINATES)
    BURR SDO_GEOMETRY(3001, 8307, SDO_POINT_TYPE(-110.066, 23.516, 535.02537), NULL, NULL)
    ANCN SDO_GEOMETRY(3001, 8307, SDO_POINT_TYPE(-110.03, 23.739, 481.56558), NULL, NULL)
    LPAZ SDO_GEOMETRY(3001, 8307, SDO_POINT_TYPE(-110.319, 24.139, -26.9092), NULL, NULL)
    BLND SDO_GEOMETRY(3001, 8307, SDO_POINT_TYPE(-110.309, 24.326, -10.21309), NULL, NULL)
    "vanilla sql" query:
    select mc.char_id as "ID",mc.shape as "Shape" from monument_catalog mc
    where mc.shape.SDO_POINT.X < -100
    and mc.shape.SDO_POINT.X > -110
    and mc.shape.SDO_POINT.Y < 30
    and mc.shape.SDO_POINT.Y > 20;
    ID Shape(SDO_GTYPE, SDO_SRID, SDO_POINT(X, Y, Z), SDO_ELEM_INFO, SDO_ORDINATES)
    CEBO SDO_GEOMETRY(3001, 8307, SDO_POINT_TYPE(-103.161, 20.09, 2009.12022), NULL, NULL)
    JARA SDO_GEOMETRY(3001, 8307, SDO_POINT_TYPE(-101.8, 21.264, 2016.36392), NULL, NULL)
    UMON SDO_GEOMETRY(3001, 8307, SDO_POINT_TYPE(-103.453, 20.737, 1626.65695), NULL, NULL)
    ineg SDO_GEOMETRY(3001, 8307, SDO_POINT_TYPE(-102.284, 21.856, 1888.67922), NULL, NULL)
    AYUT SDO_GEOMETRY(3001, 8307, SDO_POINT_TYPE(-104.374, 20.188, 1648.7741), NULL, NULL)
    CHAC SDO_GEOMETRY(3001, 8307, SDO_POINT_TYPE(-105.429, 20.383, 280.64762), NULL, NULL)
    COSA SDO_GEOMETRY(3001, 8307, SDO_POINT_TYPE(-103.325, 20.293, 1730.68995), NULL, NULL)
    GUAC SDO_GEOMETRY(3001, 8307, SDO_POINT_TYPE(-104.354, 20.501, 1581.31376), NULL, NULL)
    MCAB SDO_GEOMETRY(3001, 8307, SDO_POINT_TYPE(-103.493, 21.092, 1682.41884), NULL, NULL)
    SEBA SDO_GEOMETRY(3001, 8307, SDO_POINT_TYPE(-104.871, 20.699, 1973.90223), NULL, NULL)
    ECER SDO_GEOMETRY(3001, 8307, SDO_POINT_TYPE(-109.81, 24.18, 89.31145), NULL, NULL)
    EMIR SDO_GEOMETRY(3001, 8307, SDO_POINT_TYPE(-109.735, 23.366, 192.75321), NULL, NULL)
    RIVE SDO_GEOMETRY(3001, 8307, SDO_POINT_TYPE(-109.532, 23.549, 40.95293), NULL, NULL)
    LIM2 SDO_GEOMETRY(3001, 8307, SDO_POINT_TYPE(-103.528, 20.335, 1652.13807), NULL, NULL)
    SAUZ SDO_GEOMETRY(3001, 8307, SDO_POINT_TYPE(-103.225, 20.885, 1699.7295), NULL, NULL)
    7122 SDO_GEOMETRY(3001, 8307, SDO_POINT_TYPE(-106.459, 23.343, 27.9281), NULL, NULL)
    3033 SDO_GEOMETRY(3001, 8307, SDO_POINT_TYPE(-109.086, 25.692, -30.58101), NULL, NULL)
    7882 SDO_GEOMETRY(3001, 8307, SDO_POINT_TYPE(-109.864, 22.918, 115.09006), NULL, NULL)
    LIMA SDO_GEOMETRY(3001, 8307, SDO_POINT_TYPE(-103.548, 20.37, 2112.2829), NULL, NULL)
    Any idea why the SDO_RELATE query seems to be giving me stuff just ---outside--- my query window rather that stuff that lies inside?
    Thanks,
    Michael

  • SQL tuning suggestions.

    Hi
    I am not a sql programmer and developers have given me this sql to have a look. I made the following recommendations after going through the sql. Is there anything else that can be added . I did not add about stats because they are representative and up to date.
    SELECT /*+ PARALLEL(q1,4) */ *
    FROM
    (SELECT /*+ FIRST_ROWS(20) */
    br.resource_id,
    br.resource_code,
    x.resource_seq_num employee_resource_number,
    br.organization_id,
    bd.department_id,
    bd.department_code,
    pf.full_name employee_name,
    (SELECT xxdl_eam_util_pkg.xxdl_eam_get_resource_code(pf.person_id, bd.department_id)
    FROM dual)
    maximum_cost_resource,
    pf.person_id,
    x.wip_entity_id wo_id,
    (SELECT weo1.wip_entity_name
    FROM wip_eam_work_orders_v weo1
    WHERE weo1.wip_entity_id = x.wip_entity_id)
    wo_number,
    CAST(x.start_date AS
    TIMESTAMP) start_date,
    CAST(x.completion_date AS
    TIMESTAMP) completion_date,
    wor.operation_seq_num wo_operation_number,
    wor.resource_seq_num wo_resource_number,
    wor.usage_rate_or_amount HOURS,
    BRE.effective_start_date instance_start_date,
    BRE.effective_end_date instance_end_date,
    BRE.instance_id,
    crc.resource_rate AS
    resource_cost,
    (SELECT xxdl_eam_util_pkg.xxdl_eam_get_all_res_code(pf.person_id, bd.department_id)
    FROM dual)
    all_resources
    FROM per_all_people_f pf,
    wip_eam_work_orders_v weo,
    wip_operations wo,
    wip_operation_resources wor,
    (SELECT instance_id,
    wip_entity_id,
    operation_seq_num,
    resource_seq_num,
    start_date,
    completion_date
    FROM wip_op_resource_instances_v) x,
    bom_dept_res_instances bdri,
    bom_resource_employees BRE,
    bom_department_resources bdr,
    bom_resources br,
    cst_resource_costs crc,
    bom_departments bd
    WHERE br.organization_id = bd.organization_id
    AND bdr.resource_id = br.resource_id
    AND bdr.department_id = bd.department_id
    AND BRE.resource_id = br.resource_id
    AND pf.effective_start_date <=sysdate
    AND pf.effective_end_date >= sysdate
    AND pf.person_id = BRE.person_id
    AND wo.department_id = bd.department_id
    AND wor.operation_seq_num(+) = wo.operation_seq_num
    AND wor.wip_entity_id(+) = wo.wip_entity_id
    AND wor.organization_id(+) = wo.organization_id
    AND weo.wip_entity_id = wo.wip_entity_id
    AND weo.organization_id = wo.organization_id
    -- AND weo.organization_id = 6921
    AND DECODE(bd.disable_date,null, sysdate,bd.disable_date) >= sysdate
    AND DECODE(br.disable_date,null, sysdate,br.disable_date) >= sysdate
    AND DECODE(wo.disable_date,null, sysdate,wo.disable_date) >= sysdate
    AND crc.resource_id(+) = BRE.resource_id
    AND x.wip_entity_id = wor.wip_entity_id
    AND x.operation_seq_num = wor.operation_seq_num
    AND x.resource_seq_num = wor.resource_seq_num
    AND x.instance_id(+) = BRE.instance_id
    AND bdri.department_id = bd.department_id
    AND bdri.resource_id = br.resource_id
    AND weo.organization_id = 6921
    AND bdri.department_id = 5004
    UNION
    SELECT /*+ FIRST_ROWS(20) */ DISTINCT NULL,
    NULL,
    NULL,
    NULL,
    NULL,
    NULL,
    pf.full_name employee_name,
    NULL,
    pf.person_id,
    NULL,
    NULL,
    NULL,
    NULL,
    NULL,
    NULL,
    NULL HOURS,
    NULL,
    NULL,
    NULL,
    NULL,
    NULL
    FROM per_all_people_f pf,
    wip_eam_work_orders_v weo,
    wip_operations wo,
    wip_operation_resources wor,
    bom_dept_res_instances bdri,
    bom_resource_employees BRE,
    bom_department_resources bdr,
    bom_resources br,
    cst_resource_costs crc,
    bom_departments bd
    WHERE br.organization_id = bd.organization_id
    AND bdr.resource_id = br.resource_id
    AND bdr.department_id = bd.department_id
    AND BRE.resource_id = br.resource_id
    AND pf.effective_start_date <=sysdate
    AND pf.effective_end_date >= sysdate
    AND pf.person_id = BRE.person_id
    AND wo.department_id = bd.department_id
    AND wor.operation_seq_num(+) = wo.operation_seq_num
    AND wor.wip_entity_id(+) = wo.wip_entity_id
    AND wor.organization_id(+) = wo.organization_id
    AND weo.wip_entity_id = wo.wip_entity_id
    AND weo.organization_id = wo.organization_id
    AND DECODE(bd.disable_date,null, sysdate,bd.disable_date) >= sysdate
    AND DECODE(br.disable_date,null, sysdate,br.disable_date) >= sysdate
    AND DECODE(wo.disable_date,null, sysdate,wo.disable_date) >= sysdate
    AND crc.resource_id(+) = BRE.resource_id
    AND bdri.department_id = bd.department_id
    AND bdri.resource_id = br.resource_id
    AND weo.organization_id = 6921
    AND bdri.department_id = 5004
    AND NOT EXISTS
    (SELECT instance_id,
    wip_entity_id operation_seq_num,
    resource_seq_num
    FROM wip_op_resource_instances_v)
    ) q1
    ORDER BY department_id,
    resource_code,
    employee_name,
    wo_number
    My suggestions:
    . Try to use UNION ALL instead of UNION. If you can eliminate UNION all together and flatten the query that will be even better.
    2. You are using the function in a select statement xxdl_eam_util_pkg.xxdl_eam_get_resource_code(pf.person_id, bd.department_id)This will slow the performance. Try to get rid of this. Function calls in select are expensive.
    3. Dont use the parallel hint and optimize. It wont get you consistent results.
    4. Use of per_all_people_F is expensive. The UNION again complicates things. per_all_people_f has to be scanned 2x times.
    5. Where does the application get the values for department id? Whether user inputs a value or whether it is hard coded . Most likely user will input value and each time it may be different. If that is the case, then you may be hitting bind peeking. There is not much hope for this. Not much can be done. Whatever you do this can happen. Only way is to pin the plan if you can use literals instead of binds. But that is not possible I think.
    6. AND DECODE(bd.disable_date,null, sysdate,bd.disable_date) >= sysdate
    AND DECODE(br.disable_date,null, sysdate,br.disable_date) >= sysdate
    AND DECODE(wo.disable_date,null, sysdate,wo.disable_date) >= sysdate
    Those statements, if you can rewrite would be good. If there are indexes on any of those columns, they are more than likely not used.
    7. Are the outer joins really required. If not required remove them.
    8. There is a 'WITH' clause in 10g . Try to use that for your subqueries or main query where applicable. It will save some I/O.
    9. Try to tune without any hints. Remove the first rows as well and see the difference.
    I know that the sql is definately bad and can be rewritten but I am not able to exactly write it for them.
    Any inputs or thoughts?
    MSK

    Hi,
    Any suggestions for reading on Sql tuning
    I am looking for a practical book with solutions .
    And books showing the Sql internal workings ?Take a look on Amazon some Jonathan Lewis books.
    I will also recommend you to take a look on the following blogs:
    - http://jonathanlewis.wordpress.com/
    - http://www.juliandyke.com/
    - http://richardfoote.wordpress.com/
    - http://tkyte.blogspot.com/
    And also any good interview based good Oracle DBA books ?You can take a look on my blog for some common DBA interview questions.
    http://oraclenz.com/category/interview-tips/
    Regards,
    Francisco Munoz Alvarez
    www.oraclenz.com

  • Performance Tuning - Suggestions

    Hi,
    I have an ABAP (Interactive List) Program times out in PRD very often. The ABAP run time is about 99%. The DB time is less than 1%. All the select statements has the table index in place. Actually it isprocessing all the Production Orders (Released but not Confirmed/Closed). Please let me know if you have any suggestion.
    Appreciate Your Help.
    Thanks,
    Kannan.

    Hi
    1) Dont use nested select statements
    2) If possible use for all entries in addition
    3) In the where addition make sure you give all the primary key
    4) Use Index for the selection criteria.
    5) You can also use inner joins
    6) You can try to put the data from the first select statement into an Itab and then in order to select the data from the second table use for all entries in.
    7) Use the runtime analysis SE30 and SQL Trace (ST05) to identify the performance and also to identify where the load is heavy, so that you can change the code accordingly
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/5d0db4c9-0e01-0010-b68f-9b1408d5f234
    ABAP performance depends upon various factors and in devicded in three parts:
    1. Database
    2. ABAP
    3. System
    Run Any program using SE30 (performance analys) to improve performance refer to tips and trics section of SE30, Always remember that ABAP perfirmance is improved when there is least load on Database.
    u can get an interactive grap in SE30 regarding this with a file.
    also if u find runtime of parts of codes then use :
    Switch on RTA Dynamically within ABAP Code
    *To turn runtim analysis on within ABAP code insert the following code
    SET RUN TIME ANALYZER ON.
    *To turn runtim analysis off within ABAP code insert the following code
    SET RUN TIME ANALYZER OFF.
    Always check the driver internal tables is not empty, while using FOR ALL ENTRIES
    Avoid for all entries in JOINS
    Try to avoid joins and use FOR ALL ENTRIES.
    Try to restrict the joins to 1 level only ie only for tables
    Avoid using Select *.
    Avoid having multiple Selects from the same table in the same object.
    Try to minimize the number of variables to save memory.
    The sequence of fields in 'where clause' must be as per primary/secondary index ( if any)
    Avoid creation of index as far as possible
    Avoid operators like <>, > , < & like % in where clause conditions
    Avoid select/select single statements in loops.
    Try to use 'binary search' in READ internal table. Ensure table is sorted before using BINARY SEARCH.
    Avoid using aggregate functions (SUM, MAX etc) in selects ( GROUP BY , HAVING,)
    Avoid using ORDER BY in selects
    Avoid Nested Selects
    Avoid Nested Loops of Internal Tables
    Try to use FIELD SYMBOLS.
    Try to avoid into Corresponding Fields of
    Avoid using Select Distinct, Use DELETE ADJACENT
    Check the following Links
    Re: performance tuning
    Re: Performance tuning of program
    http://www.sapgenie.com/abap/performance.htm
    http://www.thespot4sap.com/Articles/SAPABAPPerformanceTuning_PerformanceAnalysisTools.asp
    check the below link
    http://www.sap-img.com/abap/performance-tuning-for-data-selection-statement.htm
    See the following link if it's any help:
    http://www.thespot4sap.com/Articles/SAPABAPPerformanceTuning_PerformanceAnalysisTools.asp
    Check also http://service.sap.com/performance
    and
    books like
    http://www.sap-press.com/product.cfm?account=&product=H951
    http://www.sap-press.com/product.cfm?account=&product=H973
    http://www.sap-img.com/abap/more-than-100-abap-interview-faqs.htm
    http://www.thespot4sap.com/Articles/SAPABAPPerformanceTuning_PerformanceAnalysisTools.asp
    Performance tuning for Data Selection Statement
    http://www.sap-img.com/abap/performance-tuning-for-data-selection-statement.htm
    Debugger
    http://help.sap.com/saphelp_47x200/helpdata/en/c6/617ca9e68c11d2b2ab080009b43351/content.htm
    http://www.cba.nau.edu/haney-j/CIS497/Assignments/Debugging.doc
    http://help.sap.com/saphelp_erp2005/helpdata/en/b3/d322540c3beb4ba53795784eebb680/frameset.htm
    Run Time Analyser
    http://help.sap.com/saphelp_47x200/helpdata/en/c6/617cafe68c11d2b2ab080009b43351/content.htm
    SQL trace
    http://help.sap.com/saphelp_47x200/helpdata/en/d1/801f7c454211d189710000e8322d00/content.htm
    CATT - Computer Aided Testing Too
    http://help.sap.com/saphelp_47x200/helpdata/en/b3/410b37233f7c6fe10000009b38f936/frameset.htm
    Test Workbench
    http://help.sap.com/saphelp_47x200/helpdata/en/a8/157235d0fa8742e10000009b38f889/frameset.htm
    Coverage Analyser
    http://help.sap.com/saphelp_47x200/helpdata/en/c7/af9a79061a11d4b3d4080009b43351/content.htm
    Runtime Monitor
    http://help.sap.com/saphelp_47x200/helpdata/en/b5/fa121cc15911d5993d00508b6b8b11/content.htm
    Memory Inspector
    http://help.sap.com/saphelp_47x200/helpdata/en/a2/e5fc84cc87964cb2c29f584152d74e/content.htm
    ECATT - Extended Computer Aided testing tool.
    http://help.sap.com/saphelp_47x200/helpdata/en/20/e81c3b84e65e7be10000000a11402f/frameset.htm
    Just refer to these links...
    performance
    Performance
    Performance Guide
    performance issues...
    Performance Tuning
    Performance issues
    performance tuning
    performance tuning
    You can go to the transaction SE30 to have the runtime analysis of your program.Also try the transaction SCI , which is SAP Code Inspector.
    1 Always check the driver internal tables is not empty, while using FOR ALL ENTRIES
    2 Avoid for all entries in JOINS
    3 Try to avoid joins and use FOR ALL ENTRIES.
    4 Try to restrict the joins to 1 level only ie only for 2 tables
    5 Avoid using Select *.
    6 Avoid having multiple Selects from the same table in the same object.
    7 Try to minimize the number of variables to save memory.
    8 The sequence of fields in 'where clause' must be as per primary/secondary index ( if any)
    9 Avoid creation of index as far as possible
    10 Avoid operators like <>, > , < & like % in where clause conditions
    11 Avoid select/select single statements in loops.
    12 Try to use 'binary search' in READ internal table. Ensure table is sorted before using BINARY SEARCH.
    13 Avoid using aggregate functions (SUM, MAX etc) in selects ( GROUP BY , HAVING,)
    14 Avoid using ORDER BY in selects
    15 Avoid Nested Selects
    16 Avoid Nested Loops of Internal Tables
    17 Try to use FIELD SYMBOLS.
    18 Try to avoid into Corresponding Fields of
    19 Avoid using Select Distinct, Use DELETE ADJACENT.
    Regards
    Anji

  • Spatial query (point in poly) problem

    Hi
    One of my users is trying to run the following query in SQL*Plus:
    CREATE TABLE erdpwip_join AS
    SELECT A.CSNGC, B.PARCELID
    FROM RLR.RLR87_SK B, ERDPWIPDATA A
    WHERE sdo_relate (a.geom, b.geom, 'mask=ANYINTERACT querytype=Window') = 'TRUE'
    He says it works on a small subset of the full dataset, but when he tries to run it on a larger selection of data it stops working. The full dataset has 1.6 million shapes and is held in an Oracle 9.2.0.5.0 database. It isn't clean data, unfortunately: I performed an sdo_geom.validate_layer_with_context on it and removed around 240 shapes with errors (mostly self-intersects), but when trying to access the dataset through ESRI's ArcSDE (version 8.3) a load_buffer error -2035 occurs, which I am informed is because there are other low-level self-intersects which Oracle's validation routine didn't pick up.
    There are two questions really: first, is the quality of the data (with these geometric errors) the reason for the user's point-in-polygon query not working on larger recordsets (e.g. about 400000 records), or is because of the volume of data?
    Secondly, is there any way that Oracle's validation routines will pick up these low-level self-intersects which were missed in the first pass? ESRI's support forum recommends running a query on the dataset which steps through so many records at a time until it finds an error - the full thread is at http://forums.esri.com/Thread.asp?c=2&f=1720&t=152985&mc=1.
    Any help would be appreciated.
    Thanks
    Sharon Evans

    Hi Sharon,
    What does "it stops working" mean? Error? Long running query?
    Assuming your data is now clean in spatial, I would try creating the table, then loading it with the query using the ordered hint. The number of geometries, while affecting run time, is certainly not more than spatial can handle.
    CREATE TABLE erdpwip_join AS
    SELECT A.CSNGC, B.PARCELID
    FROM RLR.RLR87_SK B, ERDPWIPDATA A
    WHERE rownum < 1;
    insert into erdpwip_join
    SELECT /*+ ordered */ A.CSNGC, B.PARCELID
    FROM RLR.RLR87_SK B, ERDPWIPDATA A
    WHERE sdo_relate (a.geom, b.geom, 'mask=ANYINTERACT querytype=Window') = 'TRUE';
    Regarding drawing in ESRI and tolerance/validation:
    In Oracle Spatial the tolerance is specified as the distance two points have to be apart to be considered different.
    I think for ESRI, points have to be greater than tolerance apart (not exactly tolerance apart, which is fine in spatial).
    So what you might want to try is kicking up the tolerance by some very small increment for the validation, remove or fix those invalid geometries, reset the tolerance back to the smaller value, and then try using ArcSDE again.
    I haven't tried this at all, so if you can let us know if this works we'll know this is probably a good general recommendation.

  • NOT ABLE TO ASSIGN POINTS IN FORUM  ANY SUGGESTIONS TO SOLVE THIS.

    HI
    PLZ GIVE ME SOME SUGGESTIONS .
    THANKS
    HARISH

    Hi dear,
    usually it's enough to wait and to remember to come back later !
    Otherwise post your support request to [email protected]

  • Garbage collection pauses screw up my cluster.  JVM tuning suggestions?

    I am running Sun's 64 bit JVM 1.7.0. Everything hums along nicely until my storage enabled nodes all show GC log entries like these and then the cluster experiences timeouts. This happens like once a day at most. Suggestions? Thinking maybe add more storage enabled JVMs? Any JVM settings I should use to prevent this? What can determine the cause? I don't think the machine's CPU is maxed out at the time.
    Thanks,
    Andrew
    2012-02-02T09:09:15.585-0600: 61965.351: [GC 61965.351: [ParNew: 915634K->5291K(1023552K), 0.0396299 secs] 1143514K->233236K(3299264K), 0.0406305 secs] [Times: user=1.26 sys=0.00, real=0.04 secs]
    2012-02-02T09:09:22.816-0600: 61972.582: [GC 61972.583: [ParNew: 915115K->4454K(1023552K), 0.0497440 secs] 1143060K->233468K(3299264K), 0.0510981 secs] [Times: user=0.86 sys=0.02, real=0.05 secs]
    2012-02-02T09:09:29.647-0600: 61979.413: [GC 61979.413: [ParNew: 914278K->2750K(1023552K), 0.0141793 secs] 1143292K->232548K(3299264K), 0.0152009 secs] [Times: user=0.44 sys=0.00, real=0.02 secs]
    2012-02-02T09:09:37.432-0600: 61987.198: [GC 61987.199: [ParNew: 912574K->2926K(1023552K), 0.0145958 secs] 1142372K->232786K(3299264K), 0.0156003 secs] [Times: user=0.45 sys=0.00, real=0.02 secs]
    2012-02-02T09:09:45.213-0600: 61994.979: [GC 61994.980: [ParNew: 912750K->3264K(1023552K), 0.0133675 secs] 1142610K->233225K(3299264K), 0.0144490 secs] [Times: user=0.02 sys=0.00, real=0.02 secs]
    2012-02-02T09:09:50.709-0600: 62000.474: [GC 62000.475: [ParNew: 913088K->2920K(1023552K), 0.0169685 secs] 1143049K->232971K(3299264K), 0.0179272 secs] [Times: user=0.31 sys=0.00, real=0.02 secs]
    2012-02-02T09:09:57.938-0600: 62007.704: [GC 62007.705: [ParNew: 912744K->4014K(1023552K), 0.0367154 secs] 1142795K->234128K(3299264K), 0.0377584 secs] [Times: user=0.36 sys=0.00, real=0.04 secs]
    2012-02-02T09:10:04.134-0600: 62013.899: [GC 62013.899: [ParNew: 913838K->4306K(1023552K), 0.0179481 secs] 1143952K->234465K(3299264K), 0.0188570 secs] [Times: user=0.28 sys=0.00, real=0.02 secs]
    2012-02-02T09:10:10.223-0600: 62019.988: [GC 62019.989: [ParNew: 914130K->4890K(1023552K), 0.0258524 secs] 1144289K->235119K(3299264K), 0.0267208 secs] [Times: user=0.37 sys=0.00, real=0.03 secs]
    2012-02-02T09:10:19.538-0600: 62029.304: [GC 62029.305: [ParNew: 914714K->106275K(1023552K), 0.4447269 secs] 1144943K->336555K(3299264K), 0.4456875 secs] [Times: user=3.46 sys=0.14, real=0.45 secs]
    2012-02-02T09:10:28.095-0600: 62037.860: [GC 62037.861: [ParNew: 1016099K->113728K(1023552K), 2.3496060 secs] 1246379K->627933K(3299264K), 2.3506549 secs] [Times: user=11.48 sys=1.48, real=2.35 secs]
    2012-02-02T09:10:40.675-0600: 62050.440: [GC 62050.441: [ParNew: 1023552K->113728K(1023552K), 1.6754442 secs] 1537757K->946051K(3299264K), 1.6765925 secs] [Times: user=36.85 sys=0.37, real=1.68 secs]
    2012-02-02T09:10:52.540-0600: 62062.306: [GC 62062.306: [ParNew: 1023552K->113728K(1023552K), 1.6465925 secs] 1855875K->1262979K(3299264K), 1.6475185 secs] [Times: user=38.24 sys=0.61, real=1.65 secs]
    2012-02-02T09:10:54.190-0600: 62063.955: [GC [1 CMS-initial-mark: 1149251K(2275712K)] 1276188K(3299264K), 0.2430027 secs] [Times: user=0.25 sys=0.00, real=0.24 secs]
    2012-02-02T09:10:54.434-0600: 62064.199: [CMS-concurrent-mark-start]
    2012-02-02T09:10:55.375-0600: 62065.140: [CMS-concurrent-mark: 0.941/0.941 secs] [Times: user=10.44 sys=0.25, real=0.94 secs]
    2012-02-02T09:10:55.375-0600: 62065.140: [CMS-concurrent-preclean-start]
    2012-02-02T09:10:56.231-0600: 62065.996: [CMS-concurrent-preclean: 0.836/0.856 secs] [Times: user=1.78 sys=0.00, real=0.86 secs]
    2012-02-02T09:10:56.231-0600: 62065.996: [CMS-concurrent-abortable-preclean-start]
    2012-02-02T09:11:00.905-0600: 62070.669: [CMS-concurrent-abortable-preclean: 4.665/4.673 secs] [Times: user=9.75 sys=0.03, real=4.67 secs]
    2012-02-02T09:11:00.906-0600: 62070.671: [GC[YG occupancy: 626192 K (1023552 K)]62070.672: [Rescan (parallel) , 0.4593515 secs]62071.132: [weak refs processing, 0.8817154 secs]62072.014: [scrub string table, 0.0006451 secs] [1 CMS-remark: 1149251K(2275712K)] 1775444K(3299264K), 1.7319597 secs] [Times: user=15.60 sys=0.00, real=1.73 secs]
    2012-02-02T09:11:02.639-0600: 62072.404: [CMS-concurrent-sweep-start]
    2012-02-02T09:11:04.088-0600: 62073.853: [CMS-concurrent-sweep: 1.443/1.449 secs] [Times: user=4.63 sys=0.05, real=1.45 secs]
    2012-02-02T09:11:04.088-0600: 62073.853: [CMS-concurrent-reset-start]
    2012-02-02T09:11:04.101-0600: 62073.866: [CMS-concurrent-reset: 0.013/0.013 secs] [Times: user=0.00 sys=0.00, real=0.01 secs]
    2012-02-02T09:11:09.312-0600: 62079.077: [GC 62079.077: [ParNew: 1023552K->113728K(1023552K), 1.6178150 secs] 1587225K->979876K(3299264K), 1.6187922 secs] [Times: user=37.58 sys=0.11, real=1.62 secs]
    2012-02-02T09:11:21.172-0600: 62090.937: [GC 62090.937: [ParNew: 1023552K->113728K(1023552K), 1.5327921 secs] 1889700K->1243425K(3299264K), 1.5335996 secs] [Times: user=34.29 sys=0.14, real=1.53 secs]
    2012-02-02T09:11:33.305-0600: 62103.070: [GC 62103.070: [ParNew: 1023552K->113728K(1023552K), 1.6349678 secs] 2153249K->1475423K(3299264K), 1.6361176 secs] [Times: user=36.40 sys=0.17, real=1.64 secs]
    2012-02-02T09:11:45.480-0600: 62115.245: [GC 62115.246: [ParNew: 1023552K->113728K(1023552K), 1.6566701 secs] 2385247K->1744596K(3299264K), 1.6579350 secs] [Times: user=37.52 sys=0.25, real=1.66 secs]
    2012-02-02T09:11:47.140-0600: 62116.905: [GC [1 CMS-initial-mark: 1630868K(2275712K)] 1744677K(3299264K), 0.2085259 secs] [Times: user=0.22 sys=0.00, real=0.21 secs]
    2012-02-02T09:11:47.350-0600: 62117.115: [CMS-concurrent-mark-start]
    2012-02-02T09:11:48.481-0600: 62118.245: [CMS-concurrent-mark: 1.130/1.130 secs] [Times: user=12.03 sys=0.02, real=1.13 secs]
    2012-02-02T09:11:48.481-0600: 62118.245: [CMS-concurrent-preclean-start]
    2012-02-02T09:11:49.191-0600: 62118.955: [CMS-concurrent-preclean: 0.702/0.710 secs] [Times: user=1.51 sys=0.00, real=0.71 secs]
    2012-02-02T09:11:49.191-0600: 62118.955: [CMS-concurrent-abortable-preclean-start]
    2012-02-02T09:11:53.016-0600: 62122.780: [CMS-concurrent-abortable-preclean: 3.819/3.825 secs] [Times: user=8.44 sys=0.05, real=3.83 secs]
    2012-02-02T09:11:53.017-0600: 62122.781: [GC[YG occupancy: 637511 K (1023552 K)]62122.782: [Rescan (parallel) , 0.6066033 secs]62123.389: [weak refs processing, 0.8883109 secs]62124.278: [scrub string table, 0.0005759 secs] [1 CMS-remark: 1630868K(2275712K)] 2268379K(3299264K), 1.8602409 secs] [Times: user=16.88 sys=0.02, real=1.86 secs]
    2012-02-02T09:11:54.878-0600: 62124.643: [CMS-concurrent-sweep-start]
    2012-02-02T09:11:57.491-0600: 62127.255: [CMS-concurrent-sweep: 2.610/2.613 secs] [Times: user=7.57 sys=0.16, real=2.61 secs]
    2012-02-02T09:11:57.491-0600: 62127.256: [CMS-concurrent-reset-start]
    2012-02-02T09:11:57.498-0600: 62127.262: [CMS-concurrent-reset: 0.007/0.007 secs] [Times: user=0.00 sys=0.00, real=0.01 secs]
    2012-02-02T09:12:01.137-0600: 62130.902: [GC 62130.902: [ParNew: 1023552K->113728K(1023552K), 1.4807261 secs] 1678232K->1015472K(3299264K), 1.4816808 secs] [Times: user=26.47 sys=0.00, real=1.48 secs]
    2012-02-02T09:12:13.113-0600: 62142.877: [GC 62142.878: [ParNew: 1023552K->113728K(1023552K), 1.5627711 secs] 1925296K->1258829K(3299264K), 1.5635313 secs] [Times: user=34.26 sys=0.00, real=1.56 secs]
    2012-02-02T09:12:25.167-0600: 62154.931: [GC 62154.932: [ParNew: 1023552K->113728K(1023552K), 1.5751999 secs] 2168653K->1510600K(3299264K), 1.5762551 secs] [Times: user=31.75 sys=0.00, real=1.58 secs]
    2012-02-02T09:12:36.964-0600: 62166.729: [GC 62166.730: [ParNew: 1023552K->113728K(1023552K), 1.6056739 secs] 2420424K->1768193K(3299264K), 1.6065643 secs] [Times: user=36.02 sys=0.08, real=1.61 secs]
    2012-02-02T09:12:38.573-0600: 62168.337: [GC [1 CMS-initial-mark: 1654465K(2275712K)] 1768195K(3299264K), 0.1967081 secs] [Times: user=0.20 sys=0.00, real=0.20 secs]
    2012-02-02T09:12:38.770-0600: 62168.535: [CMS-concurrent-mark-start]
    2012-02-02T09:12:39.611-0600: 62169.376: [CMS-concurrent-mark: 0.841/0.841 secs] [Times: user=9.24 sys=0.00, real=0.84 secs]
    2012-02-02T09:12:39.611-0600: 62169.376: [CMS-concurrent-preclean-start]
    2012-02-02T09:12:40.036-0600: 62169.801: [CMS-concurrent-preclean: 0.419/0.425 secs] [Times: user=0.84 sys=0.02, real=0.42 secs]
    2012-02-02T09:12:40.036-0600: 62169.801: [CMS-concurrent-abortable-preclean-start]
    CMS: abort preclean due to time 2012-02-02T09:12:46.001-0600: 62175.765: [CMS-concurrent-abortable-preclean: 5.955/5.964 secs] [Times: user=12.00 sys=0.08, real=5.96 secs]
    2012-02-02T09:12:46.003-0600: 62175.767: [GC[YG occupancy: 770945 K (1023552 K)]62175.767: [Rescan (parallel) , 0.7886971 secs]62176.557: [weak refs processing, 0.8179398 secs]62177.375: [scrub string table, 0.0008280 secs] [1 CMS-remark: 1654465K(2275712K)] 2425410K(3299264K), 1.8989263 secs] [Times: user=25.40 sys=0.02, real=1.90 secs]
    2012-02-02T09:12:47.903-0600: 62177.667: [CMS-concurrent-sweep-start]
    2012-02-02T09:12:50.676-0600: 62180.440: [CMS-concurrent-sweep: 2.772/2.774 secs] [Times: user=8.20 sys=0.06, real=2.77 secs]
    2012-02-02T09:12:50.676-0600: 62180.441: [CMS-concurrent-reset-start]
    2012-02-02T09:12:50.696-0600: 62180.460: [CMS-concurrent-reset: 0.019/0.019 secs] [Times: user=0.05 sys=0.00, real=0.02 secs]
    2012-02-02T09:12:52.272-0600: 62182.037: [GC 62182.037: [ParNew: 1023552K->113728K(1023552K), 1.5954584 secs] 1584704K->951316K(3299264K), 1.5963712 secs] [Times: user=34.26 sys=0.00, real=1.60 secs]
    2012-02-02T09:13:34.402-0600: 62224.165: [GC 62224.166: [ParNew: 1023552K->113728K(1023552K), 0.9755846 secs] 1861140K->1084527K(3299264K), 0.9767018 secs] [Times: user=19.19 sys=0.02, real=0.98 secs]
    2012-02-02T09:16:04.628-0600: 62374.391: [GC 62374.391: [ParNew: 1023552K->113517K(1023552K), 0.1955335 secs] 1994351K->1173747K(3299264K), 0.1966082 secs] [Times: user=2.12 sys=0.05, real=0.20 secs]
    2012-02-02T09:18:44.395-0600: 62534.156: [GC 62534.157: [ParNew: 1023341K->19351K(1023552K), 0.0506139 secs] 2083571K->1079581K(3299264K), 0.0517891 secs] [Times: user=0.37 sys=0.00, real=0.05 secs]
    2012-02-02T09:21:20.270-0600: 62690.030: [GC 62690.030: [ParNew: 929175K->8239K(1023552K), 0.0405564 secs] 1989405K->1068470K(3299264K), 0.0417057 secs] [Times: user=0.76 sys=0.00, real=0.04 secs]
    2012-02-02T09:23:54.367-0600: 62844.125: [GC 62844.126: [ParNew: 918063K->5778K(1023552K), 0.0497713 secs] 1978294K->1066008K(3299264K), 0.0508845 secs] [Times: user=0.58 sys=0.00, real=0.05 secs]
    2012-02-02T09:26:33.522-0600: 63003.279: [GC 63003.279: [ParNew: 915602K->5421K(1023552K), 0.0524503 secs] 1975832K->1065651K(3299264K), 0.0536713 secs] [Times: user=0.59 sys=0.02, real=0.06 secs]
    2012-02-02T09:29:13.270-0600: 63163.025: [GC 63163.026: [ParNew: 915245K->5390K(1023552K), 0.0317213 secs] 1975475K->1065620K(3299264K), 0.0330578 secs] [Times: user=0.25 sys=0.00, real=0.03 secs]
    2012-02-02T09:31:58.001-0600: 63327.754: [GC 63327.755: [ParNew: 915214K->5524K(1023552K), 0.0617393 secs] 1975444K->1065894K(3299264K), 0.0629008 secs] [Times: user=1.05 sys=0.00, real=0.06 secs]
    2012-02-02T09:34:43.454-0600: 63493.206: [GC 63493.207: [ParNew: 915348K->5600K(1023552K), 0.0376009 secs] 1975718K->1066058K(3299264K), 0.0388287 secs] [Times: user=0.36 sys=0.00, real=0.04 secs]
    2012-02-02T09:37:15.601-0600: 63645.352: [GC 63645.353: [ParNew: 915424K->6656K(1023552K), 0.0273727 secs] 1975882K->1067278K(3299264K), 0.0285435 secs] [Times: user=0.56 sys=0.00, real=0.03 secs]
    2012-02-02T09:39:41.873-0600: 63791.623: [GC 63791.623: [ParNew: 916480K->8588K(1023552K), 0.0239936 secs] 1977102K->1069403K(3299264K), 0.0252618 secs] [Times: user=0.75 sys=0.00, real=0.03 secs]
    2012-02-02T09:42:02.276-0600: 63932.025: [GC 63932.025: [ParNew: 918412K->8408K(1023552K), 0.0259162 secs] 1979227K->1069313K(3299264K), 0.0269622 secs] [Times: user=0.34 sys=0.02, real=0.03 secs]
    2012-02-02T09:44:22.990-0600: 64072.737: [GC 64072.738: [ParNew: 918232K->8777K(1023552K), 0.0208236 secs] 1979137K->1069755K(3299264K), 0.0220036 secs] [Times: user=0.41 sys=0.00, real=0.02 secs]

    Today i used
    -XX:+UseConcMarkSweepGC
    -XX:+UseParNewGC
    -XX:-CMSConcurrentMTEnabled
    -XX:+CMSScavengeBeforeRemark
    and had the same problem with all 3 storage enabled nodes simultaneously when I closed the Extend app. The GC logs from those storage nodes were nearly identical with each showing three "abort preclean" messages like below before eventually stabilizing again. CPU usage for the storage node JVMs was up a bit on the machine at the time then eventually came down. Extend proxy node CPU usage never goes up very high and GC times are always good there.
    Could it be because the Extend app has many CQCs running and when the app disconnects without shutting them down properly their results queue up in the storage enabled nodes? Something the Extend proxy can't pass along is getting added to old space?
    9:04:29.313-0600: 34201.081: [GC 34201.081: [ParNew: 914605K->4950K(1023552K), 0.0469807 secs] 1057777K->148216K(3299264K), 0.0480525 secs] [Times: user=0.78 sys=0.03, real=0.05 secs]
    9:04:35.742-0600: 34207.509: [GC 34207.509: [ParNew: 914774K->4559K(1023552K), 0.0317232 secs] 1058040K->147868K(3299264K), 0.0324390 secs] [Times: user=0.48 sys=0.00, real=0.03 secs]
    9:04:44.806-0600: 34216.573: [GC 34216.574: [ParNew: 914383K->113728K(1023552K), 1.4924395 secs] 1057692K->348748K(3299264K), 1.4934226 secs] [Times: user=7.52 sys=0.81, real=1.49 secs]
    9:04:56.498-0600: 34228.265: [GC 34228.265: [ParNew: 1023552K->113728K(1023552K), 1.3332836 secs] 1258572K->634502K(3299264K), 1.3341394 secs] [Times: user=28.58 sys=0.44, real=1.34 secs]
    9:05:09.845-0600: 34241.612: [GC 34241.612: [ParNew: 1023552K->113728K(1023552K), 1.5617413 secs] 1544326K->920121K(3299264K), 1.5628521 secs] [Times: user=33.43 sys=0.34, real=1.56 secs]
    9:05:24.569-0600: 34256.335: [GC 34256.336: [ParNew: 1023552K->113728K(1023552K), 2.3253881 secs] 1829945K->1186221K(3299264K), 2.3263253 secs] [Times: user=33.95 sys=0.48, real=2.33 secs]
    9:05:39.812-0600: 34271.579: [GC 34271.580: [ParNew: 1023552K->113728K(1023552K), 1.6817535 secs] 2096045K->1453026K(3299264K), 1.6827555 secs] [Times: user=33.60 sys=0.20, real=1.68 secs]
    9:05:41.498-0600: 34273.264: [GC [1 CMS-initial-mark: 1339298K(2275712K)] 1453026K(3299264K), 0.2348391 secs] [Times: user=0.22 sys=0.02, real=0.24 secs]
    9:05:41.733-0600: 34273.500: [CMS-concurrent-mark-start]
    9:05:44.732-0600: 34276.498: [CMS-concurrent-mark: 2.999/2.999 secs] [Times: user=6.49 sys=0.05, real=3.00 secs]
    9:05:44.732-0600: 34276.498: [CMS-concurrent-preclean-start]
    9:05:45.839-0600: 34277.606: [CMS-concurrent-preclean: 1.095/1.107 secs] [Times: user=2.25 sys=0.00, real=1.11 secs]
    9:05:45.839-0600: 34277.606: [CMS-concurrent-abortable-preclean-start]
    CMS: abort preclean due to time 9:05:50.866-0600: 34282.633: [CMS-concurrent-abortable-preclean: 5.021/5.027 secs] [Times: user=10.14 sys=0.05, real=5.03 secs]
    9:05:50.868-0600: 34282.634: [GC[YG occupancy: 809255 K (1023552 K)]9:05:50.868-0600: 34282.635: [GC 34282.635: [ParNew: 809255K->113728K(1023552K), 1.0828740 secs] 2148553K->1611793K(3299264K), 1.0835767 secs] [Times: user=19.41 sys=0.06, real=1.08 secs]
    34283.719: [Rescan (parallel) , 0.1498045 secs]34283.869: [weak refs processing, 1.0258216 secs]34284.896: [scrub string table, 0.0006202 secs] [1 CMS-remark: 1498065K(2275712K)] 1611793K(3299264K), 2.7794183 secs] [Times: user=24.56 sys=0.06, real=2.78 secs]
    9:05:53.648-0600: 34285.415: [CMS-concurrent-sweep-start]
    9:05:56.112-0600: 34287.879: [CMS-concurrent-sweep: 2.464/2.464 secs] [Times: user=7.38 sys=0.03, real=2.46 secs]
    9:05:56.112-0600: 34287.879: [CMS-concurrent-reset-start]
    9:05:56.120-0600: 34287.887: [CMS-concurrent-reset: 0.008/0.008 secs] [Times: user=0.05 sys=0.00, real=0.01 secs]
    9:06:06.204-0600: 34297.970: [GC 34297.971: [ParNew: 1023552K->113728K(1023552K), 1.5001175 secs] 1845197K->1139597K(3299264K), 1.5011371 secs] [Times: user=31.31 sys=0.00, real=1.50 secs]
    9:06:20.044-0600: 34311.810: [GC 34311.811: [ParNew: 1023552K->113728K(1023552K), 1.6438234 secs] 2049421K->1389674K(3299264K), 1.6446616 secs] [Times: user=36.97 sys=0.03, real=1.64 secs]
    9:06:34.063-0600: 34325.829: [GC 34325.830: [ParNew: 1023552K->113728K(1023552K), 2.0298132 secs] 2299498K->1648212K(3299264K), 2.0308665 secs] [Times: user=34.10 sys=0.03, real=2.03 secs]
    9:06:36.096-0600: 34327.862: [GC [1 CMS-initial-mark: 1534484K(2275712K)] 1648282K(3299264K), 0.2109338 secs] [Times: user=0.22 sys=0.00, real=0.21 secs]
    9:06:36.308-0600: 34328.074: [CMS-concurrent-mark-start]
    9:06:39.105-0600: 34330.871: [CMS-concurrent-mark: 2.797/2.797 secs] [Times: user=6.02 sys=0.00, real=2.80 secs]
    9:06:39.105-0600: 34330.871: [CMS-concurrent-preclean-start]
    9:06:39.795-0600: 34331.561: [CMS-concurrent-preclean: 0.686/0.690 secs] [Times: user=1.40 sys=0.00, real=0.69 secs]
    9:06:39.795-0600: 34331.561: [CMS-concurrent-abortable-preclean-start]
    CMS: abort preclean due to time 9:06:46.623-0600: 34338.389: [CMS-concurrent-abortable-preclean: 6.820/6.828 secs] [Times: user=13.85 sys=0.03, real=6.83 secs]
    9:06:46.624-0600: 34338.390: [GC[YG occupancy: 891686 K (1023552 K)]9:06:46.624-0600: 34338.391: [GC 34338.391: [ParNew: 891686K->113728K(1023552K), 1.2772255 secs] 2426171K->1846761K(3299264K), 1.2780695 secs] [Times: user=25.66 sys=0.11, real=1.28 secs]
    34339.669: [Rescan (parallel) , 0.1456700 secs]34339.815: [weak refs processing, 0.6135547 secs]34340.431: [scrub string table, 0.0005247 secs] [1 CMS-remark: 1733033K(2275712K)] 1846761K(3299264K), 2.3580749 secs] [Times: user=30.44 sys=0.11, real=2.36 secs]
    9:06:48.983-0600: 34340.749: [CMS-concurrent-sweep-start]
    9:06:51.895-0600: 34343.660: [CMS-concurrent-sweep: 2.911/2.911 secs] [Times: user=7.71 sys=0.06, real=2.91 secs]
    9:06:51.895-0600: 34343.660: [CMS-concurrent-reset-start]
    9:06:51.941-0600: 34343.707: [CMS-concurrent-reset: 0.047/0.047 secs] [Times: user=0.09 sys=0.00, real=0.05 secs]
    9:07:02.441-0600: 34354.207: [GC 34354.207: [ParNew: 1023552K->113728K(1023552K), 1.5969685 secs] 1805173K->1136718K(3299264K), 1.5980247 secs] [Times: user=33.85 sys=0.00, real=1.60 secs]
    9:07:18.155-0600: 34369.921: [GC 34369.922: [ParNew: 1023552K->113728K(1023552K), 2.2864633 secs] 2046542K->1381538K(3299264K), 2.2874742 secs] [Times: user=33.74 sys=0.02, real=2.29 secs]
    9:07:33.522-0600: 34385.288: [GC 34385.288: [ParNew: 1023552K->113728K(1023552K), 1.6890223 secs] 2291362K->1632772K(3299264K), 1.6898157 secs] [Times: user=35.18 sys=0.01, real=1.69 secs]
    9:07:35.213-0600: 34386.979: [GC [1 CMS-initial-mark: 1519044K(2275712K)] 1632799K(3299264K), 0.2011283 secs] [Times: user=0.20 sys=0.00, real=0.20 secs]
    9:07:35.415-0600: 34387.181: [CMS-concurrent-mark-start]
    9:07:37.810-0600: 34389.576: [CMS-concurrent-mark: 2.395/2.395 secs] [Times: user=5.63 sys=0.00, real=2.39 secs]
    9:07:37.810-0600: 34389.576: [CMS-concurrent-preclean-start]
    9:07:38.623-0600: 34390.389: [CMS-concurrent-preclean: 0.808/0.813 secs] [Times: user=1.70 sys=0.05, real=0.81 secs]
    9:07:38.623-0600: 34390.389: [CMS-concurrent-abortable-preclean-start]
    CMS: abort preclean due to time 9:07:45.370-0600: 34397.135: [CMS-concurrent-abortable-preclean: 6.742/6.747 secs] [Times: user=13.76 sys=0.11, real=6.75 secs]
    9:07:45.371-0600: 34397.136: [GC[YG occupancy: 950924 K (1023552 K)]9:07:45.372-0600: 34397.137: [GC 34397.137: [ParNew: 950924K->113728K(1023552K), 1.3829715 secs] 2469968K->1894060K(3299264K), 1.3840623 secs] [Times: user=31.28 sys=0.00, real=1.38 secs]
    34398.522: [Rescan (parallel) , 0.1888848 secs]34398.711: [weak refs processing, 0.3561537 secs]34399.068: [scrub string table, 0.0004774 secs] [1 CMS-remark: 1780332K(2275712K)] 1894060K(3299264K), 2.1091730 secs] [Times: user=36.55 sys=0.00, real=2.11 secs]
    9:07:47.482-0600: 34399.247: [CMS-concurrent-sweep-start]
    9:07:50.500-0600: 34402.265: [CMS-concurrent-sweep: 3.017/3.018 secs] [Times: user=8.63 sys=0.33, real=3.02 secs]
    9:07:50.500-0600: 34402.265: [CMS-concurrent-reset-start]
    9:07:50.507-0600: 34402.273: [CMS-concurrent-reset: 0.008/0.008 secs] [Times: user=0.00 sys=0.00, real=0.01 secs]
    9:09:58.395-0600: 34530.160: [GC 34530.160: [ParNew: 1023552K->113438K(1023552K), 0.4065570 secs] 1764220K->964374K(3299264K), 0.4077345 secs] [Times: user=4.63 sys=0.03, real=0.41 secs]
    9:12:06.040-0600: 34657.802: [GC 34657.803: [ParNew: 1023262K->27778K(1023552K), 0.0334396 secs] 1874198K->878714K(3299264K), 0.0345056 secs]-Andrew

  • Program times out while looping at internal table with huge records - Needs fine tuning suggestions

    Hi,
    I am trying to execute a report. It times out while looping at vbap internal table. This internal table has 140000  records and does the validation within this loop and geenrates data for the output. Due to this huge volume, the program times out when executed foreground.
    There are no nested loops, so I cannot apply 'Parallel Cursor' here.
    Is there any way I can fine tune the program so that it doesn't timeout? Is it possible to apply 'Parallel Processing' . If yes, how?
    Thanks,
    Pavan

    Hi Pavan ,
                  ->sort your internal table by all primary key for vbap.
                  ->Read a Record from the table (use your condition here)
                  ->if record satisfys your where condition ,get that record index .
                  ->loop the table from the index (without condition) .
                  its like parallel cursor only but for single loop .;-)
                  ->use field symbols ,wherever possible .
               if still dump is coming ,contact your basis team .
    regards,
    Krishna.

  • Cannot get current version iPod Touch to log in to a Netgear N3000 wireless router using 128bit encryption.  Works finr at 64.  Also work fine on my Linksys access point at home.  Suggestions?

    See subject above.

    Has someone an idea how to get into the system of the iPod, that i am able to see what he is doing?
    I already tried to works with XCode, but not able to connect to my device.
    Also worked with the iPhone Utility, nevertheless a bit helpful.
    Or a hint, how to destroy my actual firmware and to set up a new one, means setting up a completely (brand) new iPod like i bought it at the store?!
    Support can not help me any more because my warranty is over ince 2 days.
    Thank you

  • Interesting Battery rehab Suggestion from a Genius Bar guy

    I have a 2003-vintage PB17 a friend gave me when he upgraded. I believe the battery is original, and it shows 87% health and 106 cycles--not bad for an old machine. Still it shuts down at between 60 and 70 percent. If I start to charge it, its level grows slowly for a while and then jumps to 100 percent.
    Normally I'm 350 miles from an Apple Store but on a recent trip to Portland OR, I packed the PB17 along for a visit to the Apple Store in Washington Square Mall. The genius confirmed that, based on serial number, the battery was probably original and that there were no warranty extensions or repair programs for 17" batteries.
    However, based on the fact that the computer shuts down at about the same point each time, he suggested that one of several internal cells within the battery was failing to reset. He said I should let the battery run down and let it recharge to some point below the cut-off range (60-70 percent in my case), then run down the battery again and recharge.
    I haven't had time to do this yet but thought I'd offer it for those with similar battery behavior.
    Another tidbit of info he had was that the backup battery was rechargeable. I knew it was in the G3 PowerBooks but thought is was not in the G4s. I tend to agree with him; the first time the battery croaked, the computer had been off power for a long time and I got a total shutdown, The second time, after running a lot on A/C, the backup battery held function until I could get the PB back on wall power.

    I would say untrue. Just my opinion though as I (and am sure that person) don't have access to the source code.
    With that said, I have had the iPhone since Day 1 and have not had an issue with the battery or how it reads it's charge.
    However, my wifes phone has on a couple of occasions not shown a full charge after being plugged in all night (to outlet, not computer thus sleep mode not an issue). A turn of and on did not correct it (as turning the phone off just puts it to sleep, it doesn't reboot the OS). But a reboot fixed it instantly.
    Read this thread about the OS and reboots.
    http://discussions.apple.com/message.jspa?messageID=5851978#5851978
    Message was edited by: DaVBMan

  • ADF Task Flow: Using Task Flow Call as Application Entry Point

    In our product we have a task flow structure very similar to the Fusion Order Demo application, but we are having serious trouble reproducing the documented functionality of ADF Task Flows.
    Specifically, we cannot use a task flow call as an entry point for our application, which is very important for us to achieve.
    The [Developer s Guide|http://download.oracle.com/docs/cd/E12839_01/web.1111/b31974/taskflows.htm#ADFFD1634] states about the [demo application|http://www.oracle.com/technology/products/jdev/samples/fod/index.html] :
    "A Fusion web application always contains an ADF unbounded task flow, which contains the entry point or points to the application. Figure 14-3 displays the diagram for the unbounded task flow from the Fusion Order Demo Application. This task flow contains the Home, *MyOrders*, *checkout*, registerUser, and updateUserInfo *view activities, which are all entry points to the application*."
    "The checkout-task-flow activity in Figure 14-3 is a call to an ADF bounded task flow."
    When we run the Fusion Demo Application, we are only able to use home, updateUserInfo and register as entry points.
    We cannot enter the application through any of the task flow call activities (MyOrders and checkout) as the documentation suggests.
    What are the reasons for this and how do we fix it, so we can use task flow call activities as application entry points?
    Thanks.
    Edited by: Rune Glerup on Oct 9, 2009 2:51 AM
    The forum did not display the link to "Developer's Guide" because the link contained the single quote char '. Single quote char removed.

    Is what you mention here the case in the Fusion Order Demo application?
    If the task flow call activities cannot be used as entry points, why is it stated in the documentation?
    How do we solve this, so that the task flow call activities (including parameter bindings) can be used as entry points, like the documentation suggests?

  • Oracle DB 10g - Count records from a subquery is to slow. (after tuning)

    Hi everybody:
    I have the following problem.
    1.- I have a transactional table with 11 millions of records.
    2.- The user asked for a few reports, to know some sumarized data for business decisions.
    3.- Initialy the query was developed in a development environment, with a subset smaller than the actual data mentioned in label 1.
    4.- When the report was delivered to the end user, the report never return data.
    5.- at this point, we performed tuning, adding indexes, re-writing the query, using hints, etc. and the following scenario is ocurring:
    a) the query without the count, before the tuning was taking about 3 to 5 minutes, and returned aproximatelly 332,000 records-.
    b) the numer of records was counted and this query takes aproximatelly 15 to 23 minutes.
    c) after the tuning, the raw data, returns in 1 second, we used some b-tree indexes, some FBI (because the report needs to filter by to_char functions).
    that time is ok for us, 1 second is a great time in comparison with the 3 to five minutes.
    d) the funny thing, is that when we add a simple count(1), count(x) or wathever flavor of count, the count takes about 3 minutes to return, with the 332,00
    records. is better than de 15 minutes of course, but we dont need count(1), we need to use group by, order by, etc, and will increase the time of query.
    6.- Another thing is happening, if I use count(1) with a transactional table with 600,000 records, without filtering, the count returns in les than 2 seconds. Even if the data is more than the result of my query defined in label 5.c, and that query returns in 1 second.
    Please help me with this, I know that maybe is something that i'm not considering on tuning. Or if there is a way to run this count query faster, please let me know.
    This is the query:
    WITH historial_depurado_v AS (
    select serie, identificador,
           cc_form_cc_tifo_tipo_forma
          ,cc_form_serie
          ,cc_form_folio
          ,estatus_nuevo
          ,to_char(fecha,'MM') Mes
          ,to_char(fecha,'YYYY') Anio  -- the table has a FBI for this.
          ,get_recaudacion_x_forma (hifo.CC_FORM_CC_TIFO_TIPO_FORMA
                                   ,hifo.CC_FORM_SERIE
                                   ,hifo.CC_FORM_FOLIO) Recaudacion  -- function for description.
    from  cc_historial_formas hifo
    where not exists (select 1
                         from ve_tipos_placas tipl
                        where tipl.cc_tifo_tipo_forma = hifo.cc_form_cc_tifo_tipo_forma)
    SELECT serie
      FROM historial_depurado_v hide
    WHERE Anio = '2009'  -- using the function based index.
       AND Mes = '01'
       AND Estatus_nuevo = 'UT'
    -- returns in 1 second, but if I use count(serie) takes 3 to 5 minutes, and still is not complete, I need to use group by some fields returned by the firs subset.
    -- if I count a table with more records, returns in 2 seconds.

    alopez wrote:
    WHERE Anio = '2009'  -- using the function based index.
    AND Mes = '01'
    AND Estatus_nuevo = 'UT'
    Also, i'm not sure if your internal comment is correct, but if you have a function based index on any of those columns, it will ONLY work when you apply the exact function as defined in the FBI (you aren't using any functions on ANY of your columns).
    An example.
    create table use_the_fbi
       column1  date
    insert into use_the_fbi
    select
       trunc(sysdate, 'dd') - level
    from dual connect by level <= 10000;
    create index use_the_fbi_FBI on use_the_fbi (to_char(column1, 'YYYYMM') );
    exec dbms_stats.gather_table_stats( user, 'USE_THE_FBI', cascade=> true, method_opt=> 'for all hidden columns');Let's try without querying in the manner in which we defined the index.
    explain plan for
    select *
    from use_the_fbi
      4  where column1 = '201006';
    Explained.
    Elapsed: 00:00:00.01
    TUBBY_TUBBZ?@xplain
    PLAN_TABLE_OUTPUT
    Plan hash value: 1722805582
    | Id  | Operation         | Name        | Rows  | Bytes | Cost (%CPU)| Time     |
    |   0 | SELECT STATEMENT  |             |   100 |   900 |     7   (0)| 00:00:01 |
    |*  1 |  TABLE ACCESS FULL| USE_THE_FBI |   100 |   900 |     7   (0)| 00:00:01 |
    Query Block Name / Object Alias (identified by operation id):
       1 - SEL$1 / USE_THE_FBI@SEL$1
    Predicate Information (identified by operation id):
       1 - filter("COLUMN1"='201006')
    Column Projection Information (identified by operation id):
       1 - "COLUMN1"[DATE,7]
    23 rows selected.
    Elapsed: 00:00:00.02Sad Christmas .. no index love.
    Now, query as we defined the index
    explain plan for
    select *
    from use_the_fbi
    where to_char(column1, 'YYYYMM') = '201006';
    Explained.
    Elapsed: 00:00:00.01
    TUBBY_TUBBZ?TUBBY_TUBBZ?@xplain
    PLAN_TABLE_OUTPUT
    Plan hash value: 268331390
    | Id  | Operation                   | Name            | Rows  | Bytes | Cost (%CPU)| Time     |
    |   0 | SELECT STATEMENT            |                 |    30 |   450 |     2   (0)| 00:00:01 |
    |   1 |  TABLE ACCESS BY INDEX ROWID| USE_THE_FBI     |    30 |   450 |     2   (0)| 00:00:01 |
    |*  2 |   INDEX RANGE SCAN          | USE_THE_FBI_FBI |    30 |       |     1   (0)| 00:00:01 |
    Query Block Name / Object Alias (identified by operation id):
       1 - SEL$1 / USE_THE_FBI@SEL$1
       2 - SEL$1 / USE_THE_FBI@SEL$1
    Predicate Information (identified by operation id):
       2 - access(TO_CHAR(INTERNAL_FUNCTION("COLUMN1"),'YYYYMM')='201006')
    Column Projection Information (identified by operation id):
       1 - "USE_THE_FBI"."COLUMN1"[DATE,7]
       2 - "USE_THE_FBI".ROWID[ROWID,10], TO_CHAR(INTERNAL_FUNCTION("COLUMN1"),'YYYYMM')[VA
           RCHAR2,6]
    27 rows selected.
    Elapsed: 00:00:00.03
    TUBBY_TUBBZ?Happy times.

Maybe you are looking for