Difference Result Caching : OSB

Hi
In OSB, for a business service (based on a Java deployment on WebLogic server) I can see -
Under Configuration Details - Message Handling Configuration-->Result Caching --> "Not Supported"
Under Operational Settings - Result Caching-->Result Caching State--> This is enabled by default
I have restarted server and executed a proxy flow. I think its still ON. I want it to be OFF.
Can someone tell me if result caching should be ON or OFF in above scenario?
-s-k

what makes you think it's still on?
the option in operation settings should be on if you're planning to use it on one of the other business services (it's the global enable setting)
after that you can enable it per service with the settings in configuration details
if you never want to use it it should be enough(i think) to disable it in the operation settings

Similar Messages

  • Result Caching in OSB

    We are planning to implement OSB result caching feature in our project.We did the following to do a POC.
    1.Created a DBAdapter to select from a table and created a BS out of that.
    2.Enabled Result caching with TTL for 5 mins.
    3.Invoked the BS from a PS.
    4.Tested the PS by invoking from test cosnole.
    5.Response was received as expected.
    6.Changed the value in the table and tested again within 5 mins.
    7.New values were returned instead of the ones in the cache.
    What might be the problem?Should it not return the old value from table?

    Each cached result is uniquely identified by a cache key that is made up of the ServiceRef (the unique identifier for the service which is the fully qualified path name of the service), the operation being invoked, and a cache token String. The cache token helps to uniquely identify a single cache result among other cache results for one business service. You control the value of the cache token. You can set the cache token either by configuring the Cache Token expression in the Result Caching configuration for the business service or by using the cache-token metadata element in the $transportMetaData using the proxy service message flow. If there is no cache-token defined then caching may not work as expected.
    Please refer -
    35.7.5 Improving Performance by Caching Business Service Results at http://download.oracle.com/docs/cd/E17904_01/doc.1111/e15867/configuringandusingservices.htm#CHDDCGEE
    http://blogs.oracle.com/MarkSmith/2011/03/osb_and_coherence_integration_1.html
    Regards,
    Anuj

  • OSB result caching with Coherence Out of process

    Existing setup:
    Oracle Fusion Middleware SOA 11g domain with
    1 weblogic cluster
    1 OSB cluster
    We have an Out of Process Coherence cluster configured with  caches defined already which is just working fine in production.
    The requirement is that development team would like to use the OSB result caching feature and we are having hard time to configure this OSB result cache join our existing cluster.
    Any suggestions on this is appreciated.

    Hi,
    You would need to override the operational configuration on OSB Server to join the cluster spawned by the Coherence dedicated servers. Also, set the flag -Dtangosol.coherence.distributed.storage=false in the ServerStart of your OSB Servers which will disable the data storage in the OSB Servers.
    HTH
    Cheers,
    _NJ                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           

  • OSB - Result Caching

    Hi,
    How do I confirm if the result caching is working? This is on the latest download available for OSB - 11.1.1.3.
    I tried to launch separate instances of caches, but could not confirm. Secondly, I also tried to enable caching support for a business service. I put in a hard coded expression in the cache token expression. I was not able to get that working.
    Any ideas?
    Regards,
    Anand.
    Edited by: user653362 on May 12, 2010 6:29 AM

    >
    How do I confirm if the result caching is working? This is on the latest download available for OSB - 11.1.1.3.
    >
    Perhaps the simplest way is to check access log on your backend (business service). Arrange a simple test that will lead to repeated callouts (with the same request data) to your business service. Than you should see only one (the first) request logged in your backend.
    The better way is to start another node of Coherence, connect to the OSB instance of Coherence and see what your cache looks like. Look at Coherence documentation for command line parameters:
    http://coherence.oracle.com/display/COH35UG/Command+Line+Setting+Override+Feature
    I was able to connect to the default OSB Coherence instance and list cached entries using this command:
    java -Dtangosol.coherence.cluster=OSB-cluster -Dtangosol.coherence.clusteraddress=228.8.8.8 -Dtangosol.coherence.clusterport=9888 -Dtangosol.coherence.distributed.localstorage=true -Dtangosol.coherence.override=/opt/Oracle11g/user_projects/domains/osb11_domain/config/osb/coherence/osb-coherence-override.xml -Dtangosol.coherence.cacheconfig=/opt/Oracle11g/user_projects/domains/osb11_domain/config/osb/coherence/osb-coherence-cache-config.xml com.tangosol.net.CacheFactory

  • Result cache refresh at business service (OSB) ?

    Hi,
    I have configured my business service at osb side to cache the result. My business service is pointing JCA- dbadapter which is calling a stored procedure.
    Is there any way to update/refresh the cache if there are any changes in the corresponding tables which the store procedure is using. I have googled a lot on this but have found nothing on it.
    Any help would be very much appreciated.

    Is there any way to update/refresh the cache if there are any changes in the corresponding tables which the store procedure is using. I have googled a lot on this but have found nothing onAFAIK, OSB does not provide any functionality to refresh the cache without hitting the backend sevice.
    The result caching in Oracle Service Bus is available for Business Services. When you enable result caching, the Business Service will not reach the backend service and the response will come from the cache entry. This entry can expire and if the entry is expired, the next service call will indeed reach the backend service and update the cache entry.
    Each cached result has its own TTL. When a TTL is reached, Oracle Coherence flushes that individual cached result.
    It would be better if you can raise a support ticket and ask for enhancement.
    Regards,
    Abhinav Gupta

  • OSB result caching : expiration

    Hi,
    Does someone know if it's possible to override the TTL (set at design-time) of the result caching while deploying (using the customization file for example or WLST ?).
    regards,
    mathieu

    Thank you both of you.
    While the xquery expression based on an input parameter is definetly an option, it will not be applicable in our case (The cache feature should be completely invisible for consumers).
    I think I'll lurk around the ant script for modifying the business service file contained in the archive.
    regards,
    mathieu

  • SQL Result Cache  vs In-Memory Database Cache

    Hi,
    can anyone help me to understand the relations and differences between the 11 g new features of SQL Result Cache vs In-Memory Database Cache ?
    Thanks

    I highly recommend you read the 11g New Features Guide. Here is a sample from it:
    h4. 1.11.2.9 Query Result Cache
    A separate shared memory pool is now used for storing and retrieving
    cached results. Query retrieval from the query result cache is faster
    than rerunning the query. Frequently executed queries will see
    performance improvements when using the query result cache.
    The new query result cache enables explicit caching of results in
    database memory. Subsequent queries using the cached results will
    experience significant performance improvements.
    See Also:
    [Oracle Database Performance Tuning Guide|http://download.oracle.com/docs/cd/B28359_01/server.111/b28274/memory.htm#PFGRF10121] for details
    [Results Cache Concepts|http://download.oracle.com/docs/cd/B28359_01/server.111/b28274/memory.htm#PFGRF10121|Results Cache Concepts]
    HTH!

  • DB buffer cache vs. SQL query & PL/SQL function result cache

    Hi all,
    Started preparing for OCA cert. just myself using McGraw Hill's exam guide. Have a question about memory structures.
    Actually, DB buffer cache is used to copy e.g. SELECT queries result data blocks, that can be reused by another session (server process).
    There is also additional otion - SQL query & PL/SQL function result cache (from 11g), where also stored the results of such queries.
    Do they do the same thing or nevertheless there is some difference, different purpose?
    thanks in advance...

    There is also additional otion - SQL query & PL/SQL function result cache (from 11g), where also stored the results of such queries.Result cache located in shared pool.So it is one component of shared pool.When server process execute query(and if you configured result cache) then result will store in shared pool.Then next execution time run time mechanism will detect and consider using result cache without executing this query(if data was not changed this is happen detection time)
    Do they do the same thing or nevertheless there is some difference, different purpose?.Buffer cache and result cache are different things and purpose also,but result cache introduced to improve response time of query in 11g(but such mechanism also implemented in 10g subquery execution,in complex query).In buffer cache holds data blocks but not such results.
    Edited by: Chinar on Nov 4, 2011 4:40 AM
    (Removing lots of "But" word from sentences :-) )

  • Result cache doubt

    what is the difference if i write relies_on clause or if i dont write it, technically please explain what exactly is the difference ??
    create or replace function tax (i in varchar2)
    return number
    result_cache
    is
    begin
    return i*0.08 ;
    end;
    create or replace function tax (i in varchar2)
    return number
    result_cache relies_on (emp)
    is
    begin
    return i*0.08 ;
    end;

    http://docs.oracle.com/cd/B28359_01/appdev.111/b28370/function.htm#i34368
    RELIES_ON
    Specifies the data sources on which the results of a function depend. For more information, see Using the PL/SQL Function Result Cache. http://docs.oracle.com/cd/B28359_01/appdev.111/b28370/subprograms.htm#BABFHACJ
    To enable result-caching for a function, use the RESULT_CACHE clause. When a result-cached function is invoked, the system checks the cache. If the cache contains the result from a previous call to the function with the same parameter values, the system returns the cached result to the invoker and does not reexecute the function body. If the cache does not contain the result, the system executes the function body and adds the result (for these parameter values) to the cache before returning control to the invoker.Not sure why are you talking about invalidated data, result_cache just invoked result from a previous call to the function if it exists, if not it executes the function body.
    The clause relies_on just specifies the data sources on which the results of a function depend.
    am i missing something??

  • Result Caching

    I was going through the Result caching feature of Oracle 11g. Just eager to know
    What are the differences between this and the DETERMINISTIC option.
    If RESULT CACHE...RELIES ON(table/view) is an enhanced feature of the DETERMINISTIC option then what are the limitations of the DETERMINISTIC functions.
    Thanks in advance

    The DETERMINISTIC option does not really do anything
    except satisfy certain syntax requriements. Then, shouldn't here be any difference?
    SQL> set feed 3
    SQL> set echo on
    SQL> select * from v$version where rownum<=1;
    BANNER
    Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - Prod
    SQL> create or replace package p is
      2  counter number:=0;
      3  end;
      4  /
    Package created.
    SQL> create or replace function determ(p_in varchar2) return number deterministic is
      2  begin
      3  p.counter := p.counter + 1;
      4  if p.counter<=10 then
      5  return 0;
      6  else
      7  return p.counter;
      8  end if;
      9  end;
    10  /
    Function created.
    SQL>
    SQL> create or replace function non_determ(p_in varchar2) return number is
      2  begin
      3  p.counter := p.counter + 1;
      4  if p.counter<=10 then
      5  return 0;
      6  else
      7  return p.counter;
      8  end if;
      9  end;
    10  /
    Function created.
    SQL>
    SQL> create table emp_copy
      2  as
      3  select emp.*
      4  from emp,(select rownum from dual connect by level <=10)
      5  ;
    Table created.
    SQL>
    SQL> exec p.counter:=0;
    PL/SQL procedure successfully completed.
    SQL>
    SQL> select ename,determ(ename)
      2  from emp_copy
      3  where determ(ename)=0;
    ENAME      DETERM(ENAME)
    SMITH                  0
    ALLEN                  0
    WARD                   0
    JONES                  0
    MARTIN                 0
    ALLEN                  0
    WARD                   0
    JONES                  0
    MARTIN                 0
    ALLEN                  0
    WARD                   0
    JONES                  0
    MARTIN                 0
    ALLEN                  0
    WARD                   0
    JONES                  0
    16 rows selected.
    SQL>
    SQL> exec p.counter:=0;
    PL/SQL procedure successfully completed.
    SQL>
    SQL> select ename,non_determ(ename)
      2  from emp_copy
      3  where non_determ(ename)=0;
    ENAME      NON_DETERM(ENAME)
    SMITH                      0
    ALLEN                      0
    WARD                       0
    JONES                      0
    MARTIN                     0
    5 rows selected.Best regards
    Maxim

  • Query result caching on oracle 9 and 10 vs indexing

    I am trying to improve performance on oracle 9i and 10g.
    We use some queries that take up to 30 minutes to execute.
    I heard that there are some products to cache query results.
    Would this have any advantage over using indexes or materialized views?
    Does anyone know any products that I can use to cache the results of this queries on disk?
    Personally I think that by using the query result caching I would reduce the cpu time needed to process the query.
    Is this true?

    Your message post pushes all the wrong buttons starting with the fact that 9i and 10g are marketing labels not version numbers.
    You don't tune queries by spending money and throwing resources at them. You tune them by identifying the problem queries, running explain plans, visualizing their output using DBMS_XPLAN, and addressing the root cause.
    If you want help post full version numbers, the SQL statements, and the DBMS_XPLAN outputs.

  • Oracle 11g result cache and TimesTen

    Oracle 11g has introduced the concept of result cache whereby the result set of frequently executed queries are stored in cache and used later when other users request the same query. This is different from caching the data blocks and exceuting the query over and over again.
    Tom Kyte calls this just-in-time materialized view whereby the results are dynamically evaluated without DBA intervention
    http://www.oracle.com/technology/oramag/oracle/07-sep/o57asktom.html
    My point is that in view of utilities like result_cache and possible use of Solid State Disks in Oracle to speed up physical I/O etc is there any need for a product like TimesTen? It sounds to me that it may just asdd another layer of complexity?

    Oracle result cache ia a useful tool but it is distinctly different from TimesTen. My understanding of Oracle's result cache is caching results set for seldom changing data like look up tables (currencies ID/code), reference data that does not change often (list of counter parties) etc. It would be pointless for caching result set where the underlying data changes frequently.
    There is also another argument for SQL result cache in that if you are hitting high on your use of CPUs and you have enough of memory then you can cache some of the results set thus saving on your CPU cycles.
    Considering the arguments about hard wired RDBMS and Solid State Disks (SSD), we can talk about it all day but having SSD does not eliminate the optimiser consideration for physical I/O. A table scan is a table scan whether data resides on SCSI or SSD disk. SSD will be faster but we are still performing physical IOs.
    With regard to TimesTen, the product positioning is different. TimesTen is closer to middletier than Oracle. It is designed to work closely to application layer whereas Oracle has much wider purpose. For real time response and moderate volumes there is no way one can substitue TimesTen with any hard wired RDBMS. The request for result cache has been around for sometime. In areas like program trading and market data where the underlying data changes rapidly, TimesTen will come very handy as the data is real time/transient and the calculations have to be done almost realtime, with least complications from the execution engine. I fail to see how one can deploy result cache in this scenario. Because of the underlying change of data, Oracle will be forced to calculate the queries almost everytime and the result cache will be just wasted.
    Hope this helps,
    Mich

  • Oracle 11g/R2 Query Result Cache - Incremental Update

    Hi,
    In Oracle 11g/R2, I created replica of HR.Employees table & executed the following statement (+Although using SUM() function is non-logical in this case, but just testifying the result+)
    STEP - 1
    SELECT      /+ RESULT_CACHE */ employee_id, first_name, last_name, SUM(salary)*
    FROM           HR.Employees_copy
    WHERE      department_id = 20
    GROUP BY      employee_id, first_name, last_name;
    EMPLOYEE_ID      FIRST_NAME LAST_NAME     SUM(SALARY)
    202           Pat           Fay          6000
    201           Michael           Hartstein     13000
    Elapsed: 00:00:00.01
    Execution Plan
    Plan hash value: 3837552314
    | Id | Operation           | Name | Rows | Bytes | Cost (%CPU)| Time |
    | 0 | SELECT STATEMENT      | | 2 | 130 | 4 (25)| 00:00:01 |
    | 1 | RESULT CACHE      | 3acbj133x8qkq8f8m7zm0br3mu | | | | |
    | 2 | HASH GROUP BY      | | 2 | 130 | 4 (25)| 00:00:01 |
    |* 3 | TABLE ACCESS FULL     | EMPLOYEES_COPY | 2 | 130 | 3 (0)| 00:00:01 |
    --------------------------------------------------------------------------------------------------     Statistics
    0 recursive calls
    0 db block gets
    0 consistent gets
    0 physical reads
    0 redo size
    *690* bytes sent via SQL*Net to client
    416 bytes received via SQL*Net from client
    2 SQL*Net roundtrips to/from client
    0 sorts (memory)
    0 sorts (disk)
    2 rows processed
    STEP - 2
    INSERT INTO HR.employees_copy
    VALUES(200, 'Dummy', 'User','[email protected]',NULL, sysdate, 'MANAGER',5000, NULL,NULL,20);
    STEP - 3
    SELECT      /*+ RESULT_CACHE */ employee_id, first_name, last_name, SUM(salary)
    FROM           HR.Employees_copy
    WHERE      department_id = 20
    GROUP BY      employee_id, first_name, last_name;
    EMPLOYEE_ID      FIRST_NAME LAST_NAME SUM(SALARY)
    202      Pat      Fay      6000
    201      Michael      Hartstein      13000
    200      Dummy User      5000
    Elapsed: 00:00:00.03
    Execution Plan
    Plan hash value: 3837552314
    | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
    | 0 | SELECT STATEMENT |          | 3 | 195 | 4 (25)| 00:00:01 |
    | 1 | RESULT CACHE | 3acbj133x8qkq8f8m7zm0br3mu | | | | |
    | 2 | HASH GROUP BY | | 3 | 195 | 4 (25)| 00:00:01 |
    |* 3 | TABLE ACCESS FULL| EMPLOYEES_COPY | 3 | 195 | 3 (0)| 00:00:01 |
         Statistics
    0 recursive calls
    0 db block gets
    4 consistent gets
    0 physical reads
    0 redo size
    *714* bytes sent via SQL*Net to client
    416 bytes received via SQL*Net from client
    2 SQL*Net roundtrips to/from client
    0 sorts (memory)
    0 sorts (disk)
    3 rows processed
    In the execution plan of STEP-3, against ID-1 the operation RESULT CACHE is shown which shows the result has been retrieved directly from Result cache. Does this mean that Oracle Server has Incrementally Retrieved the resultset?
    Because, before the execution of STEP-2, the cache contained only 2 records. Then 1 record was inserted but after STEP-3, a total of 3 records was returned from cache. Does this mean that newly inserted row is retrieved from database and merged to the cached result of STEP-1?
    If Oracle server has incrementally retrieved and merged newly inserted record, what mechanism is being used by the Oracle to do so?
    Regards,
    Wasif
    Edited by: 965300 on Oct 15, 2012 12:25 AM

    965300 wrote:
    Hi,
    In Oracle 11g/R2, I created replica of HR.Employees table & executed the following statement (+Although using SUM() function is non-logical in this case, but just testifying the result+)
    STEP - 1
    SELECT      /+ RESULT_CACHE */ employee_id, first_name, last_name, SUM(salary)*
    FROM           HR.Employees_copy
    WHERE      department_id = 20
    GROUP BY      employee_id, first_name, last_name;
    EMPLOYEE_ID      FIRST_NAME LAST_NAME     SUM(SALARY)
    202           Pat           Fay          6000
    201           Michael           Hartstein     13000
    Elapsed: 00:00:00.01
    Execution Plan
    Plan hash value: 3837552314
    | Id | Operation           | Name | Rows | Bytes | Cost (%CPU)| Time |
    | 0 | SELECT STATEMENT      | | 2 | 130 | 4 (25)| 00:00:01 |
    | 1 | RESULT CACHE      | 3acbj133x8qkq8f8m7zm0br3mu | | | | |
    | 2 | HASH GROUP BY      | | 2 | 130 | 4 (25)| 00:00:01 |
    |* 3 | TABLE ACCESS FULL     | EMPLOYEES_COPY | 2 | 130 | 3 (0)| 00:00:01 |
    --------------------------------------------------------------------------------------------------     Statistics
    0 recursive calls
    0 db block gets
    0 consistent gets
    0 physical reads
    0 redo size
    *690* bytes sent via SQL*Net to client
    416 bytes received via SQL*Net from client
    2 SQL*Net roundtrips to/from client
    0 sorts (memory)
    0 sorts (disk)
    2 rows processed
    STEP - 2
    INSERT INTO HR.employees_copy
    VALUES(200, 'Dummy', 'User','[email protected]',NULL, sysdate, 'MANAGER',5000, NULL,NULL,20);
    STEP - 3
    SELECT      /*+ RESULT_CACHE */ employee_id, first_name, last_name, SUM(salary)
    FROM           HR.Employees_copy
    WHERE      department_id = 20
    GROUP BY      employee_id, first_name, last_name;
    EMPLOYEE_ID      FIRST_NAME LAST_NAME SUM(SALARY)
    202      Pat      Fay      6000
    201      Michael      Hartstein      13000
    200      Dummy User      5000
    Elapsed: 00:00:00.03
    Execution Plan
    Plan hash value: 3837552314
    | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
    | 0 | SELECT STATEMENT |          | 3 | 195 | 4 (25)| 00:00:01 |
    | 1 | RESULT CACHE | 3acbj133x8qkq8f8m7zm0br3mu | | | | |
    | 2 | HASH GROUP BY | | 3 | 195 | 4 (25)| 00:00:01 |
    |* 3 | TABLE ACCESS FULL| EMPLOYEES_COPY | 3 | 195 | 3 (0)| 00:00:01 |
         Statistics
    0 recursive calls
    0 db block gets
    4 consistent gets
    0 physical reads
    0 redo size
    *714* bytes sent via SQL*Net to client
    416 bytes received via SQL*Net from client
    2 SQL*Net roundtrips to/from client
    0 sorts (memory)
    0 sorts (disk)
    3 rows processed
    In the execution plan of STEP-3, against ID-1 the operation RESULT CACHE is shown which shows the result has been retrieved directly from Result cache. Does this mean that Oracle Server has Incrementally Retrieved the resultset?
    Because, before the execution of STEP-2, the cache contained only 2 records. Then 1 record was inserted but after STEP-3, a total of 3 records was returned from cache. Does this mean that newly inserted row is retrieved from database and merged to the cached result of STEP-1?
    If Oracle server has incrementally retrieved and merged newly inserted record, what mechanism is being used by the Oracle to do so?
    Regards,
    Wasif
    Edited by: 965300 on Oct 15, 2012 12:25 AMNo, the RESULT CACHE operation doesn't necessarily mean that the results are retrieved from there. It could be being
    written to there.
    Look at the number of consistent gets: it's zero in the first step (I assume you had already run this query before) and I would
    conclude that the data is being read from the result cache.
    In the third step there are 4 consistent gets. I would conclude that the data is being written to the result cache, a fourth step repeating
    the SQL should show zero consistent gets and that would be the results being read.

  • Function result Cache in oracle 11G

    Hi,
    i am reading the following article and trying to reproduce same set of statements to learn about function result cache.
    http://www.oracle.com/technology/oramag/oracle/07-sep/o57asktom.html
    Details about my output:
    SQL> create or replace
    function not_cached
    ( p_owner in varchar2 )
    return number
    as
    l_cnt number;
    begin
    select count(*)
    into l_cnt
    from t
    where owner = p_owner;
    sys.dbms_lock.sleep(1);
    return l_cnt;
    end;
    Function created.
    Elapsed: 00:00:00.13
    SQL> create or replace
    function cached
    ( p_owner in varchar2 )
    return number
    result_cache
    relies_on(T)
    as
    l_cnt number;
    begin
    select count(*)
    into l_cnt
    from t
    where owner = p_owner;
    dbms_lock.sleep(1);
    return l_cnt;
    end;
    Function created.
    Elapsed: 00:00:00.08
    SQL> exec dbms_output.put_line( not_cached( 'SCOTT' ) );
    PL/SQL procedure successfully completed.
    Elapsed: 00:00:01.06
    SQL> exec dbms_output.put_line( not_cached( 'SCOTT' ) );
    PL/SQL procedure successfully completed.
    Elapsed: 00:00:01.01
    SQL> SQL> exec dbms_output.put_line( not_cached( 'SCOTT' ) );
    PL/SQL procedure successfully completed.
    Elapsed: 00:00:01.02
    SQL> SQL> set serveroutput on
    SQL> exec dbms_output.put_line( not_cached( 'SCOTT' ) );
    0
    PL/SQL procedure successfully completed.
    Elapsed: 00:00:01.02
    SQL> SQL> exec dbms_output.put_line( cached( 'SCOTT' ) );
    0
    PL/SQL procedure successfully completed.
    Elapsed: 00:00:01.02
    SQL> SQL> exec dbms_output.put_line( cached( 'SCOTT' ) );
    0
    PL/SQL procedure successfully completed.
    Elapsed: 00:00:01.02
    SQL> SQL> exec dbms_output.put_line( cached( 'SCOTT' ) );
    0
    PL/SQL procedure successfully completed.
    SQL> exec dbms_output.put_line( cached( 'SCOTT' ) );
    0
    PL/SQL procedure successfully completed.
    Elapsed: 00:00:01.01
    I am supposed to get the results quickly for "cached" call. However, i still dont see any change in the response time. May i know what i am missing here?
    Thank you
    Giridhar

    Try to play with
    RESULT_CACHE_MAX_SIZE
    http://download.oracle.com/docs/cd/B28359_01/server.111/b28320/initparams206.htm#REFRN10272
    RESULT_CACHE_MAX_RESULT
    http://download.oracle.com/docs/cd/B28359_01/server.111/b28320/initparams205.htm#REFRN10298

  • Production use of the Result Cache area

    Hi all,
       OS.......: OEL 6.3 (x86_64)
       DB.......: Oracle 11.2.0.3 (x86_64)
       I would like to know from those who have used the Result Cache massively in production environments... just to know the opinion of the ones who have used this "for real". Did you use it proactively, to solve a specific problem? Or in every new database created, you configure this memory area? Did it really work as it should be?
       Thanks in advance.

    Hi Fabricio,
    We run result cache in our live forecast system on 11.2.0.2. We have result_cache_mode set to force and a cache of 20MB. The performance improvement we get with this is incredible, from a server running flat out to a server that looks like it's hardly doing anything. Of course it depends on exactly how your app works but we've seen no issues with it other than occassional waits for the result cache latch when there are a large number of requests - but even when this happens it's still way faster than running without result cache.
    Cheers,
    Harry

Maybe you are looking for