Navigation Cache - Object Size

We're currently in the middle of our upgrade to SP15 and one of the new features we're implementing is the navigation cache.  By default, the number of objects to be cached is set at 5000.  So far the behavior is, all the navigation objects (pages) counts as objects.  Then for each user entering the portal with an unique role combination, an additional set of objects (equaling the number of roles they have) is also added.  In our dev environment where most users are superadmins, we're at around 1300 objects.
My question is what's an object limit before there's going to be a performance hit with too much memory usage.  Is 5000 a safe limit?  Or can it be higher?  What happens if the object limit is reached, will it be like a queue where the oldest cached object gets deleted when a new one is added?
Any info on this subject is welcome.  Any experiences with high availability environments using navigation cache would be appreciated.  Thanks

Hi,
The Preliminary objective of Navigation Cache is to improve performance on the server-side. By saving the Navigation Nodes in memory, the number of calls to the PCD or any other backend systems is reduced.
The cache is implemented in a First in - First out manner (FIFO).
Try this link for more information:
http://help.sap.com/saphelp_erp2005/helpdata/en/5f/2720a513ea4ce9a5a4e5d285a1c09c/frameset.htm
Hope it's help
Best Regards,
Shimon.

Similar Messages

  • Memory Notification:Library Cache Object loaded in Heap size 2262K exceeds

    Dear all
    I am facing the following problem. I am using Oracle 10gR2 on Windows.
    Please help me.
    Memory Notification: Library Cache Object loaded into SGA
    Heap size 2262K exceeds notification threshold (2048K)
    KGL object name :XDB.XDbD/PLZ01TcHgNAgAIIegtw==
    Thanks

    This is a normal warning message displayed for release 10.2.0.1.0, this is just a bug that by default has declared the kgllarge_heap_warning_threshold instance parameter to 8388608 . The bug is harmless, but the problem is that you will see a lot of messages displayed on the alert.log file, which renders this file difficult to read and it is uncomfortable to spot the real errors.
    Just declare a higher value for the kgllarge_heap_warning_threshold undocumented instance parameter. This is meant to be corrected at 10.2.0.2.0, but you can manually have this parameter increased to a value higher than the highest value reported.
    For further references take a look at this metalink note:
    Memory Notification: Library Cache Object Loaded Into Sga
         Doc ID:      Note:330239.1
    ~ Madrid
    http://hrivera99.blogspot.com/

  • Error in the Navigation Cache after deleting user

    Hi,
    We have an issue with the navigation cache and deleted users. If we delete a user and then tries to log on with a user with the same set of roles as the deleted user, the navigation cache throws an exception
    User USER.PRIVATE_DATASOURCE.un:z_deleteduser doesn't exist!.
    There is no relation between z_deleteduser and the user we logged on with when getting the exception.
    My guess is that the deleted user was the first user with that set of roles that logged in after last time we cleared the cache, and therefore got used as a key to that particular navigation object.
    Does anyone know how to resolve this, I don't want to empty the cache each time we delete a user?
    Regards
    Mattias

    Hi,
    It seems the guided procedure throws the same exception, which makes sense. I don't have a WAS up and running here, so I can't test, but I guess it's the exception the UME throws if you try to access an non existing user, and it just gets propagated both by the Navigation Cache and Guided Procedures.
    But there has to be a fix for it, somewhere...
    Regards
    Mattias

  • Cache Max Size

    Hi,
    Using the Java Object Caching library
    (formerly OCS4J), you can set a parameter
    for the Maximum size of your cache.
    I am using the Cache to store some custom
    Object in the Application Server.
    If I set the Max Cache Size it is ignored.
    Does this Cache Max Size only apply to Disk-resident
    Cache's, or is this a Bug ?
    Cheers,
    Ronan

    Our presnt size is 5mb and if we increased it to 250mb will it work, how to calculate the size? pls guide. it should work,by default it use below.
    When using the MEMORY_TARGET initialization parameter to specify the memory allocation, Oracle allocates 0.25% of memory_target to the result cache.
    When you set the size of the shared pool using the SGA_TARGET initialization parameter, Oracle allocates 0.5% of sga_target to the result cache.
    If you specify the size of the shared pool using the SHARED_POOL_SIZE initialization parameter, then Oracle allocates 1% of the shared pool size to the result cache.
    http://docs.oracle.com/cd/B28359_01/server.111/b28274/memory.htm#BGBBIACC
    and check "7.3.4.1.3 Allocating Additional Memory to the Result Cache"
    Thanks
    Kuljeet Pal Singh
    Edited by: Kuljeet Pal Singh on May 17, 2012 12:14 PM

  • Page navigation cache delete on back navigation

    Hi,
    Building a Universal WinRT app.
    Is there any way to delete a pages navigation cache when a user navigates backwards via the WP back button?
    e.g. page saves state when user follows link in that page and returns to it. However if a user navigates away from the page using the back button and then returns to it then no state is saved and it reloads
    Thanks!

    Hi,
    Please see this:
    NavigationCacheMode enumeration
    The NavigationCacheMode enumeration has these members.
    Member
    Value
    Description
    Disabled
    0
    The page is   never cached and a new instance of the page is created on each visit.
    Required
    1
    The page is   cached and the cached instance is reused for every visit regardless of the   cache size for the frame.
    Enabled
    2
    The page is   cached, but the cached instance is discarded when the size of the cache for   the frame is exceeded.
    As your description, you should set the Page’s  NavigationCacheMode to Disabled
    Best Wishes!
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place. <br/> Click <a
    href="http://support.microsoft.com/common/survey.aspx?showpage=1&scid=sw%3Ben%3B3559&theme=tech"> HERE</a> to participate the survey.

  • "latch: row cache objects" and high "VERSION_COUNT"

    Hello,
    we are being faced with a situation where the database spends most of it's time waiting for latches in the shared pool (as seen in the AWR report).
    All statements issued by the application are using bind variables, but what we can see in V$SQL is that even though the statements are using bind variables some of them have a relatively high version_count (> 300) and many invaliadations (100 - 200) even though the tables involved are very small (some not more than 3 or 4 rows).
    Here is some (hopefully enough) information about the environment
    Version: Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit Production (on RedHat EL 5)
    Parameters:
    cursor_bind_capture_destination       memory+disk
    cursor_sharing                        EXACT
    cursor_space_for_time                 FALSE
    filesystemio_options                  none
    hi_shared_memory_address              0
    memory_max_target                     12288M
    memory_target                         12288M
    object_cache_optimal_size             102400
    open_cursors                          300
    optimizer_capture_sql_plan_baselines  FALSE
    optimizer_dynamic_sampling            2
    optimizer_features_enable             11.2.0.2
    optimizer_index_caching               0
    optimizer_index_cost_adj              100
    optimizer_mode                        ALL_ROWS
    optimizer_secure_view_merging         TRUE
    optimizer_use_invisible_indexes       FALSE
    optimizer_use_pending_statistics      FALSE
    optimizer_use_sql_plan_baselines      TRUE
    plsql_optimize_level                  2
    session_cached_cursors                50
    shared_memory_address                 0The shared pool size (according to AWR) is 4,832M     
    The buffer cache is 3,008M     
    Now, my question: is a version_count of > 300 a problem (we have about 10-15 of those with a total of ~7000 statements in v$sqlarea). Those are also the statements listed in the AWR report at the top in the section "SQL ordered by Version Count" and "SQL ordered by Sharable Memory"
    Is it possible that those statements are causing the the latch contention in the shared pool?
    I went through https://blogs.oracle.com/optimizer/entry/why_are_there_more_cursors_in_11g_for_my_query_containing_bind_variables_1
    The tables involved are fairly small and all the execution plans for each cursor are identical.
    I can understand some of the invalidations that happen, because we have 7 schemas that have identical tables, but from my understanding that shouldn't cause such a high invalidation number. Or am I mistaken?
    I'm not that experienced with Oracle tuning at that level, so I would appreciate any pointer on how I can find out where exactly the latch problem occurs
    After flushing the shared pool, the problem seems to go away for a while. But apparently that is only fighting symptoms, not fixing the root cause of the problem.
    Some of the statements in question:
    SELECT * FROM QRTZ_SIMPLE_TRIGGERS WHERE TRIGGER_NAME = :1 AND TRIGGER_GROUP = :2
    UPDATE QRTZ_TRIGGERS SET TRIGGER_STATE = :1 WHERE TRIGGER_NAME = :2 AND TRIGGER_GROUP = :3 AND TRIGGER_STATE = :4
    UPDATE QRTZ_TRIGGERS SET TRIGGER_STATE = :1 WHERE JOB_NAME = :2 AND JOB_GROUP = :3 AND TRIGGER_STATE = :4
    SELECT TRIGGER_STATE FROM QRTZ_TRIGGERS WHERE TRIGGER_NAME = :1 AND TRIGGER_GROUP = :2
    UPDATE QRTZ_SIMPLE_TRIGGERS SET REPEAT_COUNT = :1, REPEAT_INTERVAL = :2, TIMES_TRIGGERED = :3 WHERE TRIGGER_NAME = :4 AND TRIGGER_GROUP = :5
    DELETE FROM QRTZ_TRIGGER_LISTENERS WHERE TRIGGER_NAME = :1 AND TRIGGER_GROUP = :2So all of them are using bind variables.
    I have seen that the columns used in the where clause all have histograms available. Would removing them reduce the number of invalidations?
    Unfortunately I did not save the information from v$sql_shared_cursor before the shared pool was flushed, but most of the invalidations occurred in the ROLL_INVALID_MISMATCH column if that is of any help. There are some invalidations reported for AUTH_CHECK_MISMATCH and TRANSLATION_MISMATCH but to my understanding they caused by executing the statement for different schemas if I'm not mistaken.
    Looking at v$latch_missed, most of the waits for parent = 'row cache objects' are for "kqrpre: find obj" and "kqreqd: reget"

    >
    In the AWR report, what does the Dictionary Cache Stats section say?
    >
    Here they are:
    Dictionary Cache Stats                                                                                                     
    Cache                 Get Requests      Pct Miss     Scan Reqs    Mod Reqs      Final Usage                                
    dc_awr_control        65                0.00         0            2             1                                          
    dc_constraints        729               33.33        0            729           1                                          
    dc_global_oids        60                23.33        0            0             31                                         
    dc_histogram_data     7,397             10.53        0            0             2,514                                      
    dc_histogram_defs     21,797            9.83         0            0             5,239                                      
    dc_object_grants      4                 25.00        0            0             12                                         
    dc_objects            27,683            2.29         0            223           2,581                                      
    dc_profiles           1,842             0.00         0            0             1                                          
    dc_rollback_segments  1,634             0.00         0            0             39                                         
    dc_segments           7,335             6.94         0            360           1,679                                      
    dc_sequences          139               5.76         0            139           19                                         
    dc_table_scns         53                100.00       0            0             0                                          
    dc_tablespace_quotas  1,956             0.10         0            0             4                                          
    dc_tablespaces        17,488            0.00         0            0             11                                         
    dc_users              58,013            0.03         0            0             164                                        
    global database name  4,261             0.00         0            0             1                                          
    outstanding_alerts    54                0.00         0            0             9                                          
    sch_lj_oids           4                 0.00         0            0             2                                          
    Library Cache Activity                                                                                                     
    Namespace             Get Requests     Pct Miss     Pin Requests          Pct Miss      Reloads   Invalidations            
    ACCOUNT_STATUS        3,664            0.03         0                                   0         0                        
    BODY                  560              2.14         2,343                 0.60          0         0                        
    CLUSTER               52               0.00         52                    0.00          0         0                        
    DBLINK                3,668            0.00         0                                   0         0                        
    EDITION               1,857            0.00         3,697                 0.00          0         0                        
    INDEX                 99               19.19        99                    19.19         0         0                        
    OBJECT ID             68               100.00       0                                   0         0                        
    SCHEMA                2,646            0.00         0                                   0         0                        
    SQL AREA              32,996           2.26         1,142,497             0.21          189       226                      
    SQL AREA BUILD        848              62.15        0                                   0         0                        
    SQL AREA STATS        860              82.09        860                   82.09         0         0                        
    TABLE/PROCEDURE       17,713           2.62         26,112                4.88          61        0                        
    TRIGGER               1,704            2.00         6,737                 0.52          1         0                        

  • Memory Notification: Library Cache Object loaded into SGA

    Dear Gurus
    I am noticing the following error into my database. database version is Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bi host sun solaris
    Memory Notification: Library Cache Object loaded into SGA
    Heap size 2905K exceeds notification threshold (2048K)
    Details in trace file /orafs/app/oracle/admin/pblsw/bdump/pblsw_dw01_14545.trc
    KGL object name :SELECT /*+rule*/ SYS_XMLGEN(VALUE(KU$), XMLFORMAT.createFormat2('VIEW_T', '7')), KU$.OBJ_NUM ,KU$.SCHEMA_OBJ.NAME ,KU$.SCHEMA_OBJ.NAME ,'VIEW' ,KU$.SCHEMA_OBJ.OWNER_NAME FROM SYS.KU$_VIEW_VIEW KU$ WHERE  KU$.OBJ_NUM IN (SELECT * FROM TABLE(DBMS_METADATA.FETCH_OBJNUMS(200001)))
    Regards
    Rabi

    refer
    Memory Notification: Library Cache Object Loaded Into Sga (Doc ID 330239.1)
    http://support.oracle.com

  • Navigation cache

    Hi all,
    I read that enabling navigation cache improves portal performance.
    My question is this: If i enable/disable navigation cache, or modifying any of it's properties in visual administrator - does the portal need to be restarted or the changes take effect immediately?
    Also, the properties come with default values: 100 for cache lifetime, and 5000 for number of objects. Are those values the recommended values to use? what should i take into consideration when giving values to these properties?
    Thanks,
    Moti.

    Hi Moti,
    If you make changes to the properties in the Visual Admin you will need a restart of the J2EE.
    When setting the timeout of the cache it is important to consider the number of navigation object which you are displaying and also the frequency with which they may change.  The good thing about the navigation is, that it should not change that often for a particular user.  So the default timeouts of the navigation cache are not quite as critical as those for something like a content cache.
    Besides, a System Administrator can always clear the cache manually, anytime anyway.
    Rgds,
    Marc

  • After REFRESH the cached object is not consistent with the database table

    After REFRESH, the cached object is not consistent with the database table. Why?
    I created a JDBC connection with the Oracle database (HR schema) using JDeveloper(10.1.3) and then I created an offline database (HR schema)
    in JDeveloper from the existing database tables (HR schema). Then I made some updates to the JOBS database table using SQL*Plus.
    Then I returned to the JDeveloper tool and refreshed the HR connection. But I found no any changes made to the offline database table JOBS in
    JDeveloper.
    How to make the JDeveloper's offline tables to be synchronized with the underling database tables?

    qkc,
    Once you create an offline table, it's just a copy of a table definition as of the point in time you brought it in from the database. Refreshing the connection, as you describe it, just refreshes the database browser, and not any offline objects. If you want to syncrhnonize the offline table, right-click the offline table and choose "Generate or Reconcile Objects" to reconcile the object to the database. I just tried this in 10.1.3.3 (not the latest 10.1.3, I know), and it works properly.
    John

  • Navigation to object is not supported

    Hello all,
    YTEST(Package) => Web Objects => BSP Application => YTEST_01 => Pages with Flow Logic => YTEST.HTM
    => Event Handler => OnInitializaion
    Does not working Doulbe Click the any INCLUDE or Perform syntax.
    Error message is "Navigation to object is not supported"
    Message Number is "SO2_TOOL039"
    SAP R/3 Enterprise
    SAP_BASIS     620
    SAP_ABA     620
    SAP_APPL     470
    help me on this request, will rerward points
    /Best Regards
    Jacob

    Below that source code...
    event handler for data retrieval
    *"  INITIALIZATION
    INCLUDE yplas_i005.
    DATA : it_utype TYPE yplas_ty019.
    UTYPE = c_doc_elec_bill.
    APPEND c_doc_elec_bill TO it_utype.

  • Navigation is cached - even when navigation cache is disabled?!

    I seem to have a problem clearing the navigation cache. Whenever I change a role of workset in the PCD, the change is not visible until some time has passed (perhaps 100 minutes, I will try to verify that).
    If I change a page (like inserting a new iView) the change is visible immediatly.
    This sounds like a fairly standard "flush the navigation cache" problem, but that does not solve the problem. I have disabled all the caches in "System Administration -> Navigation -> Navigation cache" and have also cleared all of them just for good measure.
    I have used Firebug in firefox to verify that this is not a browser cache problem. For example I have a folder in the role that contains two pages. I add a third page, flush all browser caches, close the browser and reload the page. In firebug I can see that I get a "200 OK" response that only includes the original two pages - not the new third page.
    I have also tried clearing the PCD cache in "System Administration -> Support -> Portal Content Directory -> PCD Administration -> Release cache". When I do that I can see (again with firebug) that the request is taking slightly longer the first time (around 300ms instead of the usual ~70ms). However, the new page is still not visible.
    The only thing that help (besides waiting) is to restart the entire portal. The changes are then visible immediatly.
    I have even tried clearing the HTTP cache, which also does not help.
    What other caches could there be besides the navigation cache, the PCD cache, the HTTP cache or the browser cache? How can I debug this problem further?
    Thanks in advance.
    Best regards,
    Ole Hyldahl Tolshave
    P.S. We use SEP EP 7.00 SP21
    Edited by: Ole Hyldahl Tolshave on Jun 17, 2010 10:21 AM

    Hi Tobias,
    I tried clearing the DB cache (by using /irj/servlet/prt/portal/prtroot/com.sap.portal.prt.cache.PRTRegionDBClear). No change (change to role is still being cached).
    I used the PCD Inspector and verified that the contents are identical to what I see in Content Administration -> Portal Content (which is different from what is rendered in the top navigation and detailed navigation).
    We only have one server node running.
    I tried deploying the .PAR-file from SAP support (and restarted). This made no changes so now I am waiting for them to get back to me.
    But thank you again for trying to help.
    Best regards,
    Ole Hyldahl Tolshave

  • Re: Update Cache Objects in Delta Process Dosn't work

    Hi All,
    Re: Update Cache Objects in Delta Process doesn't work.
    BI 7 - SP 17
    This is the scenario I am working on, am running a bex query on a Cube(via a multi) with bunch aggregates.
    The daily extraction & Aggregate rollup is correct, but when I run a Bex Query it display incorrect keyfigure values as compared to what we see in LISTCUBE for the infocube.
    So when I ran the same query in RSRT with "Do not use Cache", it gave correct results and then when I ran the Bex Query again it fixed itself and it displayed correctly.
    InfoCube - standard & No compression for requests
    Query Properties are
    Read Mode - H
    Req Status  - 1
    Cache - Main Memory Cache Without swaping
    Update Cache Objects in Delta Process (Flag selected)
    SP grouping - 1
    This problem occurs once in couple of weeks and my question is there a permanant fix for it??
    OR should we turn the cache off??
    Can anyone please help.
    Thanking You.
    Rao

    Hi Kevin/Rao,
    We are currently experiencing problems with the 'Update Cache Objects in Delta' process.  Did either of you manage to resolve your issues, and if so, how?

  • TopLink cached object changed are not commited to the database

    Hello,
    I'm using TopLink 10 and I have a writing issue with a use case:
    1. I read an obect using TopLink that is in the IdentityMap
    2. Using JSF this object is edited throught a web form.
    3. I give the modified object to the data layer and try to modify inside a unit of work:
    UnitOfWork uow = session.acquireUnitOfWork();
    //laspEtapeDef comes from JSF and has been modfied previously
    LaspEtapeDef laspEtapeDefClone = uow.readObject( laspEtapeDef );
    //I update the clone field
    laspEtapeDefClone.setDescription(laspEtapeDef.getDescription());
    uow.commit();4. I use again the same object to display it once modified.
    The object is modified in the cache but the modified fields are never commited to the database. This code works only if I disable the cache.
    So, I've modified my JSF form to send the fields instead of modifying directly the object.
    My question: Is there a way to commit changes mades in an cached object?
    I've found the following section in the documentation, that explain the problem but doesn't gives the solution:
    http://docs.oracle.com/cd/E14571_01/web.1111/b32441/uowadv.htm#CACGDJJH
    Any idea?

    How are you reading in the object initially? The problem is likely that you are modifying an object from the session cache. When you then read in the object from the uow, it uses the object in the session cache as the back up. So there will not appear to be any changes to persist to the database.
    You will need to make a copy of the object for modification, or use the copy from the unitofwork to make the changes instead of working directly on the object in the session. Disabling the cache means there is no copy in the session cache to use as a back up, so the uow read has to build an object from the database.
    Best Regards,
    Chris

  • Navigation Cache - Loading Web Dynpro iview

    Hello Experts,
    I developed a simple WebDynpro that count the access number to a single portal page.
    And I put it in a Role.
    In a cluster environment I had different results depending on the cluster instance I use.
    If I do a Logon in the central instance and navigate the role I get a value of access number.
    If I do a Logon in the dialog instance and navigate the role I get a different value of access number.
    The value in the database is always the same..
    Could it be a cache problem??
    What can I do??
    Best Regards

    Hi,
    Did you try clearing the navigational cache on dialog server and also in Central Instance?
    In Portal Navigate to System Administration - Navigation - Clear Navigation Cache.
    And test the application again and see if it got resolved...
    Or
    Go to Index.html side and go to Web Dynpro Tools, and go to Invalidation of ARFC Metadata Cache - In section Dictionaries Cache Invalidation - click on the button to get teh application using the JCO connection and invalidate the cache...
    Hope this helps.
    Cheers-
    Pramod

  • How to get OLAP cube objects size info?

    Hi,
    I am new at OLAP cube.
    I want to know OLAP Cube objects size information like VIEW.
    is any query to get size of Cube objects?
    Please help me out on this.
    Thank you,
    Nitin

    Nitin,
    This will give you some idea.
    *(1). Size of the whole AW:*
    select dbal.owner||'.'||substr(dbal.table_name,4) awname,
    to_char(round(sum(dbas.bytes)/1024/1024, 1), '999,999.9') as mb, dbas.tablespace_name, logging
    from   dba_lobs dbal, dba_segments dbas
    where  dbal.column_name = 'AWLOB' and dbal.segment_name = dbas.segment_name
    group by dbal.owner, dbal.table_name, dbas.tablespace_name, logging
    order by sum(dbas.bytes) desc
    *(2). Size of internal objects:*
    Each cube has an associated _STORED variable and a 'PXX' partition.
    _PRTCOMP is cube's partition's composite dimension.
    _AGGMAP  is the aggregation map that is used during aggregation of data.
    Replace table AW$BNSOLAP with the name of your AW table.
    select partname,
    round(sum(dbms_lob.getlength(awlob))/1024,0) KB
    from bawolap.aw$bnsolap
    where extnum = 0
    group by partname
    order by kb desc
    +;+

Maybe you are looking for